روی خط زندگی

گشت و گذار من در هنر نرم افزار

روی خط زندگی

گشت و گذار من در هنر نرم افزار

مباحث فلسفی در توسعه نرم افزار - 1

شنبه, ۹ خرداد ۱۳۹۴، ۰۷:۱۴ ب.ظ

Dry: don’t repeat yourself

خودتان را تکرار نکنید! و این یعنی همان Reusability. یعنی برنامه را طوری بنویسید که قطعات مختلف آن را بتوانید باز فراخوانی کنید. به صورت ساده یعنی، اگر یک قطعه کد نوشته اید که مثلا محاسبه معدل دانش آموزان را انجام می داد و در جای دیگری از برنامه، مجددا به محاسبه معدل نیاز داشتید، قطعه کد را کپی نکنید، بلکه آن را در یک تابع قرار دهید و در هر دو جا آن را فراخوانی کنید.


YAGNI: you ain’t gonna need it

تا زمانی که لازم نشده ایجادش نکن. و این یعنی «مشکلات فردا را همان فردا حل خواهیم کرد، امروز به مشکلات امروز بپردازیم». در واقع تا زمانی که به وجود یک قابلیت نیازی نیست آن را پیاده سازی نکنیم. ممکن است که بگویید «خوب شاید بعدا لازم بشه»، یا «فردا لازمش دارم»، اما تجربه نشان داده که نرم افزار ها پر است از کد هایی که در هیچ جا استفاده نشده اند و این یعنی کاهش خوانایی برنامه و افزایش پیچیدگی کد.


KISS: keep it simple, stupid

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


لیست کامل این مباحث فلسفی را می توانید در اینجا ببینید:

List_of_software_development_philosophies


موافقین ۱ مخالفین ۰ ۹۴/۰۳/۰۹
حسین گویا

نظرات  (۱)

بسیار عالی و در حین حال ساده شرح دادید کاش ادامه میدادید

ارسال نظر

ارسال نظر آزاد است، اما اگر قبلا در بیان ثبت نام کرده اید می توانید ابتدا وارد شوید.
شما میتوانید از این تگهای html استفاده کنید:
<b> یا <strong>، <em> یا <i>، <u>، <strike> یا <s>، <sup>، <sub>، <blockquote>، <code>، <pre>، <hr>، <br>، <p>، <a href="" title="">، <span style="">، <div align="">
تجدید کد امنیتی