Tài liệu hạn chế xem trước, để xem đầy đủ mời bạn chọn Tải xuống
1
/ 113 trang
THÔNG TIN TÀI LIỆU
Thông tin cơ bản
Định dạng
Số trang
113
Dung lượng
2,39 MB
Nội dung
Bộ mơn Cơng ngh phần m m VI N CƠNG NGH THÔNG TIN TRUY N THÔNG TRƯỜNG ĐẠI HỌC BÁCH KHOA HÀ NỘI LẬP TRÌNH H NG Đ I T ỢNG Chương Tổng quan OOP Cao Tuấn Dũng dungct@soict.hut.edu.vn Nội dung Công nghệ hướng đối tượng Đối tượng lớp Các nguyên lý c a OO Phân tích thiết kế HĐT Ngơn ngữ lập trình Java/C++ Ví dụ tập Nội dung Công nghệ hướng đối tượng Đối tượng lớp Các nguyên lý Phân tích thiết kế HĐT Ngơn ngữ lập trình Java Ví dụ tập 1.1 Cơng nghệ đối tượng • Cơng nghệ đối tượng tập quy tắc (trừu tượng hóa, đóng gói, đa hình), hướng dẫn để xây dựng phần mềm, với ngôn ngữ, sở liệu công cụ khác hỗ trợ quy tắc (Object Technology - A Manager’s Guide, Taylor, 1997) Cơng nghệ đối tượng • Tạo mơ hình phản ánh lĩnh vực sử dụng thuật ngữ lĩnh vực • Các mơ hình tạo cần dễ tạo, dễ thay đổi, mở rộng, thẩm định kiểm chứng • Các hệ thống xây dựng linh hoạt thay đổi, có kiến trúc xác định có hội để tạo thực thi thành phần có khả tái sử dụng • Quy trình phát triển + Ngơn ngữ mơ hình hóa + Kỹ thuật cơng cụ phát triển 1.2 Công nghệ đối tượng sử dụng đâu? • Các hệ thống Client/Server phát triển Web Công nghệ đối tượng cho phép công ty đóng gói thơng tin doanh nghiệp đối tượng giúp phân phối trình xử lý qua mạng Internet mạng máy tính Cơng nghệ đối tượng sử dụng đâu? • Hệ nhúng (embedded system) • Hệ thống thời gian thực (real-time) ▫ Công nghệ đối tượng cho phép hệ thống thời gian thực phát triển với chất lượng cao linh hoạt Hệ thống vệ tinh Các hệ thống quốc phịng hàng khơng vũ trụ … Lịch sử phát triển • Các mốc c a cơng nghệ đối tượng Simula C ++ The UML 1967 Late 1980s 1996 1972 1991 2004 Smalltalk Java UML 10 1.3 Lịch sử phát triển NNLT • Chính phát triển q trình trừu tượng hóa 11 Assembly code • a Hợp ngữ (Assembly language): ▫ Là ngôn ngữ lập trình tuần tự, gần với tập lệnh mã máy c a CPU ▫ Khó nhớ, khó viết, với toán ph c tạp ▫ Khó sửa lỗi, bảo trì 106 Nội dung Công nghệ hướng đối tượng Các nguyên lý c a OO Ngơn ngữ lập trình Java Ví dụ tập 107 Ví dụ - HelloWorld // HelloWorld.java // Chuong trinh hien thi dong chu “Hello World” public class HelloWorld { /* Phuong thuc main se duoc goi dau tien bat cu ung dung Java nao*/ public static void main(String args[]){ System.out.println( “Hello World!" ); } // ket thuc phuong thuc main } // ket thuc lop HelloWorld 108 Ví dụ (tiếp) • Chú thích (Comment) ▫ Trên dịng: Bắt đầu bằng: // ▫ Nhiều dịng: /* */ • Java phân biệt chữ hoa chữ thường • Từ khóa có sẵn c a Java: ▫ class: Khai báo lớp ▫ public: Quy định phạm vi truy cập • Tên lớp ch a hàm main phải trùng với tên file java 109 Cài đặt chạy thử chương trình Java • Bước 1: Cài đặt j2sdk1.5, c̀i đặt biến mơi trường (nếu d̀ng cmd) • Bước 2: Cài trình soạn thảo TextPad/JCreator • Bước 3: Lập trình/Viết mã nguồn • Bước 4: Dịch ▫ cmd: javac HelloWorld.java ▫ Textpad: Ctrl + ▫ JCreator: F7 Build Build Project/File • Bước 5: Chạy chương trình ▫ cmd: java HelloWorld.class ▫ Textpad: Ctrl + ▫ JCreator: F5 Run Run Project/File 110 Biến mơi trường • PATH = …;C:\Program Files\Java\jdk1.6\bin • CLASSPATH = C:\Program Files\Java\jdk1.6\lib;.;C:\Program Files\Java\jdk1.6\include 111 Ví dụ - GUI import javax.swing.JOptionPane; public class FirstDialog{ public static void main(String[] args){ JOptionPane.showMessageDialog(null, ”Xin chao ban!”); System.exit(0); } } 112 Ví dụ – Nhập, xuất liệu import javax.swing.JOptionPane; public class HelloNameDialog{ public static void main(String[] args){ String result; result = JOptionPane.showInputDialog(“Hay nhap ten ban:”); JOptionPane.showMessageDialog(null, ”Xin chao “+ result + “!”); System.exit(0); } } 113 Ví dụ lớp đối tượng Java • Lớp Time Java 114 Java: Chương trình đối tượng 115 Câu hỏi nhanh: • Sự khác lập trình cấu trúc lập trình hướng đối tượng? 116 Lập trình cấu trúc – Lập trình hướng đối tượng • Lập trình cấu trúc (procedural Programming): ▫ Đơn vị th tục, hàm ▫ Dữ liệu có ranh giới định với th tục • Lập trình Hướng đối tượng ▫ Đơn vị đối tượng ▫ Dữ liệu gắn với hàm (phương th c) đối tượng ▫ Mỗi cấu trúc liệu có phương th c họat động 117 Thảo luận • Lập trình hướng đối tượng giải tốt vấn đề c a lập trình cấu trúc? • Đọc tài liệu, đưa ví dụ minh họa 118 Bài tập Chạy thử ví dụ học Textpad Jcreator/Netbean/Eclipse Viết chương trình in hình chữ đầu c a tên bạn Ví dụ tên Th y In chữ TH: TTTTTTTTT T T T T H H H H HHHHHHH H H H H Tìm hiểu câu chuyện ngắn liên quan đến lịch sử đời c a Java (tên người sáng lập Java,…) 119 Bài tập (2) Viết chương trình nhập hai số nguyên hiển thị số nguyên vừa nhập Sửa chương trình trên, hiển thị tổng, hiệu, tích thương c a số vừa nhập 120 Links download tài liệu • http://fit.hut.edu.vn/~dungct/Courses/OOP/K5 2/Huongdan-BTL-LTHDT-K52.doc • http://fit.hut.edu.vn/~dungct/Courses/OOP/K5 2/Danh%20sach%20BTL-LTHDT-K52.doc