30/09/2018, 21:50

Tính đa hình được ứng dụng thực tế như thế nào trong PHP?

Mình đang đọc về tính đa hình trong OOP của PHP cho mình hỏi tính đa hình được ứng dụng thực tế như thế nào không ? Thanks !!

Ngô Doãn Tuấn viết 23:59 ngày 30/09/2018

Nếu có một việc chung mục đích nhưng cách thực hiện có chút khác nhau hoặc các thông tin về mặt cơ bản có điểm chung cần được sử dụng mà không cần cài đặt nhiều lần trong một chương trình thì sẽ sử dụng đa hình !

  • Ví dụ 1 :
    Bài toán yêu cầu tính diện tích của mấy loại hình.
    Có một lớp đa hình là tính diện tích. Nhưng lại có nhiều công thức tính khác nhau với từng hình . Ta có thể sử dụng đa hình ở đây
  • Ví dụ kinh điển 2 :
    Thông tin của một người có những điểm chung : id, name, age, address, number , sex …
    Tùy vào từng đối tượng lại có thêm nhưng thông tin khác biệt nhau khi đó ta sử dụng đa hình để cài đặt những đặc điểm chung kia một lần rồi sử dụng !

Đó là ý hiểu của mình có gì thì mọi người góp ý nhé !

Nguyen Ca viết 23:52 ngày 30/09/2018

Ví dụ kinh điển 2 : Thông tin của một người có những điểm chung : id, name, age, address, number , sex … Tùy vào từng đối tượng lại có thêm nhưng thông tin khác biệt nhau khi đó ta sử dụng đa hình để cài đặt những đặc điểm chung kia một lần rồi sử dụng !

Sai nhé, này gọi là inheritance

Ngô Doãn Tuấn viết 00:04 ngày 01/10/2018

À đúng rồi :#
Cái đó là kế thừa ! Em bị nhầm chỗ đó !
Bảo sao cứ thấy sai sai


Đa hình phải sau đó là các method thì mới dùng đa hình !
Thanks bác nhé !

Hà Anh Sơn viết 00:02 ngày 01/10/2018

Trong thực tế thì tính đa hình được sử dụng trong việc thiết kế Design Pattern của hệ thống, bạn có thể tìm hiểu về một số design pattern như Factory, Singleton… sẽ thấy ứng dụng của việc sử dụng tính đa hình trong OOP

BigZero viết 00:01 ngày 01/10/2018

Chỉ dành trong DP thôi hả bác ?

Hà Anh Sơn viết 00:04 ngày 01/10/2018

Đó là cái mình thấy hữu dụng nhất, còn các bài cơ bản về tính đa hình cũng có khá nhiều, nhưng mà ko thực tế lắm, vì hầu hết developer hiện nay đều làm trên framework, nên ít khi phải sử dụng đến kiến thức về đa hình, chỉ khi phải build 1 fw riêng thì mọi người mới hay tìm hiểu sâu thêm để tự tạo hệ thống

BigZero viết 23:58 ngày 30/09/2018

Like bác .!

Bài liên quan
0