ویرگول
ورودثبت نام
فرشید عزیزی
فرشید عزیزیSoftware Engineer
فرشید عزیزی
فرشید عزیزی
خواندن ۲ دقیقه·۴ سال پیش

اصول طراحی نرم افزار Software Design Principles

همانطور که روند نوشتن نرم افزار از قلمرو نظری به یک رشته مهندسی واقعی تبدیل شده است، تعدادی از اصول ظهور کرده اند. و وقتی می‌گویم اصل، به ویژگی کد اشاره می‌کنم که به حفظ ارزش آن کد کمک می‌کند.

اصول طراحی نرم افزار

  • Solid Principles: Principles for better OOP
  • Kiss: keep it simple, stupid
  • DRY: don’t repeat yourself
  • YAGNI: You aren’t gonna need it

اصول SOLID : اساساً 5 اصل است که به ایجاد یک معماری نرم افزاری خوب کمک می کند و ما را قادر
می سازند تا اکثر مشکلات طراحی نرم افزار را مدیریت کنیم. رابرت سی مارتین (معروف به عمو باب) این اصول را در دهه 1990 گردآوری کرد و به سرعت به یکی از اجزای اصلی طراحی مدرن شی گرا (OOP) تبدیل شد.

چرا باید از اصول طراحی SOLID استفاده کنید؟
به عنوان توسعه‌دهنده نرم‌افزار، تمایل طبیعی این است که فوراً توسعه برنامه‌ها را بر اساس تجربه و دانش عملی خود شروع کنید. با این حال، با گذشت زمان مشکلاتی در برنامه ایجاد می شود، سازگاری با تغییرات و ویژگی های جدید اتفاق می افتد. از آن زمان، به تدریج متوجه می شوید که برای یک چیز تلاش زیادی کرده اید: اصلاح برنامه !!!.

تغییرات یا ویژگی های جدید از بخش های اجتناب ناپذیر توسعه نرم افزار هستند. بنابراین، مشکل اصلی در اینجا چیست؟ پاسخ واضح را می توان از طراحی اپلیکیشن دریافت کرد.
تمیز نگه داشتن طراحی سیستم تا حد امکان یکی از موارد مهمی است که هر توسعه دهنده حرفه ای باید وقت خود را به آن اختصاص دهد. و اینجاست که اصول طراحی SOLID وارد عمل می شود.

رعایت اصول SOLID به برنامه نویسان کمک می کند تا کدهای قابل خواندن، قابل استفاده مجدد، قابل نگهداری و مقیاس پذیر بنویسند.

توضیح قابلیت نگهداری(Maintainability): نگهداری برای هر سازمانی حیاتی است تا کیفیت بالا را به عنوان یک استاندارد در توسعه نرم افزار حفظ کند. از آنجایی که تجارت در حال رشد بوده و بازار به تغییرات بیشتری نیاز دارد، طراحی نرم افزار باید به راحتی با تغییرات آتی سازگار شود.

توضیح انعطاف‌پذیری و مقیاس‌پذیری(Flexibility and scalability): انعطاف‌پذیری و مقیاس‌پذیری مهم‌ترین بخش‌های برنامه‌های کاربردی سازمانی هستند. در نتیجه، طراحی سیستم باید با هر به روز رسانی بعدی سازگار و قابل توسعه باشد تا ویژگی های جدید را به آرامی و کارآمد اضافه کند.
نکته : تمام الگوهای طراحی(Design Patterns) بر اساس این اصول هستند .

اصول SOLID اساسا مخفف عبارات زیر است:

  • S single responsibility principle (SRP)
  • O open closed principle (OCP)
  • L Liskov substitution principle (LSP)
  • I interface segregation principle (ISP)
  • D Dependency Inversion Principle (DIP)

(برای جرئیات بیشتر برروی هریک از موارد فوق کلیک نمائید)

بیشتر بخوانید : نقشه راه توسعه دهندگان Asp.NET Core

اصول solid
۱۸
۰
فرشید عزیزی
فرشید عزیزی
Software Engineer
شاید از این پست‌ها خوشتان بیاید