Computer >> คอมพิวเตอร์ >  >> การเขียนโปรแกรม >> PHP

อธิบายความแตกต่างระหว่าง Abstraction และ Encapsulation ใน PHP


PHP5 ได้เพิ่มวิธีการเขียนโปรแกรมเชิงวัตถุด้วยเวอร์ชันก่อนหน้า ซึ่งใช้สำหรับทำให้โค้ดนำกลับมาใช้ใหม่ได้ในแอปพลิเคชัน php แบบเรียลไทม์

แนวคิดบางประการของโมเดลเชิงวัตถุ ได้แก่ คลาส วัตถุ การห่อหุ้ม ความหลากหลาย คลาสนามธรรมและคลาสสุดท้าย และเมธอด ส่วนต่อประสานและการสืบทอด ฯลฯ...

เราจะพูดถึงความแตกต่างพื้นฐานระหว่างสิ่งที่เป็นนามธรรมและการห่อหุ้ม

การห่อหุ้ม:

  • Encapsulation เป็นแนวทางที่รวมสมาชิกข้อมูล (ตัวแปร) และรายละเอียดการใช้งานเข้าเป็นหน่วยเดียวที่เรียกว่าคลาสซึ่งบอกเป็นนัยถึงคลาสนั้นถูกสร้างขึ้นด้วยตัวแปรและเมธอดที่มีอยู่ภายในนั้น
  • การห่อหุ้มเป็นกลไกการป้องกันสำหรับสมาชิกข้อมูลที่อยู่ในคลาส นั่นคือผู้ใช้ปลายทางไม่สามารถเข้าถึงข้อมูลได้
  • ในการห่อหุ้ม คลาสอื่นจะไม่สามารถเข้าถึงสมาชิกข้อมูล (ตัวแปร) ของคลาสได้ และสามารถเข้าถึงได้ผ่านเมธอดของคลาสปัจจุบันเท่านั้น
  • การห่อหุ้มถูกใช้งานโดยใช้ตัวแก้ไขการเข้าถึงแบบส่วนตัวและได้รับการป้องกัน
  • การห่อหุ้มจะใช้เพื่อลดความซับซ้อนของเว็บแอปพลิเคชัน


มาคุยกันเรื่องนามธรรมกัน

นามธรรม:

  • โครงสร้างของการแสดงคุณสมบัติที่จำเป็นโดยไม่รวมรายละเอียดพื้นหลังถูกระบุเป็นนามธรรม
  • นามธรรมเป็นเทคนิคที่ครอบคลุมรายละเอียดการใช้งานจากผู้ใช้ปลายทางและแสดงเฉพาะฟังก์ชันต่อผู้ใช้เท่านั้น
  • สิ่งที่เป็นนามธรรมใช้เพื่อดำเนินการตามความคิดที่หลากหลายด้วยคลาส เช่น ด้วยสิ่งที่เป็นนามธรรม เราสามารถประกาศวิธีการภายในคลาสเท่านั้น โดยปกติ คลาสสืบทอดอื่นจะใช้เพื่ออธิบายวิธีการเดียวกัน
  • คลาสนามธรรมไม่สามารถสร้างอินสแตนซ์ได้ ดังนั้นผู้ใช้ปลายทางจึงไม่สามารถเข้าถึงได้โดยตรง
  • ใช้เพื่อลดความซับซ้อนของแอปพลิเคชันและทำให้โค้ดสามารถนำมาใช้ซ้ำได้ในแอปพลิเคชัน