"حتما! اصل Open/Closed در برنامهنویسی به معنای این است که کد باید باز برای تغییرات در رفتار یا عملکرد، اما بسته برای تغییر در خودش باشد. یعنی برای افزودن ویژگیهای جدید، نباید کد موجود را تغییر دهید بلکه با اضافه کردن کد جدید، ویژگیهای جدید را به برنامه اضافه کنید. 🛠️
بیایید این مفهوم را با یک مثال PHP بیان کنیم. فرض کنید یک سیستم مدیریت مقالات دارید و میخواهید سئو مطالب را بهبود دهید. از اصل Open/Closed میتوانید برای این کار استفاده کنید. 👨💻
ابتدا، یک کلاس اصلی برای مقالات ایجاد کنید:
حالا، برای اعمال سئو، یک کلاس جدیدی ایجاد کنید که این کار را برای ما انجام دهد:
از این طریق، با ایجاد کلاس جدید `SeoArticle` که از `Article` ارثبری میکند و رابط `SeoFriendly` را پیادهسازی میکند، قابلیت سئو را به مقالات خود اضافه کردهایم بدون این که کد موجود را تغییر دهیم.
حالا برای استفاده:
با این رویکرد، شما قادرید ویژگیهای جدید مانند سئو را به مقالات خود اضافه کنید بدون این که به کد اصلی دست بزنید، که این اصل Open/Closed را رعایت میکند و قابلیت توسعه و افزودن ویژگیهای جدید را بدون تغییر در کد موجود فراهم میکند. 🚀"
اصل باز و بسته بودن OCP (Open/Closed Principle)
همچنین بخوانید...
- راه اندازی فروشگاه اینترنتی بدون کد نویسی
- راهنمای شروع برنامهنویسی وب
- دیزاین پترن فکتوری بیلدر Factory Builder یا فکتوری متد Factory Method
- برنامه نویسی رو چطور شروع کنم؟
- آنتی دیزاین پترنها: توقف در مسیر توسعه نرمافزار
- دیزان پترن چیست؟
- آیا هوش مصنوعی یا AI جایگزین برنامه نویسان میشود ؟
- نقش الگوریتمها و فلوچارتها در برنامهنویسی: ابزارهای اساسی برای حل مسائل و طراحی بهینه برنامهها
- اصل وارونگی وابستگی Dependency Inversion Principle (DIP)
- اصل جداسازی اینتفرفیس یا ISP (Interface Segregation Principle)
- اصل جایگزینی LSP (Liskov Substitution Principle)
- اصل باز و بسته بودن OCP (Open/Closed Principle)
- اصلی تک مسولیتی یا SRP (Single Responsibility Principle)
- اصول SOLID چیست؟
دیدگاه خود را بنویسید