מידע כללי
אנטרופיה של תוכנה והתועלת בתיכון תוכנה. תכנות הצהרתי ואימפרטיבי. ריפקטורינג, בדיקות אוטומטיות ובדיקות יחידה, כפילי בדיקות, ועלות בדיקות. הפשטה, הרכבה, וחלוקה למודולים. צימוד ולכידות, עקרונות SOLID, תבניות תכן, גרף תלויות, והזרקת תלויות. שימוש חוזר בקוד, ירושה והרכבה. תכן מנשק תכנות יישומים ותיכון מונחה טסטים. שפות מוכוונות תחום פנימיות וחיצוניות, יצירת קוד אוטומטי. עקרונות פונקציונאליים בתיכון מונחה עצמים: המנעות ממצב משתנה, פונקציות טהורות, תיכון מונחה טיפוסים, טוטאליות ומונאדות. ארכיטקטורה של תוכנה, יישומי רשת וארכיטקטורת דגם- תצוגה-בקר.
פקולטה: מדעי המחשב
|תואר ראשון
|תארים מתקדמים
מקצועות קדם
ספרי המקצוע
- Design patterns : elements of reusable object-oriented software
- Domain-driven design : tackling complexity in the heart of software - Evans, Eric
- Domain-specific languages - Fowler, Martin
- Effective Java - Bloch, Joshua
- Extreme programming explained : embrace change - Beck, Kent
- Growing object-oriented software, guided by tests - Freeman, Steve
- Implementation patterns - Beck, Kent
- Refactoring : improving the design of existing code - Fowler, Martin
- Test-driven development : by example - Beck, Kent