Trong thực tế, một sự vật có những thuộc tính và hành vi nhất định tạo ra sự đặc trưng của nó. Ví dụ thỏ thì chạy nhanh, còn rùa thì chạy chậm. Hổ thì có vằn đen trong khi sư tử thì có bờm trên đầu. Xe đạp thì có hai bánh còn ô tô thì có 4 bánh, vv…
Khi đưa những khái niệm này vào trong lập trình bằng cách sử dụng lý thuyết hướng đối tượng, chúng ta sẽ thấy mỗi sự vật chính là một đối tượng. Khi đó, trong thế giới lập trình, mọi thứ đều là đối tượng. Đối tượng xe đạp thì có thuộc tính hai bánh, có thể di chuyển trên làn đường dành cho xe đạp, trong khi đối tượng ô tô thì có thuộc tính bốn bánh và thuộc tính động cơ, có thể di chuyển trên đường cao tốc.
Chúng ta còn có thể liên tưởng các mối quan hệ trong thế giới thực vào trong lập trình. Ví dụ như rắn và cá sấu đều thuộc loài bò sát, là những động vật biến nhiệt. Thì trong lập trình hướng đối tượng, chúng ta có thể tạo ra lớp Bò Sát, có thuộc tính là “biến nhiệt” và “đẻ trứng”. Từ đó, chúng ta có lớp Rắn và lớp Cá Sấu đều kế thừa lớp Bò Sát này. Cách kế thừa này trong lập trình giúp chúng ta giảm được việc lặp đi lặp lại định nghĩa “biến nhiệt” và “đẻ trứng” cho tất cả các loài bò sát. Khi đó với lớp Rắn, chúng ta chỉ cần định nghĩa thuộc tính “không có chân” và hành vi “trườn”, trong khi với Cá Sấu thì có “bốn chân” và hành vi “bò”.
Để hiểu rõ hơn về lập trình hướng đối tượng, hãy cùng điểm qua những kiến thức quan trọng và những lỗi đáng lưu ý đã được học trong buổi trước.
Sau khi học xong lý thuyết lập trình hướng đối tượng này, chúng mình có thể biến bất cứ đối tượng (sự vật) nào trong thực tế thành một đối tượng trong lập trình. Và cũng đừng quên là thêm thuộc tính “biết lập trình” vào đối tượng “bản thân” các em nhé!
Người viết: Thầy Ken Nguyễn
— — —
STEAM for Vietnam Foundation là tổ chức phi lợi nhuận 501(c)(3) được thành lập tại Hoa Kỳ với sứ mệnh thúc đẩy các hoạt động liên quan tới giáo dục STEAM (Science — Khoa học, Technology — Công nghệ, Engineering — Kỹ thuật, Arts — Nghệ thuật, Mathematics — Toán học) tại Việt nam. STEAM for Vietnam được thành lập và vận hành bởi đội ngũ tình nguyện viên là du học sinh và chuyên gia người Việt trên khắp thế giới.
— — —
📧Email: hello@steamforvietnam.org
🌐Website: www.steamforvietnam.org
🌐Fanpage: STEAM for Vietnam
📺YouTube: http://bit.ly/S4V_YT
🌐Zalo: Zalo Official