minhhn0205
06-09-2009, 11:55 PM
http://www.tech24.vn/upload/items/2044268883_s_java.jpg (http://www.tech24.vn/upload/items/2044268883_s_java.jpg)
Lịch sử Java
Ngược dòng lịch sử, Java là một sản phẩm của Sun Microsystems, một công ty chuyên sản xuất và thiết kế các mạng Workstation (trạm làm việc) UNIX . Để yểm trợ hoạt đông phần cứng chính của mình, Sun cũng phát triển phần mềm, đặc biệt nổi tiếng là hệ điều hành Solaris (một loại Unix) cho nền Intel và hệ thống tập tin mạng (Network File System - NFS). Năm 1990, Sun Microsystems bắt đầu thực hiện dự án có tên gọi Green nhằm phát triển phần mềm trong các thiết bị điện tử dân dụng. James Gosling, chuyên gia lập trình phần mềm mạng được giao trách nhiệm thực hiện dự án.
Ban đầu, Gosling sử dụng C++ để triển khai phần mềm cho các thiết bị như VCR (Video Cassette Recorder), PDA (Personal Digital Assistant). Nhưng ngay sau đó, Gosling phát hiện ra rằng C++ không phải là ngôn ngữ thích hợp cho công việc này. Tuy C++ uyển chuyển đủ để điều khiển hệ thống, nhưng nó lại dễ làm cho hệ thống treo (hang).
C++ cho phép ta xâm nhập trực tiếp đến tài nguyên hệ thống (system resources) và người lập trình có thể tự mình quản lý các tài nguyên này. Đặc tính nầy là một con dao hai lưỡi: cho lập trình viên nhiều tự do, nhưng sự tự do ấy khiến C++ trở thành một công cụ nguy hiểm để dùng cho việc viết các phần mềm có độ tin cậy cao (high reliability), khó té (robustness), tính tương thích cao (platform independent), tức là chạy trên nhiều loại chip khác nhau, đặc biệt trong việc điều khiển các thiết bị điện tử dân dụng.
Gosling giải quyết vấn đề này bằng cách tạo ra một ngôn ngữ lập trình mới có tên là Oak. Khi ngôn ngữ Oak trưởng thành, World Wide Web cũng đang bước vào thời kỳ phát triển mạnh mẽ, và đội ngũ phát triển phần mềm của Sun thấy rằng đây cũng là ngôn ngữ đặc biệt thích hợp cho Internet. Vào năm 1994, họ đã đưa ra WebRunner, một Webbrowser viết bằng Oak, sau này đổi tên thành HotJava .
Cuối cùng, vào năm 1995, Oak được đổi tên thành Java và đưa ra trình diễn tại SunWorld 95.
Trong 6 tháng đầu năm 1996, nhiều nhà sản xuất phần mềm cũng như phần cứng đứng đầu thế giới đã mua bản quyền công nghệ Java từ Sun, bao gồm Adobe, Asymetrix, Borland, IBM, Macromedia, Microsoft, Novel, Oracle, Spyglass và Symantec... Các hãng này sẽ kết hợp Java vào các sản phẩm của họ như: các phần mềm, hệ điều hành, công cụ phát triển (development tool)..
Kết tụ các tinh hoa kỹ thuật
Java rất giống C++, nhưng đơn giản hơn, đặc biệt là không có dùng pointer, structure và union. Pointer là thủ phạm của những Memory leak bugs.
Ta biết rằng một ngôn ngữ lập trình tuy hay nhưng rắc rối và có nhiều thứ phải nhớ thì khó trở nên thịnh hành được. Điển hình là ADA, một ngôn ngữ được Bộ Quốc Phòng Mỹ đặt cho Honeywell-Bull chế ra để thay thế gần 400 ngôn ngữ lập trình khác nhau trong các cơ quan của bộ. Các viên chức Bộ Quốc Phòng nghĩ rằng ADA sẽ là ngôn ngữ lập trình phổ thông cho mọi nền (platform), và như thế sẽ tiết kiệm rất nhiều về huấn luyện và bảo trì.
Thực tế thì không được như vậy. Rất nhiều lập trình viên ADA viết Pascal thay vì ADA, tức là không dùng các ưu điểm của ADA.
Ngay cả C++, tuy rất hay và gần gũi với C, nhưng cũng vì rắc rối mà không thịnh hành bằng VB.
Đúng ra ngoài C++, Java còn thừa kế nhiều tinh hoa từ những ngôn ngữ đi trước như Objective C, Smalltalk của Xerox và Modula-3 của giáo sư N. Wirth (cha của Pascal). Mẫu hình lập trình cách đối tượng và cú pháp C đã quen thuộc với các cao thủ võ lâm tin học trong hai thế hệ nên việc chyển sang Java gần như hoàn toàn không có trở ngại.
Có nhiều ý niệm quan trọng qui tụ trong Java thật ra không mới mẽ gì. Trường phái lập trình theo hướng đối tượng đã có gần 30 mươi năm nay. Việc compile từ ngôn ngữ lập trình ra một ngôn ngữ lưng chừng độc lập với môi trường sẽ chạy sau nầy đã từng được dùng cho ngôn ngũ Pascal, gọi là p-code, hồi đầu thập niên 1980 ở đại học Berkeley. Và ý niệm dùng các chương trình nhỏ, gọi là Applet, có thể phân phối trên mạng, đã từng được thực hiện bằng ngôn ngữ Postscript trong hệ thống NeWS (Network extensible Window System) của James Gosling từ giữa thập niên 1980.
Nhỏ mà làm nên chuyện lớn
Như ta biết, nguồn gốc của Java là nó chạy trên các máy nhỏ. Ngay từ đầu, Java được thiết kế sao cho Small (nhỏ), Simple (đơn giản), Safe (an toàn) và Secure (an ninh), bốn chữ S.
Nhỏ: Vì các dụng cụ điện tử dùng trong nhà không có nhiều Megabyte RAM hay đĩa cứng.
Đơn giản: Vì các dụng cụ điện tử tí hon nầy cũng không thể chứa một hệ điều hành rắc rối, không ai hiểu thấu đáo, với những đặc điểm ít khi dùng.
An toàn: Vì người sử dụng sẽ không hiểu hay thông cảm khi chương trình té hay hệ điều hành treo. Cái máy phải có độ tin cậy cao và khó té. Đối với một máy vi tính chạy Windows98, nếu mỗi tuần máy bị treo một, hai lần thì có thể tha thứ được. Chớ cái máy nướng bánh mì sandwich bị trục trặt một năm một lần vì phần mềm thì sẽ có nhiều lá thư giận dữ phan phiền gởi đến công ty sản xuất.
An ninh: Vì viển tượng củs Sun là "The Network is the Computer" (Mạng là máy điện toán), họ cho phép các dụng cụ điện tử dùng trong nhà chia nhau dùng các chương trình nhỏ (Applet), và các Applet nầy có thể được phân phối trên mạng cách an ninh.
Ai ngờ các mục tiêu khiêm nhường của một ngôn ngữ lập trình nhắm vào các dụng cụ điện tử nho nhỏ trong nhà lại rất thích hợp với môi trường Web. Môi trường hoạt động của Java có thể chuyển từ Mạng trong nhà ra Mạng thế giới.
Nhỏ: Vì các Applet phải di chuyển qua đường dây điện thoại 33KB, và người sử dụng không kiên nhẩn chờ đợi quá lâu.
Đơn giản: Vì chu kỳ triển khai cho Web ngắn hơn cho trong công sở nhiều. Các lập trình viên không thể mất quá nhiều thì giờ để đối phó với một ngôn ngữ lập trình rắc rối.
An toàn: Vì nếu lập trình bằng Java sẽ ít có bug hơn các ngôn ngữ cho phép ta động đến các tài nguyên của Operating System. Kinh nghiệm 30 mươi năm nay cho thấy ta không thể tin cậy vào các lập trình viên để họ thận trọng từng ly, từng tí trong việc dùng pointer và các loại dữ kiện.
An ninh: Vì người viếng Website không muốn tiếp nhận những Applet mà họ không biết có thể làm hại máy tính họ không. Họ muốn được đảm bảo sự an ninh để an tâm, nếu không họ sẽ bỏ đi nơi khác.
Java được dùng ở khắp nơi
Mặc dầu trong thời gian đầu người ta chỉ chú ý đến việc dùng Java cho Web, nhưng hai năm qua cho thấy không có lý do gì cản trở việc xem Mạng địa phương (Local Area network - LAN) như Mạng thế giới.
Chỉ cần dùng các chuẩn của Internet như TCP/IP, Webbrowser, và IMAP4, các công ty có thể tân thời hóa hệ thống vi tính trong sở mình. Các chương trình dùng cho Internet có thể được dùng cho LAN trong sở và gọi là Intranet.
Bây giờ họ có thể dùng toàn những sản phẩm mua có sẵn (off-the-shelf products), mềm hay cứng. Họ không còn phải lệ thuộc vào IBM, Unisys hay Compaq, tốn kém quá nhiều tiền để bảo trì hệ thống điện toán vì trót lỡ kẹt dùng hệ thống của các công ty điện toán nầy.
Họ cũng không còn cần chuyên viên nuôi trong sở để yểm trợ các phần mềm triển khai đặc biệt để dùng riêng cho sở họ.
Một khi đã cài đặt TCP/IP và để một Webbrowser trên mỗi bàn viết, tất cả mọi nhân viên đều có thể chia sẻ các tài liệu, dữ kiện, cẩm nang .v.v..Bước kế đó là eCommerce và thực hiện mọi công tác trao đổi thương mại, những áp dụng Database (Cơ sỡ dữ liệu) qua Internet và Intranet. Hơn nữa, bây giờ công ty có thể dùng multimedia như audio, video.
Những nhu cầu áp dụng nào mới cho công sỡ đều có thể thực hiện bằng Java cho Intranet giống như cho Internet. Nó không lệ thuộc vào MSWindows hay Unix.
Như thế Java có thể thay thế tất cả các ngôn ngữ lập trình và Operating System ở khắp nơi để cung ứng một dụng cụ lập trường đồng nhất, đúng với chủ trương "Viết một lần, chạy bất cứ nơi đâu".
http://img134.imageshack.us/img134/5400/downd.gif Download
-- mega.1280.com - JaVa-Video_tech24_vn_part1.rar - (http://mega.1280.com/file/Q3YIRJ/)
-- mega.1280.com - JaVa-Video_tech24_vn_part2.rar - (http://mega.1280.com/file/AFQ6VR/)
-- mega.1280.com - JaVa-Video_tech24_vn_part3.rar - (http://mega.1280.com/file/JHN1G9/)
http://img141.imageshack.us/img141/9429/lockn.png Pass
tech24.vn
Lịch sử Java
Ngược dòng lịch sử, Java là một sản phẩm của Sun Microsystems, một công ty chuyên sản xuất và thiết kế các mạng Workstation (trạm làm việc) UNIX . Để yểm trợ hoạt đông phần cứng chính của mình, Sun cũng phát triển phần mềm, đặc biệt nổi tiếng là hệ điều hành Solaris (một loại Unix) cho nền Intel và hệ thống tập tin mạng (Network File System - NFS). Năm 1990, Sun Microsystems bắt đầu thực hiện dự án có tên gọi Green nhằm phát triển phần mềm trong các thiết bị điện tử dân dụng. James Gosling, chuyên gia lập trình phần mềm mạng được giao trách nhiệm thực hiện dự án.
Ban đầu, Gosling sử dụng C++ để triển khai phần mềm cho các thiết bị như VCR (Video Cassette Recorder), PDA (Personal Digital Assistant). Nhưng ngay sau đó, Gosling phát hiện ra rằng C++ không phải là ngôn ngữ thích hợp cho công việc này. Tuy C++ uyển chuyển đủ để điều khiển hệ thống, nhưng nó lại dễ làm cho hệ thống treo (hang).
C++ cho phép ta xâm nhập trực tiếp đến tài nguyên hệ thống (system resources) và người lập trình có thể tự mình quản lý các tài nguyên này. Đặc tính nầy là một con dao hai lưỡi: cho lập trình viên nhiều tự do, nhưng sự tự do ấy khiến C++ trở thành một công cụ nguy hiểm để dùng cho việc viết các phần mềm có độ tin cậy cao (high reliability), khó té (robustness), tính tương thích cao (platform independent), tức là chạy trên nhiều loại chip khác nhau, đặc biệt trong việc điều khiển các thiết bị điện tử dân dụng.
Gosling giải quyết vấn đề này bằng cách tạo ra một ngôn ngữ lập trình mới có tên là Oak. Khi ngôn ngữ Oak trưởng thành, World Wide Web cũng đang bước vào thời kỳ phát triển mạnh mẽ, và đội ngũ phát triển phần mềm của Sun thấy rằng đây cũng là ngôn ngữ đặc biệt thích hợp cho Internet. Vào năm 1994, họ đã đưa ra WebRunner, một Webbrowser viết bằng Oak, sau này đổi tên thành HotJava .
Cuối cùng, vào năm 1995, Oak được đổi tên thành Java và đưa ra trình diễn tại SunWorld 95.
Trong 6 tháng đầu năm 1996, nhiều nhà sản xuất phần mềm cũng như phần cứng đứng đầu thế giới đã mua bản quyền công nghệ Java từ Sun, bao gồm Adobe, Asymetrix, Borland, IBM, Macromedia, Microsoft, Novel, Oracle, Spyglass và Symantec... Các hãng này sẽ kết hợp Java vào các sản phẩm của họ như: các phần mềm, hệ điều hành, công cụ phát triển (development tool)..
Kết tụ các tinh hoa kỹ thuật
Java rất giống C++, nhưng đơn giản hơn, đặc biệt là không có dùng pointer, structure và union. Pointer là thủ phạm của những Memory leak bugs.
Ta biết rằng một ngôn ngữ lập trình tuy hay nhưng rắc rối và có nhiều thứ phải nhớ thì khó trở nên thịnh hành được. Điển hình là ADA, một ngôn ngữ được Bộ Quốc Phòng Mỹ đặt cho Honeywell-Bull chế ra để thay thế gần 400 ngôn ngữ lập trình khác nhau trong các cơ quan của bộ. Các viên chức Bộ Quốc Phòng nghĩ rằng ADA sẽ là ngôn ngữ lập trình phổ thông cho mọi nền (platform), và như thế sẽ tiết kiệm rất nhiều về huấn luyện và bảo trì.
Thực tế thì không được như vậy. Rất nhiều lập trình viên ADA viết Pascal thay vì ADA, tức là không dùng các ưu điểm của ADA.
Ngay cả C++, tuy rất hay và gần gũi với C, nhưng cũng vì rắc rối mà không thịnh hành bằng VB.
Đúng ra ngoài C++, Java còn thừa kế nhiều tinh hoa từ những ngôn ngữ đi trước như Objective C, Smalltalk của Xerox và Modula-3 của giáo sư N. Wirth (cha của Pascal). Mẫu hình lập trình cách đối tượng và cú pháp C đã quen thuộc với các cao thủ võ lâm tin học trong hai thế hệ nên việc chyển sang Java gần như hoàn toàn không có trở ngại.
Có nhiều ý niệm quan trọng qui tụ trong Java thật ra không mới mẽ gì. Trường phái lập trình theo hướng đối tượng đã có gần 30 mươi năm nay. Việc compile từ ngôn ngữ lập trình ra một ngôn ngữ lưng chừng độc lập với môi trường sẽ chạy sau nầy đã từng được dùng cho ngôn ngũ Pascal, gọi là p-code, hồi đầu thập niên 1980 ở đại học Berkeley. Và ý niệm dùng các chương trình nhỏ, gọi là Applet, có thể phân phối trên mạng, đã từng được thực hiện bằng ngôn ngữ Postscript trong hệ thống NeWS (Network extensible Window System) của James Gosling từ giữa thập niên 1980.
Nhỏ mà làm nên chuyện lớn
Như ta biết, nguồn gốc của Java là nó chạy trên các máy nhỏ. Ngay từ đầu, Java được thiết kế sao cho Small (nhỏ), Simple (đơn giản), Safe (an toàn) và Secure (an ninh), bốn chữ S.
Nhỏ: Vì các dụng cụ điện tử dùng trong nhà không có nhiều Megabyte RAM hay đĩa cứng.
Đơn giản: Vì các dụng cụ điện tử tí hon nầy cũng không thể chứa một hệ điều hành rắc rối, không ai hiểu thấu đáo, với những đặc điểm ít khi dùng.
An toàn: Vì người sử dụng sẽ không hiểu hay thông cảm khi chương trình té hay hệ điều hành treo. Cái máy phải có độ tin cậy cao và khó té. Đối với một máy vi tính chạy Windows98, nếu mỗi tuần máy bị treo một, hai lần thì có thể tha thứ được. Chớ cái máy nướng bánh mì sandwich bị trục trặt một năm một lần vì phần mềm thì sẽ có nhiều lá thư giận dữ phan phiền gởi đến công ty sản xuất.
An ninh: Vì viển tượng củs Sun là "The Network is the Computer" (Mạng là máy điện toán), họ cho phép các dụng cụ điện tử dùng trong nhà chia nhau dùng các chương trình nhỏ (Applet), và các Applet nầy có thể được phân phối trên mạng cách an ninh.
Ai ngờ các mục tiêu khiêm nhường của một ngôn ngữ lập trình nhắm vào các dụng cụ điện tử nho nhỏ trong nhà lại rất thích hợp với môi trường Web. Môi trường hoạt động của Java có thể chuyển từ Mạng trong nhà ra Mạng thế giới.
Nhỏ: Vì các Applet phải di chuyển qua đường dây điện thoại 33KB, và người sử dụng không kiên nhẩn chờ đợi quá lâu.
Đơn giản: Vì chu kỳ triển khai cho Web ngắn hơn cho trong công sở nhiều. Các lập trình viên không thể mất quá nhiều thì giờ để đối phó với một ngôn ngữ lập trình rắc rối.
An toàn: Vì nếu lập trình bằng Java sẽ ít có bug hơn các ngôn ngữ cho phép ta động đến các tài nguyên của Operating System. Kinh nghiệm 30 mươi năm nay cho thấy ta không thể tin cậy vào các lập trình viên để họ thận trọng từng ly, từng tí trong việc dùng pointer và các loại dữ kiện.
An ninh: Vì người viếng Website không muốn tiếp nhận những Applet mà họ không biết có thể làm hại máy tính họ không. Họ muốn được đảm bảo sự an ninh để an tâm, nếu không họ sẽ bỏ đi nơi khác.
Java được dùng ở khắp nơi
Mặc dầu trong thời gian đầu người ta chỉ chú ý đến việc dùng Java cho Web, nhưng hai năm qua cho thấy không có lý do gì cản trở việc xem Mạng địa phương (Local Area network - LAN) như Mạng thế giới.
Chỉ cần dùng các chuẩn của Internet như TCP/IP, Webbrowser, và IMAP4, các công ty có thể tân thời hóa hệ thống vi tính trong sở mình. Các chương trình dùng cho Internet có thể được dùng cho LAN trong sở và gọi là Intranet.
Bây giờ họ có thể dùng toàn những sản phẩm mua có sẵn (off-the-shelf products), mềm hay cứng. Họ không còn phải lệ thuộc vào IBM, Unisys hay Compaq, tốn kém quá nhiều tiền để bảo trì hệ thống điện toán vì trót lỡ kẹt dùng hệ thống của các công ty điện toán nầy.
Họ cũng không còn cần chuyên viên nuôi trong sở để yểm trợ các phần mềm triển khai đặc biệt để dùng riêng cho sở họ.
Một khi đã cài đặt TCP/IP và để một Webbrowser trên mỗi bàn viết, tất cả mọi nhân viên đều có thể chia sẻ các tài liệu, dữ kiện, cẩm nang .v.v..Bước kế đó là eCommerce và thực hiện mọi công tác trao đổi thương mại, những áp dụng Database (Cơ sỡ dữ liệu) qua Internet và Intranet. Hơn nữa, bây giờ công ty có thể dùng multimedia như audio, video.
Những nhu cầu áp dụng nào mới cho công sỡ đều có thể thực hiện bằng Java cho Intranet giống như cho Internet. Nó không lệ thuộc vào MSWindows hay Unix.
Như thế Java có thể thay thế tất cả các ngôn ngữ lập trình và Operating System ở khắp nơi để cung ứng một dụng cụ lập trường đồng nhất, đúng với chủ trương "Viết một lần, chạy bất cứ nơi đâu".
http://img134.imageshack.us/img134/5400/downd.gif Download
-- mega.1280.com - JaVa-Video_tech24_vn_part1.rar - (http://mega.1280.com/file/Q3YIRJ/)
-- mega.1280.com - JaVa-Video_tech24_vn_part2.rar - (http://mega.1280.com/file/AFQ6VR/)
-- mega.1280.com - JaVa-Video_tech24_vn_part3.rar - (http://mega.1280.com/file/JHN1G9/)
http://img141.imageshack.us/img141/9429/lockn.png Pass
tech24.vn