MỤC TIÊU KHÓA HỌC
- Nắm các khái niệm trong kỹ thuật lập trình hướng đối tượng (OOP – SOLID)
- Nắm và hiểu các mẫu pattern cơ bản. Áp dụng các mẫu vào việc thiết kế các sản phẩm phần mềm
- Nắm và phát triển các mẫu cơ bản với ngôn ngữ lập trình JAVA
- Nắm được cách PTTK hệ thống theo kỹ thuật lập trình hướng đối tượng
- Đặt câu hỏi về kỹ thuật
- Đọc hiểu tài liệu thiết kế
- Kỹ thuật mô hình hoá sử dụng ngôn ngữ mô hình UML
NỘI DUNG KHÓA HỌC
- Nắm và áp dụng các khái niệm cơ bản trong hướng đối tượng như trừu tượng hóa, đối tượng và lớp, tính đóng gói, kế thừa, đa hình, interface, package cũng như các mối quan hệ kết hợp, phụ thuộc và tổng quát hóa. (OOP)
- Nắm và áp dụng các nguyên tắc thiết kế S.O.L.I.D trong lập trình hướng đối tượng (OOP)
- Nắm và áp dụng các quy trình phát triển phần mềm theo hướng đối tượng(phân tích, thiết kế, cài đặt) sử dụng ngôn ngữ mô hình UML bao gồm Usecase Diagram, Use Case Spec, Activity Diagram, Sequence Diagram, Class Diagram (OOAD)
- Có khả năng trình bày ý tưởng thiết kế bằng lược đồ lớp và cài đặt thiết kế bằng ngôn ngữ lập trình hướng đối tượng Java và cài đặt các tình huống kiểm thử (unit test) cho các class và phương thức của class. (OOAD)
- Nắm và áp dụng các mẫu thiết kế (Design Pattern) (OOAD)
- Mẫu tạo đối tượng như Factory Method, Abstract Factory, Builder, Prototype, Singleton
- Mẫu tổ chức dữ liệu như Adapter, Composite, Decorator, Bridge, Façade, Flyweight, Proxy
- Mẫu xử lý bao gồm Strategy, State, Observer, Template Method, Iterator, Command, Visitor, Mediator, Memento, Interpreter, Chain of Responsibility
- Kỹ thuật review code, refactor code, các quy ước viết code trong ngôn ngữ lập trình JAVA và các best practice và lesson learnt khi coding
ĐỐI TƯỢNG THAM GIA
- Kỹ sư phát triển phần mềm ngành Công Nghệ Thông Tin
- Kỹ sư phát triển phần mềm ngành Điện Tử, Cơ Điện Tử
PHƯƠNG PHÁP ĐÀO TẠO
- Thuyết giảng kiến thức về khóa học thông qua các ví dụ
- Thực hành Lab và làm Assignment trên lớp với các bài tập thực tế
- Giảng viên review góp ý và rút kinh nghiệm
CHI TIẾT KHÓA HỌC
Buổi(4 giờ) |
Nội dung bài học |
1 |
Lý thuyết: OOP & SOLID in JAVA
Lab 01 / Assignment 01Review 01 |
2 |
Lý thuyết: SE Process & UML
Lab 02 / Assignment 02Review 02 |
3 |
Lý thuyết: SE Process & UML (Cont.)
Lab 03 / Assignment 03Review 03 |
4 |
Lý thuyết: Unit Testing
Lab 04/ Assignment 04Review 04 |
5 |
Lý thuyết: Các mẫu thiết kế tạo đối tượng
Lab 05/ Assignment 05/ Review 05 |
6 |
Lý thuyết: Các mẫu thiết kế tổ chức dữ liệu
Lab 06/ Assignment 06/ Review 06 |
7 |
Lý thuyết: Các mẫu thiết kế tổ chức dữ liệu (cont.)
Lab 07/ Assignment 07/ Review 07 |
8 |
Lý thuyết: Nội dung Các mẫu thiết kế xử lý
Lab 08/ Assignment 08/ Review 08 |
9 |
Lý thuyết: Nội dung Các mẫu thiết kế xử lý (cont.)
Lab 09/ Assignment 09/ Review 09 |
10 |
Tổng kết khóa học, hỏi đáp và review bài lớn |
TÀI LIỆU KHÓA HỌC
- Java Design Pattern: <<Mã code vào lớp học google class>>