Tải bản đầy đủ (.doc) (7 trang)

Tong quang ve ngon ngu lap trinh

Bạn đang xem bản rút gọn của tài liệu. Xem và tải ngay bản đầy đủ của tài liệu tại đây (80.25 KB, 7 trang )

Tổng Quan Về Các Ngôn Ngữ Lập Trình
-------------------------------------------------------------------------------------------------------

1

Tổng quan về các ngôn ngữ
lập trình
Nguyễn Bá Minh - Nhóm Các Công Cụ Phát Triển
Ngày 18 tháng 09 năm 1998

Công việc nào công cụ đó
Trong lập trình, có một câu đơn giản nhng bao giờ cũng có giá trị là: nên chọn
công cụ cho phù hợp với công việc cần làm. Ví dụ nh khi viết các chơng trình truy cập
đến các cấp thấp của máy tính, bạn nên dùng ASSEMBLER. ở các chơng trình đơn giản,
nếu lập trình cấu trúc hay hớng đối tợng thì chỉ thêm mất thời gian. Tuy vậy cũng có
những chơng trình yêu cầu bạn phải lập trình hớng đối tợng ví dụ nh tạo hệ cửa sổ giao
tiếp đồ hoạ.
Bài viết này sẽ trình bày tổng quan về một số ngôn ngữ lập trình đang phổ biến
hiện nay, đó là các ngôn ngữ: PASCAL, C, C++, JAVA, VISUAL BASIC.
I.

Ngôn ngữ lập trình PASCAL

Đây là ngôn ngữ do giáo s Niklaus Wirth thiết kế vào năm 1970 với mục đích
giảng dạy ý niệm lập trình có cấu trúc. Nhng sau một thời gian do tính u việt của nó nên
PASCAL đã đợc sử dụng rộng dãi.
PASCAL là ngôn ngữ lập trình bậc cao. Trớc khi PASCAL đợc phát triển thì việc
lập trình đợc thực hiện trên các ngôn ngữ cấp thấp, các lập trình viên rất khó khăn trong
việc xây dựng các chơng trình lớn. PASCAL dùng ngôn ngữ sát với ngôn ngữ tự nhiên hơn
do đó nó thân thiện với ngời lập trình hơn. Do vậy nó giảm bớt các công việc nặng nhọc
cho ngời lập trình.


PASCAL kết hợp giữa đặc tính gọn, dễ nhớ, khả năng truy cập cấp thấp, và các
cấu trúc giữ liệu đa dạng. PASCAL còn hỗ trợ khả năng đa các chơng trình viết bằng
ASSEMBLER vào chơng trình của bạn, khả năng đồ hoạ và hớng đối tợng.
PASCAL là ngôn ngữ lập trình có cấu trúc. Tính cấu trúc của PASCAL đợc thể
hiện qua 3 yếu tố: cấu trúc trong dữ liệu, cấu trúc trong các toán tử và cấu trúc trong công
cụ thủ tục.
-----------------------------------------------------------------------------------------------------------Nguyễn Bá Minh - Nhóm Các Công Cụ Phát Triển


Tổng Quan Về Các Ngôn Ngữ Lập Trình
-------------------------------------------------------------------------------------------------------

2



Tính cấu trúc của dữ liệu đợc thể hiện qua phần mô tả. Cũng nh các ngôn ngữ
lập trình khác, PASCAL có một số kiểu dữ liệu đợc định nghĩa sẵn và các phép
toán trên các kiểu dữ liệu này. Từ các kiểu dữ liệu đó, ngời lập trình có thể xây
dựng các kiểu dữ liệu phức tạp hơn. Sau đó để khai báo đối tợng thuộc kiểu dữ
liệu phức tạp đó ta không cần trình bày lại cấu trúc thiết lập, mà chỉ cần tham
chiếu đến kiểu đó.



Tính cấu trúc của các toán tử đợc thể hiện ở chỗ bên trong các toán tử thực
hiện một động tác, còn có các toán tử thực hiện nhiều động tác, song sự quan
trọng nhất của PASCAL là toán tử hợp thành. Toán tử hợp thành đợc xây dựng
bắt đầu bằng từ khoá BEGIN, sau đó đến dãy các toán tử thành phần và kết
thúc bằng từ khoá END.




Tính cấu trúc trong công cụ thủ tục thể hiện thông qua khả năng phân tích chơng trình thành các modul độc lập và lời gọi đệ quy thủ tục.

