Tải bản đầy đủ (.pdf) (32 trang)

CH01 gioi thieu java kho tài liệu bách khoa

Bạn đang xem bản rút gọn của tài liệu. Xem và tải ngay bản đầy đủ của tài liệu tại đây (1.59 MB, 32 trang )

Người biên soạn: Hồ Quang Thái (MSCB: 2299)
BM. Công Nghệ Phần Mềm, Khoa CNTT&TT
Email:
Số tín chỉ: 2 (20 LT + 20TH)

Chuyên đề ngôn ngữ lập trình 2 - Java


CHƢƠNG 1

HỆ THỐNG JAVA

Chuyên đề ngôn ngữ lập trình 2 - Java


NỘI DUNG







Tổng quan
Lịch sử của Java
Đặc điểm của Java
Java Virtual Machine (JVM)
Các loại chương trình Java
Chương trình Java đầu tiên

Chuyên đề ngôn ngữ lập trình 2 - Java




Visual
Basic
COBOL

JAVA
Delphi

C và
C++

BASIC

Pascal

Đặc tính đầu tiên của Java đó là một thứ ngôn ngữ đơn giản mà
người ta có thể thực hành ngay không cần phải tốn thêm một thời
gian làm việc với các ngôn ngữ hiện hành. (nhóm JavaTeam – 1995)
Chuyên đề ngôn ngữ lập trình 2 - Java


TỔNG QUAN JAVA
• Vào năm 1995 khi Java ra đời, Java được xem như
là một cuộc cách tân vĩ đại của thế giới bởi tính
dễ học và dễ dùng. (?!)
• Cần phải sử dụng các trình IDE (Intergrated
Development Environment) để phát triển được.
Nhưng các IDE của Java chậm phát triển hơn các
đối thủ khác.

• Để làm được nhiều việc hơn thì sau nhiều lần
nâng cấp thì Java ngày càng phình to hơn về phần
lõi thư viện. Tuy nhiên, nó vẫn nhỏ hơn nhiều so
với các ngôn ngữ khác.
Chuyên đề ngôn ngữ lập trình 2 - Java


HỆ THỐNG JAVA
• Java Platform, Standard Edition (Java SE): cho phép phát
triển và triển khai các ứng dụng trên máy tính bàn và
máy chủ.
• Java Platform, Enterprise Edition (Java EE): cho phép
bạn tạo ra các ứng dụng web thế hệ mới phục vụ cho
doanh nghiệp.
• Java Platform, Micro Edition (Java ME): cung cấp một
môi trường mạnh mẽ, linh hoạt cho các ứng dụng chạy
trên điện thoại di động và các thiết bị nhúng: điện
thoại di động, smartphone, TV, và máy in,…
• JavaFX: được thiết kế để cung cấp một trọng lượng
nhẹ, tăng tốc phần cứng, dùng cho các ứng dụng doanh
nghiệp.
Chuyên đề ngôn ngữ lập trình 2 - Java


HỆ THỐNG JAVA
• Java DB: được phân phối bởi Sun, mã nguồn mở Apache
Derby, là cơ sở dữ liệu 100% Java. Nó đầy đủ, an
toàn, dễ sử dụng, dựa trên tiêu chuẩn của SQL, JDBC API
và Java EE, dung lượng nhỏ, chỉ 2,5 MB.
• Java Card: cung cấp một môi trường an toàn cho các ứng

dụng chạy trên thẻ thông minh và các thiết bị khác với bộ
nhớ rất hạn chế.
• Java TV: là một công nghệ dựa trên Java ME. Sử dụng
TVJavaRuntime, nhà phát triển có thể dễ dàng tạo ra các
ứng dụng như video-on-Demand (VOD), trò chơi và ứng
dụng giáo dục, các ứng dụng để truy cập dữ
liệu Internet và trên hầu hết các danh hiệu đĩa Blu-ray.
Chuyên đề ngôn ngữ lập trình 2 - Java


LỊCH SỬ CỦA JAVA
• Java được khởi đầu bởi James
Gosling và bạn đồng nghiệp ở Sun
Microsystems vào 8/1991 dùng cho
các mặt hàng thiết bị dân dụng.
• Ban đầu ngôn ngữ này có tên là
Oak (Cây sồi) và được đổi tên thành
Java vào 1/1995 do có sự trùng tên.
• Ngày 23/5/1995, Java được Sun
chính thức công bố ở Sun World’95.
• Java là tên gọi của một hòn đảo ở
Indonexia, đây là nơi nhóm nghiên
cứu phát triển tham quan và làm
việc. Hòn đảo Java này là nơi rất nổi
tiếng với nhiều khu vườn trồng cà
phê.
Chuyên đề ngôn ngữ lập trình 2 - Java


