1 / 13

Design Patterns

תבניות עיצוב. מגיש: אודי קנצוקר. Design Patterns. תבניות עיצוב, מה זה?. תכנות מונחה עצמים מתן פתרון לבעיות כלליות. שימוש חוזר, הרחבה, שינוי והבנה. שפה משותפת. תיאור התבנית: שם, תיאור הבעיה, פתרון והשלכות. הגדרות בסיסיות. מחלקה – מכילה נתונים ומתודות. אובייקט – המופע החיי של המחלקה

kin
Download Presentation

Design Patterns

An Image/Link below is provided (as is) to download presentation Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author. Content is provided to you AS IS for your information and personal use only. Download presentation by click this link. While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server. During download, if you can't get a presentation, the file might be deleted by the publisher.

E N D

Presentation Transcript


  1. תבניות עיצוב מגיש: אודי קנצוקר Design Patterns

  2. תבניות עיצוב, מה זה? • תכנות מונחה עצמים • מתן פתרון לבעיות כלליות. • שימוש חוזר, הרחבה, שינוי והבנה. • שפה משותפת. • תיאור התבנית: שם, תיאור הבעיה, פתרון והשלכות.

  3. הגדרות בסיסיות • מחלקה – מכילה נתונים ומתודות. • אובייקט – המופע החיי של המחלקה • ממשק – "חתימת האופרציה" • מחלקה אבסטרקטית – ממשק שיורשים ממנו • הרכבה של אוביקטים – חלק מ... • אגרגציה של אוביקטים – יש לו....

  4. UML הורשה מחלקה הרכבה אגרגציה j מחלקה אבסטרקטית

  5. מאיפיני התבנית • שם וסיווג – בעל משמעות. • מה עושה בפועל – עונה על תכלית, בעיות. • מוטיבציה – הדגמה של פתרון. • מתי כדאי – באילו מקרים, איך נזהה • תרשימים – UML, SD , TMO • משתתפים – מחלקות ואובייקטים • מימוש – מלכודות, רעיונות וטכניקות • שימושים ידועים – מקרים ידועים • תבניות קשורות - קשר והבדלים

  6. תבניות ידועות שהוגדרו סוג: התנהגותי, מבני, יצירה מרחב: מחלקה, אוביקט

  7. Singleton • תבנית יצירה. • מוודא שיהיה מופע אחד לאותו אוביקט. • מספק גישה גלובלית לאובייקט. • חיסרון: שימוש במשתנים סטטיים מושך אותנו מחוץ לעולם OO. • דוגמא: קישור לדאטה בייס.

  8. Singleton - מבנה • Singleton- מגדיר אופרציית instance שמקנה למשתמשים גישה למופע היחיד של האובייקט • משתמשים ניגשים למופע של Singleton אך ורק דרך אופרצית instance של Singleton.

  9. Strategy • תבנית מבניות • מאפשר לאלגוריתמים להשתנות. • מתאים למחלקות דומות אך שונות בהתנהגותן • האלגוריתם משתמש במידע שלא צריך להיות חשוף ללקוח.

  10. Strategy - מבנה Strategy - מגדיר ממשק משותף לכל האלגוריתמיםהנתמכים. ConcreteStrategy - מספק מימוש של האלגוריתמים אחדים.בהתאם לממשק Strategy Context - לקוח של ConcreteStrategyבזמן ריצה, ההתייחסות היא לאובייקט מסוג. Strategy

  11. Composite • תבנית מבנית • מרכיב אובייקטים למבני עץ שמייצגים את ההיררכיה של היחס. • מאפשר ללקוחות לטפל באובייקטים בודדים ובהרכבות באופן אחיד

  12. Composite - מבנה • Component- מגדיר את הממשק עבור אובייקטים בהרכבה.מממש את התנהגות ברירת המחדל עבור הפעולות המשותפות לכל המחלקות.מגדיר ממשק לגישה וניהול תתי העצים. • Leaf- מייצג אובייקט מסוג עלה בהרכבה. מגדיר את ההתנהגות של אובייקטים פרימיטיביים בהרכבה. • Composition- מגדיר את ההתנהגות של אובייקטים בעלי ילדים. שומר את הילדים ומממש את הפעולות הנגזרות מכך. • Client -מפעיל את האובייקטים בהרכבה תוך שימוש בממשק של Composition

  13. סיכום • תבניות עיצוב הן כלי אלמנטרי למהנדס ומפתח תוכנה • ישנם עוד הרבה תבניות שונות ופיתוחים של תבניות קיימות • בעזרת התבניות אנו בונים שלד טוב למערכת שלנו להמשך פיתוח.

More Related