inflearn logo

Bản chất của hướng đối tượng trong vòng 30 phút

Nhiều nhà phát triển nói rằng họ đã học về hướng đối tượng. Nhưng thực tế, đa số trường hợp chỉ dừng lại ở việc biết "cú pháp" về lớp (class), kế thừa (inheritance) và đa hình (polymorphism). Khóa học này không phải là bài giảng giải thích về cú pháp. ✔ Tại sao lập trình hướng đối tượng lại ra đời? ✔ Đối tượng là gì và tại sao "trách nhiệm" lại quan trọng? ✔ Tại sao tính đa hình lại tạo ra cấu trúc có thể mở rộng? ✔ Lập trình hướng đối tượng kết nối với khoa học máy tính như thế nào? Tôi sẽ đúc kết "tư duy hướng đối tượng thực thụ" mà tôi đã trải nghiệm trực tiếp qua việc thiết kế hệ thống chỉ trong vòng 30 phút. Thông qua khóa học này, Bạn sẽ hiểu về hướng đối tượng không phải như một "phong cách lập trình", mà là một "chiến lược thiết kế để kiểm soát độ phức tạp".

(4.2) 5 đánh giá

125 học viên

Độ khó Nhập môn

Thời gian Không giới hạn

oop
oop
Interview
Interview
software-design
software-design
solid
solid
Software Engineering
Software Engineering
oop
oop
Interview
Interview
software-design
software-design
solid
solid
Software Engineering
Software Engineering
Thumbnail

Bạn sẽ nhận được điều này sau khi học.

  • Bạn sẽ hiểu hướng đối tượng không phải là "ngữ pháp" mà là "tư duy thiết kế".

  • Bạn sẽ có thể phân biệt rõ ràng sự khác biệt giữa kế thừa và tổng hợp.

  • Bạn sẽ có thể giải thích tại sao tính đa hình lại tạo ra khả năng mở rộng.

  • Bạn sẽ hiểu được sự cần thiết của việc thiết kế dựa trên giao diện (interface).

  • Bạn sẽ có thể giải thích tại sao hướng đối tượng lại là một chiến lược kiểm soát độ phức tạp.

Bản chất của hướng đối tượng trong vòng 30 phút

Tổng hợp hoàn chỉnh về OOP - Học bằng triết lý thiết kế thay vì cú pháp

Bạn nghĩ rằng mình đã học về hướng đối tượng,
nhưng khi thực sự bắt tay vào thiết kế mã nguồn, bạn có gặp phải những trăn trở này không?

  • Khi nào nên sử dụng kế thừa và khi nào nên sử dụng tổng hợp (composition)?

  • Đã học thuộc lòng SOLID rồi nhưng tại sao vẫn không áp dụng được vào thực tế?

  • Tại sao tính đa hình lại tạo ra khả năng mở rộng?

  • Tại sao hướng đối tượng lại quan trọng đến vậy trong các buổi phỏng vấn?

Nhiều nhà phát triển biết về cú pháp hướng đối tượng, nhưng
lại không thực sự hiểu tại sao phải thiết kế như vậy.

Khóa học này không phải là bài giảng giải thích về cú pháp.
Đây là bài giảng để thấu hiểu bản chất của hướng đối tượng.



Lập trình hướng đối tượng không phải là một kỹ thuật, mà là một “chiến lược kiểm soát độ phức tạp”

Hướng đối tượng không đơn thuần là một phong cách lập trình.
Hướng đối tượng là một chiến lược để xử lý độ phức tạp trong thiết kế phần mềm.

Trong khóa học này, chúng ta sẽ tìm hiểu về các nội dung sau:

  • Tại sao đối tượng lại được cấu tạo từ trạng thái + hành vi + trách nhiệm?

  • Tại sao đối tượng nên được thiết kế dựa trên thông điệp?

  • Tại sao tính đa hình lại tạo ra cấu trúc có thể mở rộng?

  • Lập trình hướng đối tượng có mối quan hệ như thế nào với ADT (Kiểu dữ liệu trừu tượng)?

  • Tại sao nguyên tắc SOLID lại được coi trọng trong kỹ thuật phần mềm?

Nếu hiểu lập trình hướng đối tượng dưới góc độ thiết kế phần mềm,
tầm nhìn của bạn đối với mã nguồn sẽ hoàn toàn thay đổi.


Đặc biệt đề xuất cho những đối tượng sau đây

  • Những người đã học về hướng đối tượng nhưng vẫn đang viết code theo "cảm tính"

  • Những người muốn hiểu về thiết kế phần mềm một cách hệ thống

  • Những người muốn hiểu rõ lý do tại sao SOLID lại cần thiết

  • Những người lo sợ các câu hỏi về hướng đối tượng trong phỏng vấn phát triển phần mềm

  • Những người muốn tạo ra cấu trúc dễ bảo trì trong thực tế công việc.

Đặc biệt, tôi thực sự khuyên dùng khóa học này cho những ai muốn trả lời câu hỏi
“Lập trình hướng đối tượng là gì?”
dưới góc nhìn triết học và thiết kế trong các buổi phỏng vấn phát triển phần mềm.


