این اصل به این معنی است که شما هرگز نباید برای عملکرد در فرصتی که ممکن است اصول کدنویسی در آینده به آن نیاز داشته باشید کدنویسی کنید. سعی نکنید مشکلی را که وجود ندارد حل کنید. در تلاش برای نوشتن کد DRY، برنامه نویسان می توانند این اصل را نقض کنند. اغلب برنامه نویسان بی تجربه سعی می کنند انتزاعی ترین و عمومی ترین کدی را که می توانند بنویسند. انتزاع بیش از حد باعث ایجاد کد متورم می شود که حفظ آن غیرممکن است.
فقط زمانی که نیاز دارید اصل DRY را اعمال کنید. اگر متوجه تکه هایی از کد می شوید که بارها و بارها نوشته شده است ، پس آنها را انتزاع کنید. زیاد به هزینه دسته کد فعلی خود فکر نکنید. دو دلیل اصلی برای تمرین YAGNI وجود دارد،
شما در زمان صرفه جویی می کنید زیرا از نوشتن کدهایی که معلوم می شود نیازی ندارید اجتناب می کنید. کد شما بهتر است زیرا از آلوده کردن آن با «حدسهایی» که کم و بیش اشتباه هستند، اجتناب میکنید، اما به هر حال به آن پایبند هستند.
- مسئولیت واحد
image.png
همانطور که شروع به نوشتن کد می کنید، در مدت زمان طولانی، کد شما دست اصول کدنویسی و پا چلفتی می شود. کلاسها/ماژولهایی خواهید داشت که چندین عملکرد را انجام می دهند. این به کلاس هایی ختم می شود که صدها و هزاران خط کد هستند. این اصل می گوید که هر کلاس یا ماژول در یک برنامه فقط باید عملکرد خاصی داشته باشد. به عبارت دیگر، یک کلاس یا ماژول در یک برنامه فقط باید مسئول وظایف مربوط به یک تابع خاص باشد. این به شما کمک می کند مدول خود را حفظ کنید حداقل و تمیز است هر دو اصل مسئولیت باز/بسته و مسئولیت واحد تحت اصل SOLID است. در این مقاله، @Francesco Ciulla به طرز شگفت انگیزی در مورد هر اصل در SOLID توضیح داده است.
- کد خود را مستند کنید
هر توسعه دهنده ارشد بر اهمیت مستندسازی کد شما با نظرات مناسب تاکید می کند. همه زبان ها آنها را ارائه می دهند و ایرانیان سایبر شما باید نوشتن آنها را به یک عادت تبدیل کنید. نظرات را برای توضیح اشیاء، بهبود تعاریف متغیرها و آسانتر کردن درک عملکردها بگذارید. 8. تفکیک دغدغه ها اصل تفکیک نگرانی ها نسخه ای انتزاعی از اصل مسئولیت واحد است. این ایده بیان می کند که یک برنامه باید با کانتینرهای مختلف طراحی شود و این کانتینرها نباید به یکدیگر دسترسی داشته باشند. یک مثال شناخته شده در این مورد، طراحی مدل-نما-کنترلر (MVC) است. MVC یک برنامه را به سه قسمت مجزا تقسیم می کند: داده ها (مدل) ، منطق (کنترل کننده) و آنچه صفحه نمایش می دهد (نمای). تغییرات MVC در محبوب ترین چارچوب های وب اصول کدنویسی امروزی رایج است.
به عنوان مثال ، کدی که پایگاه داده را کنترل می کند نیازی به نحوه ارائه داده ها در مرورگر ندارد. کد رندر ورودی را از کاربر می گیرد، اما کد منطقی پردازش را مدیریت می کند. هر قطعه کد کاملا مستقل است.
نتیجه کدی است که اشکال زدایی آن آسان است. اگر زمانی نیاز به بازنویسی کد رندر داشتید، میتوانید این کار را بدون نگرانی در مورد نحوه اصول کدنویسی ذخیره دادهها یا پردازش منطق انجام دهید.
- Refactor
image.png
پذیرش آن سخت است، اما کد شما در اولین بار کامل نخواهد بود. Refactoring کد به این معنی است که کد خود را بررسی کرده و به دنبال راه هایی برای بهینه سازی آن باشید. آن را کارآمدتر کنید و نتایج را دقیقاً یکسان نگه دارید. پایگاه های کد به طور مداوم در حال تکامل هستند. بازدید مجدد، بازنویسی یا حتی طراحی مجدد کل تکه های کد کاملاً طبیعی است. این بدان معنا نیست که اولین باری که برنامه خود را نوشتید موفق نشدید. به مرور زمان با یک پروژه بیشتر آشنا خواهید شد. اصول کدنویسی از این دانش برای تنظیم کد موجود خود برای خشک بودن قواعد کدنویسی یا پیروی از اصل KISS استفاده کنید.
این اصل به این معنی است که شما هرگز نباید برای عملکرد در فرصتی که ممکن است اصول کدنویسی در آینده به آن نیاز داشته باشید کدنویسی کنید. سعی نکنید مشکلی را که وجود ندارد حل کنید. در تلاش برای نوشتن کد DRY، برنامه نویسان می توانند این اصل را نقض کنند. اغلب برنامه نویسان بی تجربه سعی می کنند انتزاعی ترین و عمومی ترین کدی را که می توانند بنویسند. انتزاع بیش از حد باعث ایجاد کد متورم می شود که حفظ آن غیرممکن است.
فقط زمانی که نیاز دارید اصل DRY را اعمال کنید. اگر متوجه تکه هایی از کد می شوید که بارها و بارها نوشته شده است ، پس آنها را انتزاع کنید. زیاد به هزینه دسته کد فعلی خود فکر نکنید. دو دلیل اصلی برای تمرین YAGNI وجود دارد،
شما در زمان صرفه جویی می کنید زیرا از نوشتن کدهایی که معلوم می شود نیازی ندارید اجتناب می کنید. کد شما بهتر است زیرا از آلوده کردن آن با «حدسهایی» که کم و بیش اشتباه هستند، اجتناب میکنید، اما به هر حال به آن پایبند هستند.
- مسئولیت واحد
image.png
همانطور که شروع به نوشتن کد می کنید، در مدت زمان طولانی، کد شما دست اصول کدنویسی و پا چلفتی می شود. کلاسها/ماژولهایی خواهید داشت که چندین عملکرد را انجام می دهند. این به کلاس هایی ختم می شود که صدها و هزاران خط کد هستند. این اصل می گوید که هر کلاس یا ماژول در یک برنامه فقط باید عملکرد خاصی داشته باشد. به عبارت دیگر، یک کلاس یا ماژول در یک برنامه فقط باید مسئول وظایف مربوط به یک تابع خاص باشد. این به شما کمک می کند مدول خود را حفظ کنید حداقل و تمیز است هر دو اصل مسئولیت باز/بسته و مسئولیت واحد تحت اصل SOLID است. در این مقاله، @Francesco Ciulla به طرز شگفت انگیزی در مورد هر اصل در SOLID توضیح داده است.
- کد خود را مستند کنید
هر توسعه دهنده ارشد بر اهمیت مستندسازی کد شما با نظرات مناسب تاکید می کند. همه زبان ها آنها را ارائه می دهند و ایرانیان سایبر شما باید نوشتن آنها را به یک عادت تبدیل کنید. نظرات را برای توضیح اشیاء، بهبود تعاریف متغیرها و آسانتر کردن درک عملکردها بگذارید. 8. تفکیک دغدغه ها اصل تفکیک نگرانی ها نسخه ای انتزاعی از اصل مسئولیت واحد است. این ایده بیان می کند که یک برنامه باید با کانتینرهای مختلف طراحی شود و این کانتینرها نباید به یکدیگر دسترسی داشته باشند. یک مثال شناخته شده در این مورد، طراحی مدل-نما-کنترلر (MVC) است. MVC یک برنامه را به سه قسمت مجزا تقسیم می کند: داده ها (مدل) ، منطق (کنترل کننده) و آنچه صفحه نمایش می دهد (نمای). تغییرات MVC در محبوب ترین چارچوب های وب اصول کدنویسی امروزی رایج است.
به عنوان مثال ، کدی که پایگاه داده را کنترل می کند نیازی به نحوه ارائه داده ها در مرورگر ندارد. کد رندر ورودی را از کاربر می گیرد، اما کد منطقی پردازش را مدیریت می کند. هر قطعه کد کاملا مستقل است.
نتیجه کدی است که اشکال زدایی آن آسان است. اگر زمانی نیاز به بازنویسی کد رندر داشتید، میتوانید این کار را بدون نگرانی در مورد نحوه اصول کدنویسی ذخیره دادهها یا پردازش منطق انجام دهید.
- Refactor
image.png
پذیرش آن سخت است، اما کد شما در اولین بار کامل نخواهد بود. Refactoring کد به این معنی است که کد خود را بررسی کرده و به دنبال راه هایی برای بهینه سازی آن باشید. آن را کارآمدتر کنید و نتایج را دقیقاً یکسان نگه دارید. پایگاه های کد به طور مداوم در حال تکامل هستند. بازدید مجدد، بازنویسی یا حتی طراحی مجدد کل تکه های کد کاملاً طبیعی است. این بدان معنا نیست که اولین باری که برنامه خود را نوشتید موفق نشدید. به مرور زمان با یک پروژه بیشتر آشنا خواهید شد. اصول کدنویسی از این دانش برای تنظیم کد موجود خود برای خشک بودن قواعد کدنویسی یا پیروی از اصل KISS استفاده کنید.