PASCAL không phải là ngôn ngữ khó học hơn ngôn ngữ dành cho những ngời
mới bắt đầu làm quen với lập trình (BASIC) nhng nó lại tỏ ra có những đặc tính cấu trúc
hoá tốt hơn và không có những cú pháp mang lỗi.
PASCAL không phân biệt chữ hoa và chữ thờng, do vậy ngời lập trình có thể
thoải mái hơn trong việc viết các câu lệnh và đặt tên cho các đối tợng của mình.
Việc dịch một chơng trình viết bằng PASCAL đợc thực hiện bằng một trình biên
dịch. Khi chơng trình chứa một lỗi cú pháp nào đó thì mã máy sẽ không đợc sinh ra. Còn
nếu không có lỗi thì sau khi dịch xong sẽ nhận đợc một bản mã đối tợng.
Với những chơng trình lớn thì dùng ngôn ngữ lập trình có cấu trúc để quản lý sẽ
là rất khó khăn, vì vậy để đáp ứng nhu cầu của ngời lập trình những phiên bản của
PASCAL về sau này đã có hỗ trợ lập trình hớng đối tợng.
Do mục đích ban đầu của PASCAL và các đặc điểm của nó, PASCAL rất thích
hợp dùng để giảng dạy trong các nhà trờng và cho những ngời mới bắt đầu học lập trình.
Còn đối với những bài toán ứng dụng trong thực tế thì PASCAL ít đợc sử dụng.
II.

Ngôn ngữ lập trình C

-----------------------------------------------------------------------------------------------------------Nguyễn Bá Minh - Nhóm Các Công Cụ Phát Triển


Tổng Quan Về Các Ngôn Ngữ Lập Trình
3
------------------------------------------------------------------------------------------------------Ngôn ngữ C đợc phát triển từ ngôn ngữ B trên máy UNIX. Đến nay ANSI ban
hành chuẩn về C.

Cũng giống nh PASCAL, C là ngôn ngữ lập trình có cấu trúc. Nhng nói chặt chẽ
về mặt kỹ thuật thì C không phải là ngôn ngữ lập trình có câud trúc chính cống vì trong C
không cho phép các khối lồng nhau (chẳng hạn bạn không thể khai báo hàm này trong
hàm khác).
C là ngôn ngữ cấp trung vì nó cho phép thao tác trên các bit, byte, và địa chỉ. C
kết hợp các yếu tố mềm dẻo của ngôn ngữ bậc cao và khả năng điều khiển mạnh của
ASSEMBLER. Do vậy, C tỏ ra thích hợp với lập trình hệ thống.
Chơng trình viết bằng C là tập hợp các hàm riêng biệt, giúp cho việc che giấu mã
và giữ liệu trở nên dễ dàng. Hàm đợc viết bởi những ngời lập trình khác nhau không ảnh
hởng đến nhau và có thể đợc biên dịch riêng biệt trớc khi ráp nối thành chơng trình.
So với PASCAL thì C thoáng hơn, chẳng hạn C không kiểm tra kiểu khi chay,
điều này do ngời lập trình đảm nhiệm.
C tỏ ra ít gắn bó hơn so với các ngôn ngữ bậc cao, nhng C lại thực tế hơn so với
các ngôn ngữ khác.
Một đặc điểm nổi bật của C là C có tính tơng thích cao. Chơng trình viết bằng C
cho một loại máy hoặc hệ điều hành này có thể chuyển dễ dàng sang loại máy hoặc hệ
điều hành khác. Hiện nay hầu hết các loại máy tính đều có trình biên dịch C.
Một chơng trình đợc viết bằng C sẽ có tối u, chạy với tốc độ cao và tiết kiệm bộ
nhớ.
Tuy vậy, C chỉ thích hợp với những chơng trình hệ thống hoặc những chơng trình
đòi hỏi tốc độ. Còn nếu bài toán lớ và phức tạp thì cũng nh PASCAL, C cũng rất khó kiểm
soát chơng trình.
III.

Ngôn ngữ C++

Ngôn ngữ C++ đợc phát triển từ ngôn ngữ C. Có thể coi C++ là một cải tiến của
C. Nó mang đầy đủ các đặc tính của C. Một chơng trình viết bằng C có thể biên dịch đợc
bằng trình biên dịch của C++. ở những phiên bản đầu tiên, thực chất mã nguồn C++ đầu
tiên đợc dịch sang mã nguồn C, rồi từ mã nguồn C tiếp tục đợc biên dịch tiếp.