ĐẶC ĐIỂM CỦA JAVA

• Java được xây dựng dựa trên nền tảng của C và C++ nghĩa
là Java sử dụng cú pháp của C và đặc trưng hướng đối
tượng của C++.
• Java là ngôn ngữ vừa biên dịch vừa thông dịch.
• Đầu tiên mã nguồn được biên dịch thành dạng bytecode.
Sau đó được thực thi trên từng loại máy nhờ trình thông
dịch.
• Mục tiêu của các nhà thiết kế Java là cho phép người lập
trình viết chương trình một lần nhưng có thể chạy trên các
nền phần cứng khác nhau.
• Ngày nay, Java được sử dụng rộng rãi, không chỉ để viết các
ứng dụng trên máy cục bộ hay trên mạng mà còn để xây
dựng các trình điều khiển thiết bị di động, PDA, …
Chuyên đề ngôn ngữ lập trình 2 - Java


ĐẶC ĐIỂM CỦA JAVA
Ngôn ngữ Java có những đặc trưng cơ bản sau:

• Đơn giản
• Hướng đối tượng
• Độc lập phần cứng và hệ điều hành

• Mạnh mẽ
• Bảo mật
• Phân tán

• Đa luồng
• Linh động
Chuyên đề ngôn ngữ lập trình 2 - Java



ĐẶC ĐIỂM CỦA JAVA
• Đơn giản (Simple): Những người thiết kế mong muốn
phát triển một ngôn ngữ dễ học và quen thuộc với đa số
người lập trình. Do vậy Java loại bỏ các đặc trưng phức
tạp của C và C++ như:
 Loại bỏ thao tác con trỏ, thao tác định nghĩa
chồng toán tử (operator overloading)…
 Không cho phéps đa kế thừa (Multi-inheritance)
mà sử dụng các giao diện (interface)
 Không sử dụng lệnh “goto” cũng như file header
(.h).
 Loại bỏ cấu trúc “struct” và “union”.
Chuyên đề ngôn ngữ lập trình 2 - Java


ĐẶC ĐIỂM CỦA JAVA
• Hướng đối tượng (Object Oriented): Java là ngôn ngữ
lập trình hoàn toàn hướng đối tượng:
 Mọi thực thể trong hệ thống đều được coi là một
đối tượng, tức là một thể hiện cụ thể của một lớp
xác định.
 Tất cả các chương trình đều phải nằm trong một
class nhất định.
 Không thể dùng Java để viết một chức năng mà
không thuộc vào bất kì một lớp nào. Tức là Java
không cho phép định nghĩa dữ liệu và hàm tự do
trong chương trình.
Chuyên đề ngôn ngữ lập trình 2 - Java



ĐẶC ĐIỂM CỦA JAVA
• Độc lập phần cứng và hệ điều hành (architectureneutral and portable):
 Với C/C++: Với mỗi nền phần cứng khác nhau, có một
trình biên dịch khác nhau để biên dịch mã nguồn
chương trình cho phù. Khi chạy trên một nền phần
cứng khác, bắt buộc phải biên dịch lại mã nguồn.
 Đối với Java: trình biên dịch sẽ biên dịch mã nguồn
thành dạng bytecode. Sau đó, khi chạy chương trình
trên các nền phần cứng khác nhau, máy ảo Java sẽ
chuyển mã bytecode thành dạng chạy được trên các
nền phần cứng tương ứng, không phải biên dịch lại.
Chuyên đề ngôn ngữ lập trình 2 - Java


MÁY ẢO JAVA

Chuyên đề ngôn ngữ lập trình 2 - Java


ĐẶC ĐIỂM CỦA JAVA
• Mạnh mẽ (Ronust): Java là ngôn ngữ yêu cầu chặt chẽ về
kiểu dữ liệu:
 Kiểu dữ liệu phải được khai báo tường minh.
 Java không sử dụng con trỏ và các phép toán con trỏ.
 Java kiểm tra việc truy nhập đến mảng, chuỗi khi thực
thi để đảm bảo rằng các truy nhập đó không ra ngoài
giới hạn kích thước mảng.
 Quá trình cấp phát, giải phóng bộ nhớ cho biến được

thực hiện tự động, nhờ dịch vụ thu nhặt những đối
tượng không còn sử dụng nữa (garbage collection).
 Cơ chế bẫy lỗi của Java giúp đơn giản hóa quá trình xử
lý lỗi và hồi phục sau lỗi.
Chuyên đề ngôn ngữ lập trình 2 - Java


