+2 امتیاز
قبل در برنامه نویسی توسط (1.0هزار امتیاز)

مبحث refactoring در برنامه نویسی یعنی چی و چگونه است و چه کاربردی دارد؟ آیا وابسته به زبان برنامه نویسی خاصی است؟

قبل توسط (760 امتیاز)
+1
سئوال بنده هم هست!
میشه خواهش کنم جواب بدید دوستان؟

2 پاسخ

+3 امتیاز
قبل توسط (1.1هزار امتیاز)
انتخاب شده قبل توسط
 
بهترین پاسخ

refactoring به روش های اعمال تغییر (اصلاح یا افزودن قابلیت) در ساختار کدهای موجود می گویند، بصورتی که پس از اعمال تغییر کدهای جدید حاوی error نباشند (سینتکس و کامپایل) و همچنین functionality نرم افزار تغییر نکرده باشد.

معمولا refactoring بدلایل زیر باید اتفاق بیفتد:

  • بهبود درکد برای کاهش پیچیدگی و بالا بردن خوانایی کد (مانند تغییر نام متغییر ها).
  • افزودن قابلیت های جدید به کد (مانند تغییر امضای متد ها)
  • بهبود طراحی سیستم (جدا کردن قسمتی از یک کلاس و ایجاد کلاس جدید برای آن قسمت)

معمولا IDE های زبان های برنامه نویسی مختلف امکاناتی برای اعمال refactoring در کد را در اختیار برنامه نویسان قرار می دهند.

refactoring وابسته به زبان برنامه نویسی خاصی نیست و برای موارد فوق الذکر می تواند در هر زبان برنامه نویسی اتفاق بیوفتد.

در فرایند های توسعه نرم افزار agile از refactoring در پیاده سازی سیستم استفاده زیادی می شود. چون در فرایند های agile تحویل نرم افزار زود به زود انجام می شود بنابراین احتمال تغییر در کدهای نوشته شده و طراحی زیاد وجود دارد به همین دلیل refactoring ابزاری مناسب برای اعمال سریع این تغییرات در نرم افزار است.

+1 امتیاز
قبل توسط (7.1هزار امتیاز)
refactoring (بازسازی) یعنی تغییر واصلاح کدهای برنامه به طوری که خروجی برنامه تغییر نکنه.

برخی از این تغییرات عبارتند از: تغییر نام متغییرها، تغییر نام متدها و توابع، عوض کردن محل قرارگیری یک متد (یا کل کلاس) و شکستن یک متد یا تابع بزرگ به متدها یا توابع کوچک‌تر.

با این تکنیک میشه به مرور زمان هر موقع که لازم بود کیفیت کدمون رو ببریم بالا یعنی قابلیت نگهداری بیشتری را به برنامه میدهد وبا این تکنیک به کدهایی دست خواهیم یافت که قابلیت آزمون پذیری بهتری داشته، در مقابل تغییرات مقاوم و شکننده نیستند و همچنین امکان به اشتراک گذاری قسمت‌هایی از آن‌ها در پروژه‌های دیگر نیز میسر می‌شود.
قبل توسط (0 امتیاز)
با سلام . ممنون از مطلب خوبتون. من چند سایت دیگر را هم مشاهده کردم مطالب خوبی راجع به ریفکتورینگ نوشته بودند. در اختیار دوستان قرار دهید تا آنها هم استفاده کنند.


https://virgool.io/@kavaandamirchi/refactoring-when-to-refactor-cjixsnvnoeea

http://ably.ir/Post/3792/what-is-refactoring/-1

https://alborzcode.com/%D9%85%D8%AF%DB%8C%D8%B1%DB%8C%D8%AA-%D9%BE%D8%B1%D9%88%DA%98%D9%87-%D9%87%D8%A7%DB%8C-%D9%86%D8%B1%D9%85-%D8%A7%D9%81%D8%B2%D8%A7%D8%B1%DB%8C/%DA%A9%D8%AF%D9%86%D9%88%DB%8C%D8%B3%DB%8C-agile-%D8%AF%D8%B1-%D8%B3%DB%8C-%D8%B4%D8%A7%D8%B1%D9%BE-refactoring/

سوالات مشابه

0 امتیاز
1 پاسخ 671 بازدید
0 امتیاز
1 پاسخ 32 بازدید
...