-----------------------------------------------------------------------------------------------------------Nguyễn Bá Minh - Nhóm Các Công Cụ Phát Triển


Tổng Quan Về Các Ngôn Ngữ Lập Trình
-------------------------------------------------------------------------------------------------------

4

C++ là ngôn ngữ lập trình hớng đối tợng, do vậy nó có đầy đủ các tính chất của
một ngôn ngữ lập trình hớng đối tợng: tính kế thừa, tính đóng kín và tính đa dạng.
Nhng C++ không phải là ngôn ngữ hớng đối tợng hoàn toàn mà là ngôn ngữ đa
hớng. Vì C++ hỗ trợ cả lập trình hớng hành động và lập trình hớng đối tợng.
C++ kết hợp những ý tởng hay nhất của lập trình có cấu trúc với việc phân chia
một bài toán thành các nhóm nhỏ có quan hệ với nhau, mỗi nhóm con đó là một đối t ợng
chứa các lệnh và dữ liệu riêng của nó.
C++ đa vào các khái niệm hàm ảo, quá tải hàm, quá tải toán tử cho phép tạo ra
các kiểu dữ liệu trừu tợng, hỗ trợ thừa kế bội.
Mục tiêu của C++ là tiếp cận những ý tởng của phơng pháp luận hớng đối tợng
và trừu tợng dữ liệu.
Các đặc tính của C ++ cho phép ngời lập trình xây dựng những th viện phần mềm
có chất lợng cao phục vụ những đề án lớn.
C++ là ngôn ngữ thích hợp cho việc xây dựng những chơng trình lớn nh các hệ
soạn thảo, chơng trình dịch, các hệ quản trị cơ sở dữ liệu, các hệ truyền thông, ...
IV.

Ngôn ngữ lập trình JAVA

JAVA đợc tạo ra trớc năm 1990 bởi nhóm các nhà phát triển của Sun
Microsystem có nhiệm vụ phải viết phầm mềm hệ thống để nhúng vào các sản phẩm điện
tử của khách hàng. Họ đã khắc phục một số hạn chế của C++ để tạo ra ngôn ngữ lập trình

JAVA.
Do đợc phát triển từ C++ nên JAVA rất giống C++. Nhng JAVA là ngôn ngữ hớng đối tợng hoàn toàn, còn C++ là ngôn ngữ đa hớng.
JAVA là ngôn ngữ lập trình mạnh vì nó hội tụ đợc các yếu tố sau:


JAVA là ngôn ngữ hớng đối tợng (object oriented programming): Các ngôn
ngữ lập trình hớng đối tợng có các modul có thể thay đổi và đợc xác định trớc
mà ngời lập trình có thể gọi ra để thực hiện những nhiệm vụ cụ thể. Trong
JAVA các modul này gọi là các lớp (class) và chúng đợc lu trữ trong th viện

-----------------------------------------------------------------------------------------------------------Nguyễn Bá Minh - Nhóm Các Công Cụ Phát Triển


Tổng Quan Về Các Ngôn Ngữ Lập Trình
5
------------------------------------------------------------------------------------------------------lớp tạo nên cơ sở của bộ công cụ phát triển JAVA (Java Development Kit).
Trong JAVA tất cả các hàm và biến đều phải là thành phần của một lớp.


Đơn giản (simple): Mặc dù dựa trên cơ sở của C++ nhng JAVA đã đợc lợc bỏ
các tính năng khó nhất của C++ làm cho ngôn ngữ này dễ dùng hơn. Do vậy
việc đào tạo một lập trình viên JAVA ngắn hơn và JAVA trở nên thân thiện với
ngời sử dụng hơn. Trong JAVA không có các con trỏ, không hỗ trợ toán tử
Overloading, không có tiền xử lý. Tất cả mọi đối tợng trong một chơng trình
JAVA đều đợc tạo trên heap bằng toán tử new - chúng không bao giờ đợc tạo
trên stack. JAVA cũng là ngôn ngữ gom rác (garbage - collected language), vì
vậy nó không cần đếm từng new với delete - một nguồn bộ nhớ chung để thất
thoát trong các chơng trình của C++. Trong thực tế không có toán tử delete
trong JAVA.




