Tổng quan về các ngôn ngữ lập trình

Chia sẻ: Tran Nhu | Ngày: | Loại File: PDF | Số trang:6

0
586
lượt xem
178
download

Tổng quan về các ngôn ngữ lập trình

Mô tả tài liệu
  Download Vui lòng tải xuống để xem tài liệu đầy đủ

Trong lập trình, có một câu đơn giản nhưng 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 ơhari lập trình hướng đối tượng ví dụ như tạo hệ cửa sở giao tiếp đồ họa......

Chủ đề:
Lưu

Nội dung Text: Tổng quan về các ngôn ngữ lập trình

  1. VIETBOOK Tæng quan vÒ c¸c ng«n ng÷ lËp tr×nh C«ng viÖc nµo c«ng cô ®ã Trong lËp tr×nh, cã mét c©u ®¬n gi¶n nh−ng 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. Nh−ng 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. 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ã Trang 1
  2. VIETBOOK 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) nh−ng 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. I. Ng«n ng÷ lËp tr×nh C 1. 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. 2. 3. Còng gièng nh− PASCAL, C lµ ng«n ng÷ lËp tr×nh cã cÊu tróc. Nh−ng 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). 4. 5. 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. 6. Trang 2
  3. VIETBOOK 7. 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. 8. 9. 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. 10. 11. C tá ra Ýt g¾n bã h¬n so víi c¸c ng«n ng÷ bËc cao, nh−ng C l¹i thùc tÕ h¬n so víi c¸c ng«n ng÷ kh¸c. 12. 13. 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. 14. 15. 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í. 16. 17. 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. I. Ng«n ng÷ C++ 1. 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. 2. 3. 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. 4. 5. Nh−ng 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. 6. 7. 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ã. 8. 9. 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. 10. 11. 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÷ Trang 3
  4. VIETBOOK liÖu. 12. 13. 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. 14. 15. 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, ... I. 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++. Nh−ng 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: 1. 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 l−u tr÷ trong th− viÖn 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. 2. 3. §¬n gi¶n (simple): MÆc dï dùa trªn c¬ së cña C++ nh−ng 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. 4. 5. §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. 6. Trang 4
  5. VIETBOOK 7. Cã thÓ nãi JAVA lµ ng«n ng÷ lËp tr×nh cho Web: 8. 9. 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. 10. 11. JAVA cho phÐp t¹o ra c¸c trang Web ®éng, c¸c øng dông nhóng. 12. 13. 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. 14. 15. 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. I. VISUAL BASIC 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 nh−ng 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) 2. Programming with class (Samuel N. Kamin/ Edward M.Reingold) 3. The Official Visual Basic Programmer's Journal Guide to Visual Basic 4.0 (QUE) 4. Mcrosoft Visual Basic Programming System for Windows Version 4.0 (Microsoft Corporation) Trang 5
  6. VIETBOOK 5. Turbo Pascal 6.0 (CMT) 6. Kü thuËt lËp tr×nh Pascal n©ng cao (Ph¹m v¨n Êt) 7. Kü thuËt lËp tr×nh C c¬ së vµ n©ng cao (Ph¹m v¨n Êt) 8. C++ kü thuËt vµ øng dông (Scott Robert Land - b¶n dÞch) 9. LËp tr×nh b»ng C++ (D−¬ng Tö C−êng) 10. LËp tr×ng C++ nh− thÕ nµo ? (Hoµng Ngäc Giao) 11. LËp tr×nh h−íng ®èi t−îng C++ (TrÇn V¨n L¨ng) 12. T¹p chÝ §iÖn Tö & Tin Häc sè 12/1996 (The VietNam Journal Of Electronics An Informatics) 13. Trªn Web site cña CSE Trang 6
Đồng bộ tài khoản