Giáo trình Lập trình mạng Java
Lập trình mạng là một trong những nhiệm vụ căn bản để phát triển các ứng dụng
doanh nghiệp. Một chương trình mạng được viết ra để các chương trình trên các máy
tính khác nhau có thể truyền tin với nhau một cách hiệu quả và an toàn cho dù chúng
được cài đặt trên mạng LAN, WAN hay mạng toàn cầu Internet, đây là điều căn bản đối
với sự thành công của nhiều hệ thống.
Java là ngôn ngữ lập trình hướng đối tượng thuần túy với nhiều đặc trưng ưu việt
so với các ngôn ngữ lập trình hướng đối tượng khác như tính độc lập với nên, tính bảo
mật, Java là ngôn ngữ ngay từ khi ra đời đã hướng đến lập trình mạng nên việc viết một
chương trình lập trình mạng bằng Java dễ dàng hơn nhiều so với các ngôn ngữ khác.
Giáo trình này bao gồm 10 chương:
Chương 1: Giới thiệu những khái niệm căn bản về mạng máy tínhđể người đọc có
thể tiếp cận với các chương tiếp theo. Trong chương này chúng ta sẽ đi vào xem xét
mạng vật lý, phần cứng được sử dụng trong các mạng LAN. Tiếp theo chúng ta sẽ tìm
hiểu mô hình phân tầng OSI bảy tầng, và sự tương ứng của họ giao thức TCP/IP với các
tầng trong mô hình OSI. Sau đó chúng ta sẽ đi vào tìm hiểu các giao thức mạng, giao
thức Internet, và giao thức e-mail.
Chương 2: Giới thiệu ngôn ngữ lập trình Java. Chương này trình bày các khái niệm
căn bản về ngôn ngữ lập trình Java. Giới thiệu lịch sử phát triển và cấu trúc của máy ảo
Java. Những đặc trưng đã tạo nên sức mạnh của ngôn ngữ Java cũng được giới thiệu
trong chương này. Cũng trong chương này chúng ta sẽ đi vào tìm hiểu cách cấu hình và
cài đặt môi trường biên dịch, chạy và soạn thảo ngôn ngữ Java. Tiếp đến ta sẽ đi vào tìm
hiểu các thành phần cơ bản của Java như kiểu dữ liệu, cấu trúc lệnh tuần tự rẽ nhánh,
lặp, và nhảy. Tiếp theo chúng ta sẽ đi vào tìm hiểu các khái niệm liên quan đến lập trình
hướng đối tượng trong Java như lớp, phương thức, thuộc tính, các từ khóa bổ trợ như
static, final, abstract, thừa kế và tính đa hình trong Java. Một trong những khái niệm mới
mà các ngôn ngữ truyền thống trước đây không có là ngoại lệ và đón bắt ngoại lệ trong
Java cũng được giới thiệu.
Chương 3: Các luồng vào ra. Chương này giới thiệu khái niệm vào ra bằng các
luồng dữ liệu. Trước tiên ta sẽ tìm hiểu về các luồng và ý nghĩa của luồng trong chương
trình Java. Tiếp đến chúng ta sẽ lần lượt tìm hiểu các luồng vào ra chuẩn trong gói làm
việc với console. Các luồng trừu tượng java.io.InputStream, java.io.OutputStream là các
luồng cơ bản để từ đó xây dựng nên các luồng cụ thể. Luồng được chia thành các nhóm
như luồng byte và luồng ký tự. Từ phiên bản Java 1.4 một đặc trưng vào ra mới trong
Java được đưa vào cũng được giới thiệu trong chương này. Việc nắm vững kiến thức ở
chương này cũng giúp cho việc lập trình ứng dụng mạng trở nên đơn giản hơn vì thực
chất của việc truyền và nhận dữ liệu giữa các ứng dụng mạng là việc đọc và ghi các
luồng.
Chương 4: Lập trình đa tuyến đoạn. Trong các ngôn ngữ lập trình trước đây các
ứng dụng hầu hết là các ứng dụng đơn tuyến đoạn. Để tăng tốc độ xử lý và giải quyết vấn
đề tương tranh của các ứng dụng nói chung và ứng dụng mạng nói riêng ta cần sử dụng
khái niệm đa tuyến đoạn. Phần đầu của chương này trình bày các khái niệm căn bản về
tiến trình, tuyến đoạn. Tiếp đến chúng ta sẽ xem xét các cách cài đặt một ứng dụng tuyến
đoạn trong Java bằng lớp Thread và thực thi giao tiếp Runnable. Sau đó ta sẽ đi vào tìm
hiểu các phương thức của lớp Thread. Sự đồng bộ hóa và cách cài đặt một chương trình
đồng bộ hóa cũng được giới thiệu trong chương này.
Chương 5: Lập trình mạng với các lớp InetAddress, URL và URLConnection.Lớp
InetAddress là lớp căn bản đầu tiên trong lập trình mạng mà ta cần tìm hiểu. Nó chỉ ra
cách một chương trình Java tương tác với hệ thống tên miền. Tiếp đến ta sẽ đi vào tìm
hiểu các khái niệm về URI, URL,URN và lớp biểu diễn URL trong Java. Cách sử dụng
URL để tải về thông tin và tệp tin từ các server. Sau đó ta đi vào tìm hiểu lớp
URLConnection, lớp này đóng vai trò như một động cơ cho lớp URL.
Chương 6: Lập trình Socket cho giao thức TCP. Trong chương này chúng ta sẽ tìm
hiểu cách lập trình cho mô hình client/server và các kiểu kiến trúc client/server. Các lớp
Socket và ServerSocket được trình bày chi tiết trong chương này để lập các chương trình
cho giao thức TCP.
Chương 7: Lập trình ứng dụng cho giao thức UDP. Chương này giới thiệu giao
thức UDP và các đặc trưng của giao thức này. Tiếp đến ta đi vào tìm hiểu các lớp
DatagramPacket và DatagramSocket để viết các chương trình ứng dụng mạng cho giao
thức UDP.
Chương 8: Tuần tự hóa đối tượng và ứng dụng trong lập trình mạng. Trình bày các
vấn đề về tuần tự hóa và ứng dụng của tuần tự hóa trong lập trình mạng.
Chương 9: Phân tán đối tượng bằng Java RMI. Chương này tìm hiểu chủ đề về lập
trình phân tán đối tượng bằng kỹ thuật gọi phương thức RMI (Remote Method
Invocation).
Chương 10:Xử lý cơ sở dữ liệu trong Java. Trình bày cách thức kết nối các cơ sở
dữ liệu và xử lý cơ sở dữ liệu bằng Java thông qua giao diện lập trình ứng dụng JDBC.
Tìm hiểu về lập trình mạng tốt nhất là trên các hệ thống mạng thực sự với nhiều
máy tính được kết nối vật lý. Tuy nhiên trong giáo trình này hầu hết các ví dụ được trình
bày để bạn đọc có thể lập trình và thử nghiệm các ứng dụng mạng trên các máy đơn.
Mặc dù đã hết sức cố gắng để trình bày giáo trình một cách dễ hiểu với các ví dụ
minh họa giúp bạn đọc có thể thử nghiệm ngay sau khi tìm hiểu các vấn đề lý thuyết,
nhưng chắc chắn giáo trình này không thể tránh khỏi những thiếu sót nhất định. Rất mong
sự góp ý và phê bình của các bạn độc giả. Mọi thắc mắc và góp ý các bạn có thể gửi về
theo địa chỉ e-mail sau:lequocdinh@vnn.vnhoặc hoan_td2001@yahoo.com
Để hoàn thành giáo trình này các tác giả đã nhận được sự giúp đỡ rất nhiều từ
bạn bè, đồng nghiệp và những người thân.
Xin chân thành cảm ơn tới tất cả mọi người.
Các file đính kèm theo tài liệu này:
- LapTrinhMangJavat.pdf
- CoreJava.pdf
- lap_trinh_di_dong_java.pdf