Lập trình truyền thống Trong lập trình cấu trúc hay lập trình hướng thủ tục Một bài toán được giải quyết bằng cách chia thành các bài toán nhỏ và thực hiện thông qua các chương trình
Trang 2Nội dung môn học
Tổng quan về lập trình hướng đối tượng (OOP)
Giao diện đồ họa (GUI)
Làm việc với cơ sở dữ liệu (JDBC)
Trang 3Tài liệu tham khảo
Bài giảng Lập Trình Java
Java – Phương Lan – NXB Lao Động Xã Hội - 2004.
Java Lập Trình Mạng – Nguyễn Phương Lan, Huỳnh
Đức Hải – NXB Giáo Dục.
Giáo trình Lập Trình Mạng Bằng Java – NXB Thống Kê -
2003
Trang 4Chương 1
Tổng quan lập trình hướng đối tượng với java
(Overview Java Object-Oriented Programming)
Trang 5Nội dung
Điểm qua về lập trình
Lập trình hướng đối tượng
Giới thiệu về Java
Cách chạy một chương trình Java
Trang 6Lập trình truyền thống
Trong lập trình cấu trúc hay lập trình hướng thủ tục
Một bài toán được giải quyết bằng cách chia thành các bài toán nhỏ và thực hiện thông qua các chương trình con.
Chương trình = Cấu trúc dữ liệu + Thuật giải
Ví dụ: bài toán quản lý sinh viên, xây dựng cấu trúc
Trang 7Lập trình truyền thống
Bài toán quản lý giáo viên:
Trang 8Lập trình truyền thống
Phương pháp lập trình này có một số hạn chế như:
Ngôn ngữ không phân chia rõ ràng giữa cấp cài đặt và cấp
sử dụng.
Sự trộn lẫn khiến chương trình khó đọc, khó sữa khi cấu trúc dữ liệu thay đỗi.
Không có tính kế thừa
Trang 9Lập trình hướng đối tượng (OOP) là gì ?
Bản chất của máy tính là xử lý dữ liệu
Vì vậy, sẽ hoàn toàn tự nhiên nếu chương trình được thiết
kế xoay quanh dữ liệu hơn là chức năng chương trình.
Dữ liệu và các thao tác trên dữ liệu (hành vi) được liên kết với nhau đối tượng (object)
OOP là phương pháp lập trình lấy đối tượng làm nền tảng để xây dựng thuật giải, xây dựng chương trình
Dữ liệu + Hành vi = Đối tượng
Đây là phương pháp lập trình mới, cho đến thời điểm hiện nay chưa có phương pháp lập trình nào tốt hơn
Trang 10Các đặc điểm của OOP
Sự đóng gói (Encapsulation): là khả năng lưu giữ
riêng biệt dữ liệu và các phương thức tác động lên
nhau có chung đặc điểm
Thể hiện qua khái niệm hàm ảo hay phương thức trừu tượng
Trang 14Giới thiệu về Java
Một ngôn ngữ lập trình bậc cao do Jame Gosling và các cộng sự ở Sun MicroSystem
Độc lập với hệ điều hành và các hệ nền khác nhau
Máy ảo Java (JVM)
Cung cấp một môi trường họat động an toàn: chạy ở lớp trên của hệ điều hành
Ngôn ngữ Lập trình Hướng Đối tượng (OOP)
Trong Java, mọi thứ là lớp (Class)
Không giống C++, hỗ trợ OOP được xây dựng dựa vào mức cao của ngôn ngữ (C C++) Trong Java, hỗ trợ
Trang 15Các đặc điểm của Java
Nhiều lớp đã được định nghĩa!
Trong Java, trước khi bạn viết bất kỳ code nào, kiểm tra
xem chắc chắn rằng chưa có ai đã làm nó cho bạn!
Trang 16Các loại ứng dụng Java
Desktop: Console, GUI
Web: Applet (client), JSP/Servlet (server)
Network: Socket
Distributed: RMI, Corba, EJB
Mobile: MIDlet
Trang 17C++ vs Java
Sử dụng những con trỏ (Java không sử dụng - lớp được truyền như tham chiếu)
Include file (Java sử dụng các gói)
Sử dụng những biến toàn cục (biến toàn cục có thể
dễ dàng được mô phỏng)
Nạp chồng toán tử (Java không sử dụng)
Templates (Java 5.0 mới có sự hỗ trợ cho điều này)
Đa thừa kế (Java sử dụng các giao tiếp)
Các phương thức hủy bỏ (Java không có)
Trang 18Môi trường của Java
Java Source
(*.java)
Java Compiler
(javac)
Java Object
(*.class)
Java Virtual Machine
Mã đối tượng được xác minh
và nạp vào máy ảo Java
Trình thông dịch kiểm soát tất cả các truyền thông với OS của máy tính thực
Java Interpreter
(java)
Chương trình được xử lý bởi trình thông dịch
Trang 19JVM và Bytecode
Không giống các chương trình C++, các chương
trình Java không được biên dịch thành ngôn ngữ
máy
Thay vào đó chúng được biên dịch thành mã của
Java (gọi là bytecode)
Sau đó, bytecode được thông dịch bởi máy ảo Java (JVM)
Đây là điểm chính làm cho Java phổ biến Sau khi đã được biên dịch thành bytecode, nó có thể chạy trên JVM được cài đặt trên bất kỳ hệ điều hành nào
Trang 20Chương trình Java
Như đã đề cập, trong Java mọi thứ đều là lớp
Mỗi lớp được chứa bên trong một tập tin của nó
Tên của mỗi tập tin cần phải đặt đúng như tên của
lớp mà nó chứa với phần mở rộng *.Java
Thí dụ, MyFirstProgram.java chứa lớp MyFirstProgram
Ghi chú: quy ước tên này không phải là một gợi ý, đó
là một điều bắt buộc cho những chương trình Java của bạn được biên dịch đúng
Trang 21Thí dụ một chương trình Java
Khai báo lớp
Kết thúc lớp
Phương thức main
Trang 22Các phần mềm cần cho cài đặt và chạy Java
Những chương trình Java có thể được biên dịch và chạy với một công cụ gọi là Java SDK (Software
Trang 23Cài đặt JDK 1.6.0
Trang 24Đường dẫn mặc đinh (PATH)
Trang 25 Được sử dụng trong việc tạo ra tài liệu lưu trữ Java (.jar)
Có thể là một phương pháp tiện lợi để phân phối những
Trang 26Cách sử dụng trình biên dịch Java
Cú pháp: javac [Java filename]
Truyền một số không hạn chế các file mã nguồn Java
(*.Java) trên đối số dòng lệnh.
Javac sẽ lấy mỗi file và sinh ra một file *.class cùng tên (file bytecode)
Thí dụ, MyFirstJavaClass java sẽ sinh ra một file bytecode là
MyFirstJavaClass class
Lệnh: javac *.Java
Sẽ biên dịch và phát sinh các file bytecode cho mỗi file
*.Java trong thư mục làm việc hiện hành.
Trang 27Cách sử dụng trình biên dịch Java
Trang 28 Trình phiên dịch sẽ tìm kiếm file bytecode có tên
[classname].class trong thư mục hiện hành hay những thư mục được gán trong classpath
Lớp cần chạy với trình thông dịch Java phải có một phương thức với nguyên mẫu:
public static void main()
Trang 29Cách sử dụng trình thông dịch Java
Trang 30Sử dụng classpath
Dùng để chỉ ra danh sách các thư mục, giúp cho việc tìm kiếm các tập tin lớp đối tượng
Nên xác lập CLASSPATH trong lúc thực thi
(runtime), vì như vậy nó sẽ xác lập đường dẫn cho quá trình thực thi hiện hành
Trang 31Sử dụng classpath
Theo mặc định classpath được đặt là thư mục làm việc hiện hành
Phụ thuộc vào phần mềm và hệ điều hành sử dụng,
có thể cho biết classpath theo một số cách như sau:
Có thể đặt classpath trực tiếp bởi sử dụng dấu chuyển -classpath hay -cp từ dòng lệnh:
Ví dụ: java –cp C:\simples MyFirstJavaClass
Trong Windows, classpath có thể được sửa đổi từ muc Environment Variables của System trong Control Panel.
Các phần mềm hãng thứ ba như Eclipse và Borland
Trang 32Sử dụng classpath
Trang 33Công cụ phát triển – JCreator
Trang 34Công cụ soạn thảo – EditPlus
Trang 35Tóm tắt
Các phương pháp lập trình
Lập trình hướng đối tượng (OOP)
Giới thiệu về Java
Biên soạn và chạy một chương trình Java
Trang 36Thanks for listenning!!!