Presentation is loading. Please wait.

Presentation is loading. Please wait.

אביב תשס " ה JCT תיכון תוכנה ד " ר ר ' גלנט / י ' לויאןכל הזכויות שמורות 1 פרק 10 Packages.

Similar presentations


Presentation on theme: "אביב תשס " ה JCT תיכון תוכנה ד " ר ר ' גלנט / י ' לויאןכל הזכויות שמורות 1 פרק 10 Packages."— Presentation transcript:

1 אביב תשס " ה JCT תיכון תוכנה ד " ר ר ' גלנט / י ' לויאןכל הזכויות שמורות 1 פרק 10 Packages

2 אביב תשס " ה JCT תיכון תוכנה ד " ר ר ' גלנט / י ' לויאןכל הזכויות שמורות 2 כללי תיכון למחלקות Open Closed Principle. (OPC) Liskov Substitution Principle. (LSP) Dependency Inversion Principle. (DIP) The Interface Segregation Principle. (ISP )

3 אביב תשס " ה JCT תיכון תוכנה ד " ר ר ' גלנט / י ' לויאןכל הזכויות שמורות 3 מה זה Package ? מנגנון כללי לארגן אלמנטים בקבוצות –Classes, Diagrams, Components, Types, Development phases, etc. אפשרות של היררכי –Packages בתוך Packages – אפשר להציג מערכת כ Package היחיד ברמה הכי גבוה הכולל כל האלמנטים של המערכת בתוכה

4 אביב תשס " ה JCT תיכון תוכנה ד " ר ר ' גלנט / י ' לויאןכל הזכויות שמורות 4 דוגמא של שימוש מורחב של Packages Bruce Douglass

5 אביב תשס " ה JCT תיכון תוכנה ד " ר ר ' גלנט / י ' לויאןכל הזכויות שמורות 5 דוגמא Radio

6 אביב תשס " ה JCT תיכון תוכנה ד " ר ר ' גלנט / י ' לויאןכל הזכויות שמורות 6 radioPkg OMD

7 אביב תשס " ה JCT תיכון תוכנה ד " ר ר ' גלנט / י ' לויאןכל הזכויות שמורות 7 hardwarePkg OMD

8 אביב תשס " ה JCT תיכון תוכנה ד " ר ר ' גלנט / י ' לויאןכל הזכויות שמורות 8 ארכיטקטורה של Packages Domain Diagram OMD

9 אביב תשס " ה JCT תיכון תוכנה ד " ר ר ' גלנט / י ' לויאןכל הזכויות שמורות 9 יש לפחות מחלקה אחת ב DependentPackage עם תלות (association, aggregation, composition, composite, inheritance, dependency) על לפחות מחלקה אחת ב Package תלות בין Packages (Package Dependencies)

10 אביב תשס " ה JCT תיכון תוכנה ד " ר ר ' גלנט / י ' לויאןכל הזכויות שמורות 10 Package Design Principles (1) The Reuse/Release Equivalence Principle (REP). The Common Reuse Principle (CRP) The Common Closure Principle (CCP) The Acyclic Dependencies Principle (ADP)

11 אביב תשס " ה JCT תיכון תוכנה ד " ר ר ' גלנט / י ' לויאןכל הזכויות שמורות 11 Package Design Principles (2) 1. The Reuse/Release Equivalence Principle (REP). THE GRANULE OF REUSE IS THE GRANULE OF RELEASE. ONLY COMPONENTS THAT ARE RELEASED THROUGH A TRACKING SYSTEM CAN BE EFFECTIVELY REUSED. THIS GRANULE IS THE PACKAGE. Package הוא היחידה הקטנה ביותר תחת ניהול תצורה (configuration management). אסור לשחרר רק חלק מ Package. 2. The Common Reuse Principle (CRP) THE CLASSES IN A PACKAGE ARE REUSED TOGETHER. IF YOU REUSE ONE OF THE CLASSES IN A PACKAGE, YOU REUSE THEM ALL. לכן משתמשים בכל המחלקות של ה Package ולא רק בחלק מהם). לדוגמא, אסור לקחת חלק מהמחלקות מ גירסא 1.1 והיתר מגירסא 1.2

12 אביב תשס " ה JCT תיכון תוכנה ד " ר ר ' גלנט / י ' לויאןכל הזכויות שמורות 12 Package Design Principles (3) 3. The Common Closure Principle (CCP) THE CLASSES IN A PACKAGE SHOULD BE CLOSED TOGETHER AGAINST THE SAME KINDS OF CHANGES. A CHANGE THAT AFFECTS A PACKAGE AFFECTS ALL THE CLASSES IN THAT PACKAGE. צרייך לקבץ באותו Package מחלקות המושפעות מאותו סוג של שינוים. 4. The Acyclic Dependencies Principle (ADP) THE DEPENDENCY STRUCTURE BETWEEN PACKAGES MUST BE A DIRECTED ACYCLIC GRAPH (DAG). THAT IS, THERE MUST BE NO CYCLES IN THE DEPENDENCY STRUCTURE. אסור שיהיה מעגל של תלויות בין Packages

13 אביב תשס " ה JCT תיכון תוכנה ד " ר ר ' גלנט / י ' לויאןכל הזכויות שמורות 13 Package Design with Cyclic Dependencies

14 אביב תשס " ה JCT תיכון תוכנה ד " ר ר ' גלנט / י ' לויאןכל הזכויות שמורות 14 שיטה לשבור תלות מעגלית

15 אביב תשס " ה JCT תיכון תוכנה ד " ר ר ' גלנט / י ' לויאןכל הזכויות שמורות 15 Package Design with Acyclic Dependencies


Download ppt "אביב תשס " ה JCT תיכון תוכנה ד " ר ר ' גלנט / י ' לויאןכל הזכויות שמורות 1 פרק 10 Packages."

Similar presentations


Ads by Google