Thư viện tri thức trực tuyến
Kho tài liệu với 50,000+ tài liệu học thuật
© 2023 Siêu thị PDF - Kho tài liệu học thuật hàng đầu Việt Nam

Tài liệu căn bản về java
Nội dung xem thử
Mô tả chi tiết
Java là gì? Và tại sao bạn cần quan tâm?
Tất cả đều đã nghe nói về Java. Nhưng liệu có ai không còn câu hỏi nào về hiện tượng này? Bây
giờ, khi "bức tranh" Java đang đến ngay trước mắt mọi người, hãy thử xem qua công nghệ này và
giải đáp các thắc mắc phổ biến nhất
H: Java là gì?
Đ: Đây là ngôn ngữ lập trình mới do một nhóm nhỏ các nhà khoa học của hãng Sun Microsystems
sáng tạo nên. Theo như truyền thuyết của những người tạo ra ngôn ngữ này, thoạt tiên Java được
gọi là Oak và người ta định dùng nó để lập trình cho bộ TV (set-top box). Tất cả các khả năng hiện
tại cũng như những lời đao to búa lớn chỉ mới có sau này. Từ nền tảng Oak lúc đó, hãng Sun đã
phát triển cả một chi nhánh tên là JavaSoft.
H: Có phải JavaScript chỉ là một tên khác của Java?
Đ: Không đúng. JavaScript là ngôn ngữ kịch bản để thông dịch (interpreted scripting language).
Java là ngôn ngữ lập trình đích thực để biên dịch (complied programming language). Java và
JavaScript chỉ có chung vài điểm nhỏ về ngữ pháp có thể làm các nhà lập trình quan tâm. Xét về
tổng thể chúng là hai công cụ khác nhau hoàn toàn.
H: Thế JavaBeans là gì?
Đ:JavaBeans là một mẫu đơn thể khả chuyển, độc lập hệ máy (portable), platform-independent
component model). Các lập trình viên dùng chúng để tạo các đoạn phần mềm mà người khác có
thể dùng được trong chương trình của họ.
H: Nếu Java cũng chỉ là một ngôn ngữ lập trình như bao ngôn ngữ khác, tại sao có nhiều
lời đao to búa lớn thế?
Đ: Về kỹ thuật, Java chỉ là ngôn ngữ lập trình nhưng có mục tiêu rất xa: nó cho phép lập trình viên
tạo các bản sao chương trình mà người dùng có thể chạy trên hầu hết các hệ máy và hệ điều
hành. Khả năng này thường được gọi là "viết một lần, chạy mọi nơi" (write once, run anywhere) là
một lợi thế cực lớn. Nó biến Java thành công nghệ chủ chốt trong máy tính mạng (NC) và là thành
phần sống còn của lập trình Web.
H: Tôi không viết chương trình và chỉ dùng Microsoft Windows thì tôi đâu cần phải quan
tâm đến khả năng "viết một lần, chạy mọi nơi"?
Đ: Do tầm quan trọng của Java đối với các nỗ lực phát triển NC, nó cũng là yếu tố không nhỏ trong
vấn đề Tổng chi phí sở hữu (total cost of ownership - TCO). Sự tranh luận này đã buộc Microsoft
và các công ty khác chú ý hơn đến vấn đề phiền phức là nâng cấp và bảo trì cả một "hạm đội" các
hệ thống Windows. Công ty Microsoft đã tung ra bộ Zero-administration (không cần quản trị) và
người ta hy vọng hãng sẽ bổ sung nhiều tính năng tương tự trong các phiên bản mới của
Windows. Microsoft cũng đang phát triển dòng máy NC riêng. ở dòng này máy đầu cuối là một loại
đặc biệt chạy Windows và máy chủ đa người dùng cũng chạy Windows.
Ngoài ra, nếu bạn dùng một trình duyệt Web tương đối mới, rất có khả năng máy bạn đã chạy một
vài Java applet. Rất nhiều các dải chữ chạy hay hoạt hình trong các trang Web được viết bằng
Java. Đến cuối năm nay sẽ có nhiều công ty bắt đầu dùng Java để tạo các trang phức tạp hơn và
tương tác hơn như các hướng dẫn cho người dùng cài đặt hay dùng thử các sản phẩm phần
mềm.
H: Sự khác biệt giữa Java app (ứng dụng Java) và Java applet là gì?
Đ: ứng dụng (app) là một chương trình độc lập mà bạn có thể chạy trên máy của mình. Các ứng
dụng phi-Java có rất nhiều, trong đó có cả tá bạn đang dùng như Microsoft Word hay Excel. Cho
đến nay mới có rất ít ứng dụng Java. Java applet thường chỉ là các chương trình nhỏ hơn nhiều.
Chúng chỉ chạy bên trong trình duyệt Web của bạn.
H: Nếu mới chỉ có ít ứng dụng Java và các lập trình viên hiện nay chủ yếu dùng Java để
tạo minh họa trang Web thì "lợi thế lớn" ở đâu?
Đ: Minh họa trang Web chỉ là bước đầu. Ngôn ngữ dùng cho mạng máy tính này khai thác sự liên
kết tốt hơn rất nhiều việc đơn thuần dùng chung tập tin. Hai dự án nổi bật cho hướng này là Kona
của Lotus (xem http://www.kona.lotus.com) và Alta của Corel. Cả hai dự án đều tập hợp các ứng
dụng gọn nhẹ, gồm soạn thảo văn bản, bảng tính, tu sửa hình đồ họa hay trình diễn các PIM. Tất
cả chúng ta đều chạy trên máy tính mạng hay bất kỳ hệ thống Windows (hay phi Windows) nào hỗ
trợ Java. Những chương trình này không được trông đợi sẽ thay thế hoàn toàn các bộ chương
trình văn phòng.
Chúng sẽ là các chương trình gọn hơn, đơn giản hơn mà bạn hay cần đến trong văn phòng. Ưu
thế của bộ này là bạn không phải cài đặt hay bảo trì cả một mớ phần mềm văn phòng trên máy
của mình. Khía cạnh hấp dẫn nhất của Kona và Alta, theo dự kiến là khả năng đật cấu hình. Mai
này nếu bạn có một bộ phần mềm như vậy trong máy, bạn có thể tùy ý sửa chữa. Ví dụ nếu bạn
dùng SmartSuite 98 của Lotus, bạn được phép thêm bớt các thành phần ActiveX và Kona. Alta
thậm chí cho phép bạn tùy biến giao diện của chương trình bằng một trình soạn thảo HTML bất kỳ
trên thị trường.
Đây có lẽ là bước đầu của việc chuyển đổi từ các cấu hình phần mềm độc nhất, định sẵn sang các
thành phần cho phép tùy đặt cấu hình. Nếu bạn muốn một giải pháp trọn bộ, tiêu chuẩn hóa thì
cũng có sẵn. Nhưng nếu bạn đã biết rõ mình cần và không cần gì, bạn có thể lắp ghép các thành
phần, điều chỉnh hệ thống theo như nhu cầu. Tuy vậy cuộc cách mạng này sẽ chưa diễn ra chừng
nào Java chưa hoàn tất cam kết "viết một lần, chạy mọi nơi".
H: Khái niệm "100% Pure Java - Java chính gốc" là gì?
Đ: Đây là một loại chứng thư của Sun cấp cho chương trình viết bằng Java thỏa yêu cầu không
phụ thuộc vào mã của hệ điều hành và sẽ chạy trên bất cứ máy ảo Java nào (JVM - Java Virtual
Machine).
H: Làm sao một chương trình có thể chạy mọi nơi?
Đ: Một ứng dụng cổ điển, như Lotus 1-2-3, bản thân nó đã tự chạy được. Cuộc sống của phần
mềm bắt đầu khi người ta viết ra bằng một ngôn ngữ lập trình nào đó như C chẳng hạn. Chương
trình phát triển sẽ dịch nó sang mã nhị phân (binary format) để bộ xử lý của máy bạn chạy trực tiếp
được. Do máy Mac và PC dùng bộ xử lý khác nhau, chúng không thể dùng chung một bản chương
trình gốc (native executable), trừ phi dùng một phần mềm nào đó giải lập kiến trúc của máy kia.
Nói chung việc giả lập thường làm giảm tốc độ và dễ gây ra vấn đề do kém tương thích. Các
chương trình Java được dịch sang kiến trúc của riêng nó, gọi là định dạng bytecode. Để chạy
chương trình Java, bạn cần một phần mềm nữa phiên dịch mã bytecode cũng như cung cấp cho
nó môi trường và các dịch vụ cần thiết. Tầng phần mềm này chính là JVM. Máy ảo Java biến tất cả
mọi nền phần cứng và phần mềm trở nên giống nhau dưới con mắt của chương trình Java. Về
hiệu quả, FVM giống một trình điều khiển thiết bị của chương trình Java.
Chạy chương trình Java trên JVM vẫn còn chậm hơn một chút so với chạy chương trình viết thẳng
cho hệ máy đó. Dầu vậy, công nghệ JVM đang tiến bộ mau chóng về mặt tốc độ và khoảng cách