Design Patterns in PHP
نبدا بقى فى سلسلة ال Design Pattern
و نقول بسم الله الرحمن الرحيم
انهارده حقول تعريفه بس و هنمسك كل فترة نوع من ال Design Pattern و نتكلم عليه ليه استخدمه و امتى استخدمه و ازاى استخدمه
دول هيكونوا ال 3 حاجات اللى هنعتمد عليهم ف كل نوع نتعلمه
طيب هو ايه اصلا بقى ال Design Pattern دا ؟
بص يا سيدى احنا لما بنيجى نبنى المشروع ﻻزم كدا نستخدم الديزاين باترن و احنا بنكتب الكود هيسهل عليا جدا و ازاى اتحكم ف الكود و ال Debug و كدا
و حيسهل ع اى مبرمج يشتغل بعدى يفهم الكود بسهوله و الدنيا ماشية ازاى
و هتلاقى اى فريم ورك فى الدنيا بيستخدم الديزاين باترن فا انت لما تبدء تشتغل بى فريم ورك و تكتب الكود حتحتاج تكتب بى انواع من الديزاين باترن حسب اللى انت محتاجه سعتها
طب هما عملوا ليه يعنى ؟
عشان المشاكل اللى بتتكرر كتير فا هو يعتبر احسن طريقة لحل مشكلة معينة بتواجه المبرمج فا بقوا يخترعولها ديزاين باترن
Predictability:
تحكم ف الكود اسهل و Debug اسرع
Reduce Cost:
اقل تكلفة و جهد ف الكود و مش عك و كله ف بعضه كدا
Reusable
بقدر استخدم الكود فى اى مشروع تانى محتاج الكود دا و اعدل عليه برحتى بقى
Scalability
اقدر ازود Features برحتى انقص برحتى مش اروح اصلح حتى تضرب فى حتى و اقلب سمكرى عمال يمحر ف الكود و خلاص
لحد كده حلو و عرفنه شويه حاجات خفيفة نكمل بقى
ال Design patterns بتتقسم ل 3 اقسام
1- Creational Patterns:
دا بيسمح بانك تنشئ ال Object منغير ما تحدد نوع ال Class
فى انواع بتخليك تنشئ Object بسهولة
بتحط حدود مين ينشئ ال object و ازاى و امتى
ايه ياعم الكلام الغريب دا
خلاص خلاص مش ﻻزم ندخل ف تفاصيل دقيقة دلوقتى
المهم من انواعه
-Abstract Factory
-Builder
-Factory Method
-Prototype
-Singleton
2- Structural Patterns:
بيهتم بتركيبة ال classes و ال inheritance بدون دخول ف تفصيل دلوقتى
من انواعه
-Adapter
-Bridge
-Composite
-Decorator
-Facade
-Flyweight
-Proxy
3- Behavioral Patterns:
بيهتم بالتحديد بالتواصل و العلاقات بين ال Objects
من انواعه
-Chain of responsibility
-Command
-Interpreter
-Iterator
-Mediator
-Memento
-Null Object
-Observer
-State
-Strategy
-Template method
-Visitor
و فى حاجات تانية بقى مهم نعرفها زى
-Dependency injection
-Lazy loading
-Mock object
-Null object
-Object pool
-Servant
-Type tunnel
تقريبا كدا عرفنا شوية حاجات حلوة عن ايه هو ال Design Pattern
شير بقى لو استفدت اى حاجة من الكلام الكتير دا
و استنوا نبدء بقى المرة الجاية ناخد اول نوع و اعتقد حيكون Factory
المصدر بقى لو حد حابب يقرا تفاصيل اكتر
https://php.earth/doc/oop/
https://sourcemaking.com/
phptherightway.com/
و كتاب head first design patterns

تعليقات
إرسال تعليق