דפוסי עיצוב הם פתרונות מוכנים לשימוש למשימות תכנות שכיחות. זה לא כיתה או ספרייה שאפשר לחבר לפרויקט. זה משהו יותר. דפוסי עיצוב המתאימים לכל משימה מיושמים בכל מקרה ספציפי. כדאי לזכור שכאשר מיישמים אותו בצורה לא נכונה או למשימה לא מתאימה, דפוס עיצובי יכול ליצור המון בעיות. עם זאת, דפוס מיושם כהלכה יכול לעזור לך להשלים משימות בקלות ובפשטות.
סוגי דפוסים:
- יְצִירִי
- מִבנִי
- התנהגותי
יְצִירִי:
-
Singleton - מגביל את יצירת המחלקה למופע בודד ומספק גישה לאותו מופע בודד.
-
Factory - משמש כאשר יש לנו מחלקה על עם מספר תת מחלקות ועלינו להחזיר תת מחלקה על סמך קלט.
-
מפעל מופשט - משתמש במפעל על ליצירת מפעלים, שבהם אנו משתמשים לאחר מכן ליצירת אובייקטים.
-
Builder - משמש ליצירת אובייקטים מורכבים באמצעות אובייקטים פשוטים. הוא יוצר בהדרגה אובייקט גדול מחפץ קטן ופשוט.
-
אב טיפוס - עוזר לשפר את הביצועים בעת יצירת אובייקטים כפולים; במקום ליצור אובייקט חדש, הוא יוצר ומחזיר שיבוט של אובייקט קיים.
מִבנִי:
-
מתאם - ממיר בין שני אובייקטים שאינם תואמים. אנו יכולים להשתמש בדפוס המתאם כדי לשלב שני ממשקים לא תואמים.
-
Composite - משתמש במחלקה אחת כדי לייצג מבנה עץ.
-
פרוקסי - מספק את הפונקציונליות של מחלקה אחרת.
-
משקל זבוב - עושה שימוש חוזר באובייקטים במקום ליצור מספר רב של אובייקטים דומים.
-
Facade - מספק ממשק פשוט ללקוח, המשתמש בממשק כדי ליצור אינטראקציה עם המערכת.
-
Bridge - הופך מחלקות ספציפיות לבלתי תלויות במחלקות המטשמות ממשק.
-
דקורטור - מוסיף פונקציונליות חדשה לאובייקט קיים מבלי להיקשר למבנה שלו.
התנהגותי:
-
שיטת תבנית - מגדירה אלגוריתם בסיסי ומאפשרת לצאצאים לעקוף כמה שלבים של האלגוריתם מבלי לשנות את המבנה הכללי שלו.
-
מתווך - מספק מחלקה מתווך המטפלת בכל התקשורת בין מחלקות שונות.
-
שרשרת אחריות - מאפשרת להימנע מתלות קפדנית בין השולח למקבל הבקשה; יתרה מכך, הבקשה יכולה להיות מעובדת על ידי מספר אובייקטים.
-
Observer - מאפשר לאובייקט אחד לנטר ולהגיב לאירועים המתרחשים באובייקטים אחרים.
-
אסטרטגיה - מאפשרת לשנות אסטרטגיות (אלגוריתמים) בזמן הריצה.
-
Command - ממשק שמצהיר על שיטה לביצוע פעולה ספציפית.
-
מצב - מאפשר לאובייקט לשנות את התנהגותו בהתאם למצבו.
-
מבקר - משמש לפישוט פעולות על קבוצות של אובייקטים קשורים.
-
מתורגמן - מגדיר דקדוק לשפה פשוטה בתחום הבעיה.
-
איטרטור - ניגש ברצף לאלמנטים של אוסף מבלי לדעת את הצורה הבסיסית שלו.
-
Memento - משמש לאחסון מצב של אובייקט; ניתן לשחזר מצב זה מאוחר יותר.
|
קריאה נוספת: |
|---|
GO TO FULL VERSION