Design Patterns & Refactoring Advanced Object Oriented Design

מק"ט: #3660 | משך קורס: 24 שעות אק'


Object Oriented Design הינה אומנות המבוססת על הבנה מעמיקה, יכולת אבסטרקציה גבוהה, סט כלים, מיומנויות והרבה ניסיון. השליטה ב OOD היא המפתח לפיתוח תוכנה יציבה וקלה לשינוים.
קורס זה סוקר את עקרונות ה-OOD (Design Principles) ומקנה הבנה מעמיקה ויכולת לזהות חלופות Design ולבחור ביניהן. הקורס הוא מעין "סיור בעולם ה OOD" תוך עצירה בתחנות ה Design Patterns. בכל תחנה מוצגת בעיה/סיטואציה ומתפתח דיון על ה Pattern, חלופות נוספות ומידת התאמתן.
הקורס הינו קורס מעשי. במסגרת התרגול בקורס תוצג מערכת פשוטה הכתובה רע והמשתתפים ישפרו את קוד המערכת (Refactoring) בעזרת ה Design Patterns שילמדו.
הקורס כולל מצגת מבוא ל Agile Software Development ו-Test Driven Development כגישות משלימות בתחום ה OOD.
 

הקורס מבוסס על הספרים:

  • "Design Patterns – Elements of Reusable object oriented Software"
  • " Refactoring to Patterns "
  • "Refactoring – Improving the Design of Existing Code"
הקורס פעיל לקבוצות מטעם ארגונים בלבד, ניתן לשלוח פנייה רק אם מדובר בקבוצה
*שדות חובה
PDF version

קהל יעד

מהנדסי תוכנה, המעוניינים בהבנה מעמיקה של עקרונות ה-OOD ו Design Patterns

מטרות

 

  • להקנות שליטה טובה ב OOD
  • לכתוב קוד נכון מבוסס Design Principles
  • להבין ולפתח קוד C#, C++אוJavaמבוססDesign Patterns
  • לקרא ולהבין Design Patternsחדשים
  • לתעד Designבעזרת UML

 

תנאי קדם

  • יכולת תכנות ב- ,C#C++ JAVA או

 

משך הקורס

משך הקורס הינו 24 שעות

נושאים

UML Diagrams

  • Class Diagrams
  • Sequence Diagrams

Design Principles

  • The Open-Closed Principle
  • The Liskov Substitution Principle & Design by Contract
  • Single Responsibility Principle (optional)
  • Dependency Inversion Principle (optional)

Design Patterns

  • Singleton
  • Proxy
  • Visitor
  • Acyclic Visitor (optional)
  • Template Method
  • Abstract Factory
  • Prototype
  • Command
  • Composite
  • Decorator
  • Strategy
  • Mediator (optional)
  • Observer (optional)

Software Design with Agile Methodologies

  • Overview of Agile Development
  • Introduction to Test Driven Development
  • Refactoring – Overview & demonstrations
  • Agile Development demonstration 
תגיות