Siêu thị PDFTải ngay đi em, trời tối mất

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

Java là gì? Và tại sao bạn cần quan tâm?
MIỄN PHÍ
Số trang
34
Kích thước
244.7 KB
Định dạng
PDF
Lượt xem
1568

Java là gì? Và tại sao bạn cần quan tâm?

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 sẽ được thu ngắn lại rất nhiều trước

cuối năm nay. Symatec và Microsoft đã bán ra rất đúng lúc các trình biên dịch và

Sun sẽ tung ra HotSpot VM trong quý 4 năm 1997. Với sự kết hợp này, người ta

mong đợi chương trình Java sẽ chạy nahanh như các trình viết bằng C. Các

hãng phần mềm coi hướng phát triển bằng JVM là rất hấp dẫn vì họ có thể đẩy

các chương trình Java chạy trên mọi hệ máy. Chỉ cần họ viết một JVM cho hệ

máy đó. Cho đến nay, đã có JVM cho rất nhiều hệ máy, từ máy tính lớn

(mainframe) đến hầu hết tất cả các kiểu máy để bàn kể cả PC và Mac.

H: Liệu VM có là một mốt nhất thời?

Đ: Tôi e rằng không. Trước hết, máy để bàn ngày nay có đủ sức mạnh để hỗ trợ

phần việc mới - chạy chương trình qua JVM. Do đó vấn đề cần quan tâm là

chương trình sẽ chạy nhanh hơn trong Java hay trong C++. Nếu bạn dùng các

chương trình kiểu như soạn thảo văn bản thì bạn sẽ không nhận ra sự khác biệt.

Xét ở tình huống khác, nếu làm việc với bảng tính lớn, cần tính toán nhiều, bạn

sẽ nhận ra sự khác biệt về tốc độ và bạn có thể sẽ không muốn dùng ứng dụng

Java. Tuy vậy, một khi HotSpot VM ra đời, sự khác biệt tốc độ sẽ biến mất.

Tải ngay đi em, còn do dự, trời tối mất!