עקרון פתיחות/סגירות

בתכנות מונחה-עצמים, עקרון פתיחות/סגירות (באנגלית: Open/Closed Principle ובקיצור OCP) הוא עיקרון בעיצוב תוכנה, הקובע כי על רכיב תוכנה להיות "פתוח" ו"סגור" בכל רגע נתון. כלומר, הרכיב צריך לאפשר את הרחבתו ("פתוח") ובה-בעת לא לאפשר שינויים בו, מלבד דרך ההרחבות ("סגור"). אם נרצה להרחיב את הרכיב בפונקציונליות נוספת, נוכל לעשות זאת ללא שום שינוי ברכיב עצמו. שמירה על עיקרון זה מבטיחה פיתוח יעיל הלוקח בחשבון תוספות עתידיות.

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

ראו גם
SOLID (עיצוב מונחה עצמים)

תכנות
תכנות מונחה-עצמים
הנדסת תוכנה