Lập trình hướng đối tượng
Xin chào các bạn!
Mục tiêu của môn học là giúp cho học viên hiểu được các khái niệm từ cơ bản đến nâng cao của ngôn ngữ lập trình Java. Sau khi hoàn thành khóa học này, bạn sẽ thấy mình ở mức độ chuyên môn vừa phải về Java, từ đó bạn có thể đưa mình lên các cấp độ tiếp theo. Môn học này là sự chuẩn bị và cũng là điều kiện để các bạn có thể học tiếp được các môn tiếp theo trong chương trình học tại FUNiX.
Phần đầu tiên, học viên sẽ được cung cấp các kiến thức lập trình cơ bản, viết chương trình Java đầu tiên và bổ sung các kiến thức lập trình nền tảng mà ngôn ngữ lập trình nào cũng có. Phần 2 giới thiệu về lập trình hướng đối tượng, hướng dẫn các khái niệm cơ bản trong lập trình hướng đối tượng như class, object, phạm vi sử dụng.
Phần tiếp theo sẽ hướng dẫn xây dựng phần mềm hướng đối tượng áp dụng các đặc trưng trong lập trình hướng đối tượng: tính kế thừa, tính trừu tượng, tính đóng gói và đa hình. Ngoài ra bổ sung thêm kỹ năng gỡ lỗi trong lập trình Java và một phần không thể thiếu trong lập trình Java nói riêng và lập trình nói chung khi xây dựng các phần mềm là kiểm thử đơn vị (Unit testing).
Phần 4 trong khóa học hướng dẫn học viên các kỹ năng lập trình nâng cao hơn xuất hiện trong các phiên bản mới của Java như Generics, Stream – Lambda, hướng dẫn sử dụng các công cụ, thư viện để đọc ghi dữ liệu từ tệp, thao tác với hệ thống thư mục và bổ sung kỹ năng xây dựng ứng dụng đa luồng và giải quyết các bài toán liên quan đến xung đột và đồng bộ hóa.
Chúc các bạn học tốt!
Sau khi học xong môn này, học viên sẽ đạt được các chuẩn kiến thức, kỹ năng đầu ra như sau:
- Hiểu các khái niệm về các chương trình hướng đối tượng để giải quyết các bài toán và vấn đề cơ bản của lập trình hướng đối tượng.
- Thực hành cú pháp và ngữ nghĩa ngôn ngữ Java cơ bản để viết chương trình Java và sử dụng các khái niệm như biến, phương thức thực thi có điều kiện và lặp lại.
- Dùng stream để đọc và viết dữ liệu từ/cho các kiểu khác nhau của nguồn/đích.
- Hiểu về lợi ích và việc sử dụng cơ chế xử lý ngoại lệ của Java.
- Xác định các class, các object, các member của class và các mối quan hệ giữa chúng cần thiết cho một vấn đề cụ thể.
- Giải thích khái niệm và chứng minh cách sử dụng tính đa hình, tính đóng gói, tính trừu tượng và tính kế thừa trong Java.
- Hiểu nguyên tắc và cách sử dụng các lớp trừu tượng và interface trong Java.
- Hiểu và triển khai mộ chương trình hoàn chỉnh bằng object array.
- Giải thích nguyên tắc và cách sử dụng của một vài kiểu dữ liệu trừu tượng (thuộc java collection) như list, set, map, ...
Tên môn học: Lập trình hướng đối tượng
Mã môn học: PRO192x_TX
Số tín chỉ: 3
Thời gian học: 84,8 giờ
Ngôn ngữ: Tiếng Việt
Để bắt đầu, các bạn nên dành một vài phút khám phá môn học và cấu trúc chung. Môn học sẽ có 4 phần với 18 bài học. Xuyên suốt các bài học và cuối mỗi học phần, các bài thực hành Lab và bài tập lớn (Project) sẽ giúp các bạn tăng cường việc ghi nhớ và vận dụng lý thuyết đã học vào các bài toán thực tế. Để việc học tập được hiệu quả, hãy luôn trau dồi kiến thức, không ngừng học hỏi, nghiên cứu và lập cho mình một kế hoạch học tập hợp lý để hoàn thành khóa học một cách xuất sắc.
Trong thời gian học (dự kiến là 6 tuần), việc phân bổ tuần học là rất quan trọng. Nếu các bạn có bất cứ câu hỏi nào hãy kết nối với Mentor để được giải đáp.
Phần 1: Lập trình Java cơ bản
- Bài 1: Cài đặt môi trường lập trình Java IntelliJ
- Bài 2: Kiểu dữ liệu
- Bài 3: Biến, Coding Convention, Scanner
- Bài 4: Câu điều kiện rẽ nhánh
- Bài 5: Hàm (Phương thức)
- Bài 6: Vòng lặp
- Bài 7: Mảng, ArrayList
- Assignment 1 - Ngân hàng số phiên bản v1.0.0
Phần 2: Làm quen với lập trình OOP
- Bài 8: Lớp và Đối tượng
- Bài 9: Tính kế thừa
- Bài 10: Tính đóng gói
- Assignment 2 - Ngân hàng số phiên bản v2.0.0
Phần 3: Xây dựng phần mềm với OOP
- Bài 11: Đa hình
- Bài 12: Trừu tượng
- Bài 13: Gỡ lỗi
- Assingment 3 - Ngân hàng số phiên bản v3.0.0
Phần 4: Lập trình Java nâng cao - Đa luồng - Đọc ghi dữ liệu
- Bài 14: Generics
- Bài 15: Java I/O và Exception
- Bài 16: File
- Bài 17: Luồng và xử lý tương tranh
- Bài 18: Lambda và Stream
- Project (Bài tập lớn) - Ngân hàng số phiên bản v4.0.0
THIẾT KẾ MÔN HỌC: Th.S Nguyễn Hải Nam

- Thạc sĩ Khoa học Máy tính, Đại học Cassino, Ý
- Head of xSeries Department, FUNiX
- Online profile: https://www.linkedin.com/in/hai-nam-nguyen-474587119/