ĐẶC ĐIỂM CỦA JAVA
• Bảo mật (Security): Java cung cấp một môi trường quản
lý thực thi chương trình với nhiều mức để kiểm soát tính
an toàn:
– Ở mức thứ nhất, dữ liệu và các phương thức được đóng
gói bên trong lớp. Chúng chỉ được truy xuất thông qua các
giao diện mà lớp cung cấp.
– Ở mức thứ hai, trình biên dịch kiểm soát để đảm bảo mã
là an toàn, và tuân theo các nguyên tắc của Java.
– Mức thứ ba được đảm bảo bởi trình thông dịch. Chúng
kiểm tra xem bytecode có đảm bảo các qui tắc an toàn
trước khi thực thi.
– Mức thứ tư kiểm soát việc nạp các lớp vào bộ nhớ để giám
sát việc vi phạm giới hạn truy xuất trước khi nạp vào hệ
thống.
Chuyên đề ngôn ngữ lập trình 2 - Java


ĐẶC ĐIỂM CỦA JAVA
• Phân tán (Distributed): Java được thiết kế để hỗ trợ các
ứng dụng chạy trên mạng bằng các lớp Mạng (java.net).
• Java hỗ trợ nhiều nền chạy khác nhau nên chúng được sử
dụng rộng rãi như là công cụ phát triển trên Internet, nơi

sử dụng nhiều nền khác nhau.
Ví dụ: Lớp URL của Java có thể dễ dàng truy xuất từ chủ ở xa, nó có
thể mở cổng hoặc truy cập đến các đối tượng khác thông qua
mạng.

• Được trang bị các lớp cho việc thiết lập kết nối socket
(dạng ổ cắm), nghĩa là chỉ cần cắm vào hay kết nối là có
thể chạy như trên cùng một máy.

Chuyên đề ngôn ngữ lập trình 2 - Java


ĐẶC ĐIỂM CỦA JAVA
• Đa luồng (Multithreading): Chương trình Java cung cấp
giải pháp đa luồng để thực thi các công việc cùng đồng
thời và đồng bộ giữa các luồng.
• Linh động (Flexible): Java được thiết kế như một ngôn
ngữ động để đáp ứng cho những môi trường mở. Các
chương trình Java chứa rất nhiều thông tin thực thi nhằm
kiểm soát và truy nhập đối tượng lúc chạy. Trong khi
chạy, môi trường Java có thể tự động mở rộng liên kết
đến các lớp mới ở một máy chủ ở xa trên mạng (hay trên
Internet). Đó chính là thuận lợi to lớn của Java so với
C/C++.
Chuyên đề ngôn ngữ lập trình 2 - Java


CÁC LOẠI CHƯƠNG TRÌNH CỦA JAVA
• Applets: Chương
trình được dùng với

internet, thường
được nhúng vào các
trang web.
• Các file java sau khi
được biên dịch sẽ
được nhúng trực
tiếp vào trang web.

Chuyên đề ngôn ngữ lập trình 2 - Java


CÁC LOẠI CHƯƠNG TRÌNH CỦA JAVA
• Ứng dụng dạng
dòng lệnh:
Chương trình Java
chạy dưới dấu
nhắc lệnh và
không có giao diện
đồ họa.

Chuyên đề ngôn ngữ lập trình 2 - Java


CÁC LOẠI CHƯƠNG TRÌNH CỦA JAVA
• Servlets: Đượ xem

như là các applet
chạy phía máy chủ,
không có giao diện.
• Client gởi yêu cầu xử

lý cần xử lý đến web
server.
• Các servlet thực thi
và tạo ra các trang
HTML.
• Web server trả trang
HTML về trình duyệt
Chuyên đề ngôn ngữ lập trình 2 - Java


CÁC LOẠI CHƯƠNG TRÌNH CỦA JAVA
• Ứng dụng GUI Applications: ứng dụng đơn có giao
diện đồ họa (Graphical User Interface)

Chuyên đề ngôn ngữ lập trình 2 - Java


CÁC LOẠI CHƯƠNG TRÌNH CỦA JAVA
• Packages: Thư viện các lớp java. Người lập trình
có thể tạo các gói cho riêng mình cũng như sử
dụng các gói có sẵn

Chuyên đề ngôn ngữ lập trình 2 - Java


Java Development Kit (JDK)
• Là các công cụ được dùng để biên dịch, thực thi
các applets hay applications.
• Có nhiều công cụ dòng lệnh
o javac, java, appletviewer


• Download miễn phí tại trang web của Oracle:
/>downloads/

Chuyên đề ngôn ngữ lập trình 2 - Java


Cài đặt JDK
• Sau khi tải về gói JDK. Các bạn tiến hành cài đặt như bình
thường. Sau đó đặt biến môi trường PATH trong phần
thiết lập.

Chuyên đề ngôn ngữ lập trình 2 - Java


×