דלג לתוכן הראשי
שכבת הפשטה ארכיטקטורת תוכנה בעברית

ארכיון

מאמרים

40 מאמרים על תבניות עיצוב, עקרונות תכנון וארכיטקטורת תוכנה, מהחדש לישן.

רשימת המאמרים

מיקרו־שירותים

תבנית Circuit Breaker: איך שירות אחד שנופל לא מפיל את כולם — circuit breaker design pattern במיקרו־שירותים

כאשר מערכת בנויה ממיקרו־שירותים, נפילה של שירות אחד היא לא אירוע מקומי בלבד. קריאה איטית לשירות תשלומים, קטלוג או הרשאות יכולה להחזיק חיבורים, לחסום threads, להגדיל תורים, ולהפוך תקלה קטנה…

9 דק׳ קריאה

תכנון מונחה עצמים

כימוס בתכנון מונחה עצמים: להסתיר החלטות, לא רק שדות

כימוס הוא אחד הרעיונות הכי מצוטטים בתכנון מונחה עצמים, ובכל זאת הוא מצטמצם לעיתים קרובות מדי ל“שדות פרטיים וגטרים ציבוריים”. זו גרסה חלשה מאוד של הרעיון. אם מחלקה מסתירה את…

10 דק׳ קריאה

עקרונות SOLID

היפוך תלויות והזרקת תלויות: ההבדל החשוב בין העיקרון, הטכניקה והקונטיינר

היפוך תלויות והזרקת תלויות נזרקים לא פעם לאותו משפט, כאילו מדובר באותו דבר. בפועל אלה שלוש שכבות שונות של אותה שיחה: עיקרון תכנוני, טכניקה למימוש, ומנגנון תשתיתי שמנהל יצירת אובייקטים…

9 דק׳ קריאה

תבניות התנהגות

תבנית Template Method: שלד אלגוריתם יציב עם צעדים גמישים — template method design pattern

תבנית Template Method, או בשם החיפוש הנפוץ template method design pattern, היא אחת מתבניות ההתנהגות החשובות בתכנות מונחה־עצמים. הרעיון פשוט אך חזק: מחלקת־אב מגדירה את שלד האלגוריתם, כלומר את סדר…

11 דק׳ קריאה

תבניות מבנה

facade design pattern: תבנית Facade שמפשטת תת־מערכת מסובכת — ומתי היא מסתירה יותר מדי

תבנית facade design pattern נועדה לפתור בעיה מוכרת בתכנון מונחה־עצמים: לקוח פשוט צריך לבצע פעולה עסקית אחת, אבל בפועל הוא נאלץ להכיר חמש מחלקות, סדר קריאות רגיש, חריגות פנימיות ופרטי…

10 דק׳ קריאה

תבניות יצירה

singleton design pattern: תבנית Singleton, מימוש נכון, בטיחות בין חוטים, ולמה רבים רואים בה אנטי־תבנית

תבנית singleton design pattern נראית פשוטה: מחלקה אחת, מופע אחד, נקודת גישה אחת. דווקא בגלל הפשטות הזאת היא אחת מתבניות היצירה שהכי קל לממש לא נכון. מימוש נאיבי עלול להישבר…

8 דק׳ קריאה

מבוא לתבניות עיצוב

איך בוחרים תבנית עיצוב בלי להתאהב בפתרון: טבלת החלטה מעשית למפתחי תוכנה

תבנית עיצוב טובה לא מתחילה בשם יפה כמו Factory Method, Decorator או Observer. היא מתחילה באי־נוחות בקוד: מחלקה שתופחת, שינוי קטן שגורר תיקונים בחמישה מקומות, תלות שקשה לבדוק, או מודול…

9 דק׳ קריאה