TrÇn Thanh
1.M¹ng Internet díi gãc ®é c«ng nghÖ.
Mét m¹ng cã thÓ chia ra lµm hai phÇn c¬ b¶n: hÖ thèng ph©n phèi th«ng tin vµ c¸c øng dông m¹ng, vµ m¹ng Internet còng kh«ng ph¶i lµ ngo¹i lÖ. HÖ thèng ph©n phèi th«ng tin cña nã dùa trªn hä giao thøc TCP/IP, vµ t tëng liªn kÕt th«ng qua c¸c socket (®Çu cuèi-end point). C¸c øng dông Internet dùa trªn m« h×nh Client/Server, client hái vµ server ®¸p. C«ng nghÖ lËp tr×nh trong Internet cã thÓ chia ra 3 thêi kú, theo sù ph¸t triÓn cña b¶n th©n Internet, víi c¸c mèc lµ sù xuÊt hiÖn cña WWW vµ Java.
2.Giai ®o¹n tríc khi xuÊt hiÖn WWW.
LËp tr×nh trong giai ®o¹n nµy chñ yÕu dùa trªn socket. HoÆc b¹n t¹o ra mét dÞch vô míi, b»ng c¸ch viÕt c¸c server vµ client, dùa trªn giao thøc riªng, nh ®· lµm víi c¸c dÞch vô FTP, SMTP.. hay viÕt client cho c¸c dÞch cã s½n nµy. LËp tr×nh theo híng nµy ®ßi hái b¹n ph¶i biÕt nhiÒu vÒ TCP/IP vµ c¬ chÕ ho¹t ®éng cña socket. NÕu b¹n viÕt client, b¹n sÏ ph¶i lµm quen thªm víi giao thøc cña dÞch vô ®ã, cßn nÕu b¹n t¹o ra mét dÞch vô míi, b¹n cÇn ph¶i t¹o ra giao thøc riªng cho dÞch vô cña m×nh. Ng«n ng÷ lËp tr×nh tïy thuéc vµo H§H, dùa trªn m« h×nh Socket (trong Windows b»ng c¸ch gäi hµm cña Winsock.dll), vµ thêng lµ C, C++, Pascal.. Híng nµy ®ßi hái nhiÒu ë b¹n, c¶ hiÓu biÕt lÉn c«ng søc. Nhng kh¶ n¨ng cña nã rÊt lín, vµ b¹n nªn lµm quen, Ýt ra còng ®Ó viÕt client cho c¸c dÞch vô kh¸c, hay t¹o kh¶ n¨ng liªn l¹c víi c¸c dÞch vô kh¸c tõ øng dông cña b¹n.
3.Giai ®o¹n tríc khi xuÊt hiÖn Java.
Sù xuÊt hiÖn cña dÞch vô WWW, giao thøc HTTP, chuÈn URL ®· t¹o ra mét híng míi trong lËp tr×nh Internet. Híng nµy dùa trªn dÞch vô Web vµ giao thøc HTTP, do ®ã b¹n kh«ng cÇn biÕt vÒ TCP/IP vµ t¹o ra giao thøc riªng cña m×nh n÷a. HoÆc b¹n t¹o ra c¸c Web server application(WSA), cung cÊp th«ng tin qua WebServer, hay lµ viÕt Client cho WebServer, truy nhËp th«ng tin qua Web. C¸c yªu cÇu cña client, th«ng qua WebServer, ®îc göi ®Õn WSA, chóng xö lý th«ng tin, t¹o ra kÕt qu¶ díi d¹ng v¨n b¶n HTML, vµ qua WebServer, göi l¹i cho client. ViÕt c¸c WSA tuy kh«ng phøc t¹p nh c¸c Internet Server, nhng còng rÊt phøc t¹p, vµ ®ßi hái b¹n ph¶i biÕt vÒ H§H, chuÈn CGI, còng nh c¸c giao diÖn cña chóng. ¦u ®iÓm cña WSA lµ thÞ trêng cña chóng, lín ®óng b»ng thÞ trêng cña WWW. Nhng dÞch vô WWW ®îc t¹o ra ®Ó ph©n phèi v¨n b¶n, nªn viÖc truyÒn d÷ liÖu qua nã lµ kh«ng thÝch hîp vµ rÊt chËm. §Ó thay ®æi mét hai d÷ liÖu trong v¨n b¶n, b¹n ®µnh ph¶i göi ®i nguyªn c¶ trang, ®ã lµ hËu qu¶ cña viÖc dïng dÞch vô WWW sai chøc n¨ng cña nã. Ng«n ng÷ phæ biÕn lµ Perl, nhng b¹n cã thÓ dïng C, C++ hay Delphi.. miÔn lµ øng dông liªn l¹c ®îc víi WebServer.
4.Giai ®o¹n sau khi xuÊt hiÖn Java.
Sù xuÊt hiÖn cña Java vµ c¸c tr×nh duyÖt Web hiÓu Java (ch¹y ®îc Java applets) ®· gi¶i quyÕt ®îc nhîc ®iÓm cña WSA, hç trî cho lËp tr×nh víi Socket, vµ më ra mét híng míi. ¦u ®iÓm cña Java applet lµ chóng ®îc truyÒn trong m¹ng, vµ ch¹y trong tr×nh duyÖt Web. V× vËy, d÷ liÖu cã thÓ ®îc truyÒn th«ng qua chóng, chø kh«ng ph¶i díi d¹ng v¨n b¶n. ChØ b»ng c¸ch t¹o thªm Java client cho c¸c WSA ®ang ho¹t ®éng, trao ®æi th«ng tin gi÷a tr×nh duyÖt Web vµ WSA, tèc ®é thùc hiÖn cña c¸c øng dông nµy ®· nhanh lªn rÊt nhiÒu, vµ cho phÐp sö dông chóng thªm mét thêi gian n÷a.
C¸c øng dông viÕt trªn Java cã thÓ ch¹y trªn hÇu hÕt c¸c H§H, gióp ®ì rÊt nhiÒu cho viÖc lËp tr×nh víi Socket, b¹n kh«ng ph¶i viÕt nhiÒu phiªn b¶n cho c¸c H§H kh¸c nhau. Ngoµi c¸c lÜnh vùc truyÒn thèng, c¸c øng dông Java cßn më ra mét híng hoµn toµn míi, ®ã lµ c¸c øng dông ®îc lu vµ truyÒn trong m¹ng, ®ßi hái tµi nguyªn ho¹t ®éng Ýt. §iÒu nµy cho phÐp, th«ng qua m¹ng Internet, c¸c h·ng phÇn mÒm b¸n s¶n phÈm, c¸c h·ng sö dông phÇn mÒm tiÕt kiÖm tµi chÝnh b»ng c¸ch lu c¸c øng dông trªn Server, bít c«ng søc vµ ph¬ng tiÖn trong viÖc n©ng cÊp phÇn mÒm, còng nh phÇn cøng cña Clients, c¸c h·ng s¶n xuÊt ®å d©n dông ®a ra c¸c s¶n phÈm "th«ng minh"(cã kh¶ n¨ng sö lý d÷ liÖu th«ng qua processor riªng vµ qu¶n lý tõ m¹ng..)
VÒ mÆt lËp tr×nh, Java ngoµi u ®iÓm cã có ph¸p gièng C++, chØ cã thªm mét u ®iÓm n÷a, ®ã lµ vÊn ®Ò qu¶n lý bé nhí, cßn l¹i kh«ng cã g× thay ®æi. ThËm chÝ, do c¸c hÖ thèng lËp tr×nh trªn Java cßn yÕu, b¹n sÏ thÊy khã kh¨n h¬n(JBuilder, Visual Cafe cha thÓ so víi Delphi, VB..). Víi c¸c øng dông cæ ®iÓn, yªu cÇu ®èi víi b¹n kh«ng cã g× thay ®æi, vÉn tõng ®ã kiÕn thøc vµ c«ng søc. Cßn vÒ c¸c øng dông ®Æc thï cña Java, tuy ®· xuÊt hiÖn nhiÒu t tëng míi mÎ, nh øng dông Java cho Network Computer, c¸c s¶n phÈm "th«ng minh".., nhng h·y cßn qu¸ sím ®Ó x¸c ®Þnh, chóng sÏ ®i vÒ ®©u.
5.KÕt luËn.
Víi sù xuÊt hiÖn cña Java, trong lÜnh vùc lËp tr×nh ®· cã nhiÒu thay ®æi, mét sè ®îc hoµn thiÖn h¬n, mét sè míi ra ®êi. Tríc m¾t, xuÊt hiÖn mét sè xu híng sau: C¸c øng dông WSA trªn CGI sÏ ph¶i cã thªm Java Client, kh«ng ®îc ph¸t triÓn lªn n÷a, vµ chÕt h¼n. C¸c øng dông víi Socket sÏ phæ biÕn h¬n nhiÒu, Server vÉn viÕt trªn C++, Delphi.. do tèc ®é Java cßn thÊp vµ gi¶i quyÕt phÇn lín c¸c chøc n¨ng , nhng Client ®îc viÕt trªn Java, vµ nÕu cã thÓ(kÝch thíc nhá, kh«ng qu¸ phøc t¹p..) th× díi d¹ng applet, sau khi tèc ®é cña Java nhanh h¬n(hy väng HotSpot cña Sun nhanh ®îc nh ®· høa, ngang víi C++), Server trªn Java sÏ phæ biÕn h¬n. Cßn Java víi t c¸ch lµ mét cuéc c¸ch m¹ng, th× chóng ta ph¶i ®îi xem sao ®·, cha cã g× ch¾c ch¾n, mÆc dï høa hÑn th× cã nhiÒu.
Trªn ®©y lµ nh÷ng suy nghÜ cña riªng t«i vÒ thùc tiÔn lËp tr×nh trong giai ®o¹n hiÖn nay. Do t«i míi lµm quen víi Java vµ vµo Internet ®îc 3 th¸ng, nªn rÊt cã thÓ nh÷ng ý kiÕn ®a ra lµ sai, hoÆc kh«ng chÝnh x¸c. V× vËy mong mäi ngêi chó ý, kiÓm tra l¹i, vµ nÕu cã thÓ, trao ®æi ý kiÕn víi t«i!
PcLeHoan
1996 - 2002
Mirror :
http://www.pclehoan.com
Mirror :
http://www.lehoanpc.net
Mirror :
http://www.ktlehoan.com