Đa luồng (multithread): Có nghĩa là JAVA cho phép xây dựng các trình ứng
dụng, trong đó, nhiều quá trình có thể xảy ra đồng thời. Tính đa luồng cho
phép các nhà lập trình có thể biên soạn các phần mềm đáp ứng tốt hơn, tơng
tác hơn và thực hiện theo thời gian thực.

Có thể nói JAVA là ngôn ngữ lập trình cho Web:

V.



Hiểu mạng: JAVA đợc viết ra để hoạt động trên mạng và có các thủ tục để có
thể quản lý các giao thức TCP/IP, FTP, HTTP. Nói cách khác JAVA đợc xây
dựng để hoàn toàn tơng thích trên Internet.



JAVA cho phép tạo ra các trang Web động, các ứng dụng nhúng.



An toàn: Đặc tính an toàn của ngôn ngữ lập trình này bắt nguồn từ việc nó có
những phần hạn chế đợc cài đặt sẵn nhằm đề phòng các chơng trình JAVA
thực hiện các chức năng nh ghi vào ổ cứng hoặc cho phép vi rút xâm nhập vào
từ mạng.




JAVA độc lập với cấu trúc máy: Đây là thuộc tính đặc sắc nhất của JAVA. Có
nghĩa là JAVA không phụ thuộc vào hệ máy, các ứng dụng bằng JAVA có thể
dùng đợc trên hầu nh mọi máy tính.

VISUAL BASIC

-----------------------------------------------------------------------------------------------------------Nguyễn Bá Minh - Nhóm Các Công Cụ Phát Triển


Tổng Quan Về Các Ngôn Ngữ Lập Trình
6
------------------------------------------------------------------------------------------------------VISUAL BASIC là một môi trờng lập trình đợc phát triển bởi Microsoft nhằm
cung cấp cho những ngời lập trình một phơng pháp phát triển các ứng dụng trên Windows
nhanh và dễ nhất.
VISUAL BASIC cung cấp cho ngời lập trình một môi trờng tích hợp, nơi mà ngời
lập trình có thể sử dụng các công cụ để tạo ra giao diện ngời sử dụng một cách nhanh
chóng và dễ dàng tạo ra mã để trả lời lại các tác động từ phái ngời sử dụng. VISUAL
BASIC cung cấp cho ngời lập trình cả kỹ thuật lập trình hớng sự kiện và kỹ thuật lập trình
hớng đối tợng.
Môi trờng phát triển của VISUAL BASIC có những công cụ soạn thảo và gỡ rối
tinh vi, nó cho phép ngời lập trình gắn mã với giao diện một cách nhanh chóng cho mỗi
sự kiện.
VISUAL BASIC cung cấp cho bạn một giao diện nhanh nhất nhng bù lại bạn
phải cũng phải trả giá về tốc độ. Do vậy nếu yêu cầu bài toán cần đến tốc độ thì bạn nên
dùng C++.

Tài liệu tham khảo
1. Extending Turbo C Professional (Al Stevens)
1. Programming with class (Samuel N. Kamin/ Edward M.Reingold)
1. The Official Visual Basic Programmers Journal Guide to Visual Basic 4.0

(QUE)
1. Mcrosoft Visual Basic Programming System for Windows Version 4.0
(Microsoft Corporation)
1. Turbo Pascal 6.0 (CMT)
1. Kỹ thuật lập trình Pascal nâng cao (Phạm văn ất)
1. Kỹ thuật lập trình C cơ sở và nâng cao (Phạm văn ất)
1. C++ kỹ thuật và ứng dụng (Scott Robert Land - bản dịch)
1. Lập trình bằng C++ (Dơng Tử Cờng)
1. Lập trìng C++ nh thế nào ? (Hoàng Ngọc Giao)
1. Lập trình hớng đối tợng C++ (Trần Văn Lăng)
1. Tạp chí Điện Tử & Tin Học số 12/1996 (The VietNam Journal Of Electronics
An Informatics)
-----------------------------------------------------------------------------------------------------------Nguyễn Bá Minh - Nhóm Các Công Cụ Phát Triển


Tæng Quan VÒ C¸c Ng«n Ng÷ LËp Tr×nh
------------------------------------------------------------------------------------------------------1. Trªn Web site cña CSE

7

-----------------------------------------------------------------------------------------------------------NguyÔn B¸ Minh - Nhãm C¸c C«ng Cô Ph¸t TriÓn



Tài liệu bạn tìm kiếm đã sẵn sàng tải về

Tải bản đầy đủ ngay
×