Những gì bạn sẽ nhận được từ khóa học này

  • Bạn sẽ có thể giải thích về hướng đối tượng như một "triết lý thiết kế" thay vì chỉ là "cú pháp".

  • Bạn sẽ hiểu rõ sự khác biệt giữa kế thừa và tổng hợp.

  • Bạn sẽ có thể giải thích được sự cần thiết của thiết kế dựa trên trừu tượng hóa và interface.

  • Bạn sẽ hiểu các nguyên tắc SOLID theo ngữ cảnh thay vì chỉ học thuộc lòng.

  • Bạn sẽ có thể giải thích tại sao hướng đối tượng lại là một chiến lược để kiểm soát độ phức tạp.


Cấu trúc bài giảng

  • Bài 1: Tại sao lập trình hướng đối tượng lại ra đời — Tư duy tập trung vào trách nhiệm và thông điệp

  • Bài 2: Đóng gói, Kế thừa vs Tổng hợp, Đa hình — Bản chất của cơ chế

  • Bài 3: Trừu tượng hóa, ADT, SOLID — Hoàn thiện dưới góc nhìn Khoa học máy tính

Dù chỉ là 30 phút ngắn ngủi,
tôi sẽ tóm tắt chính xác những cốt lõi của lập trình hướng đối tượng cho bạn.


Khuyến nghị cho
những người này

Khóa học này dành cho ai?

  • Những lập trình viên đã học về hướng đối tượng nhưng vẫn viết code theo "cảm tính"

  • Những người đang phân vân không biết khi nào nên sử dụng kế thừa và khi nào nên sử dụng tổng hợp (composition)

  • Dành cho những ai chưa hiểu tại sao cần đến SOLID

  • Sinh viên mới tốt nghiệp đang tìm việc sợ các câu hỏi về hướng đối tượng trong phỏng vấn thiết kế.

  • Nhà phát triển cảm thấy mình sử dụng class nhưng vẫn chưa hiểu rõ về lập trình hướng đối tượng.

Cần biết trước khi bắt đầu?

  • Sẽ rất tốt nếu bạn đã biết về khái niệm biến và hàm.

  • Nếu bạn đã từng có kinh nghiệm sử dụng Java, C++, Python dù chỉ một lần, bạn sẽ hiểu nhanh hơn.

  • Tuy nhiên, kiến thức về một ngôn ngữ cụ thể không phải là bắt buộc.

Xin chào
Đây là kmmom591

463

Học viên

40

Đánh giá

3

Trả lời

4.6

Xếp hạng

7

Các khóa học

Xin chào.
Tôi là nhà phát triển đang làm việc với tư cách là nhà nghiên cứu quốc phòng và phát triển phần mềm tại một doanh nghiệp công nghiệp quốc phòng.

Tôi tốt nghiệp chuyên ngành Khoa học máy tính tại trường đại học,
sau khi gia nhập công ty công nghiệp quốc phòng, tôi đã tham gia vào các dự án phát triển phần mềm quốc phòng thực tế.
Hiện tại, tôi đang phát triển các phần mềm liên kết với hệ thống vũ khí và hệ thống quốc phòng,
đồng thời thực hiện phát triển hệ thống dựa trên C++ và Java.

Thêm

Chương trình giảng dạy

Tất cả

3 bài giảng ∙ (21phút)

Ngày đăng: 
Cập nhật lần cuối: 

Đánh giá

Tất cả

5 đánh giá

4.2

5 đánh giá

  • joseph님의 프로필 이미지
    joseph

    Đánh giá 35

    Đánh giá trung bình 5.0

    5

    100% đã tham gia

    Tôi đã nghe rất kỹ về bản chất và triết lý của hướng đối tượng.

    • kmmom5916278
      Giảng viên

      Cảm ơn bạn vì những đánh giá khóa học quý giá này :)

  • jjhgwx님의 프로필 이미지
    jjhgwx

    Đánh giá 809

    Đánh giá trung bình 4.9

    5

    100% đã tham gia

    Cảm ơn bạn vì bài giảng hay!

    • kmmom5916278
      Giảng viên

      Cảm ơn bạn vì những đánh giá khóa học quý giá này :)

  • srnerne6923님의 프로필 이미지
    srnerne6923

    Đánh giá 2

    Đánh giá trung bình 5.0

    5

    100% đã tham gia

    • kmmom5916278
      Giảng viên

      Cảm ơn bạn vì những đánh giá quý giá :)

  • d2v210p님의 프로필 이미지
    d2v210p

    Đánh giá 76

    Đánh giá trung bình 4.7

    5

    100% đã tham gia

    • kmmom5916278
      Giảng viên

      Cảm ơn bạn vì những đánh giá khóa học quý giá này :)

  • von014918님의 프로필 이미지
    von014918

    Đánh giá 1

    Đánh giá trung bình 1.0

    Đã chỉnh sửa

    1

    100% đã tham gia

    Nội dung chỉ đề cập ngắn gọn về những kiến thức cơ bản của hướng đối tượng và nói về những điều hiển nhiên. Trong phần mô tả khóa học thì có vẻ như sẽ nói về điều gì đó cụ thể, nhưng thực tế nội dung bài giảng chẳng có gì đặc biệt... Tôi cảm thấy tiếc nuối khoảng thời gian 21 phút xem video cũng như thời gian bản thân đã bỏ ra để tìm kiếm và suy nghĩ nhằm đặt câu hỏi liên quan đến bài giảng.

    Khóa học khác của kmmom591

    Hãy khám phá các khóa học khác của giảng viên!

    Khóa học tương tự

    Khám phá các khóa học khác trong cùng lĩnh vực!

    Miễn phí