Hossein Askari
Hossein Askari
خواندن ۱ دقیقه·۳ سال پیش

Dive into Refactoring

#refactoring
#code_smells
#dive_into_refactoring
#Alexander_Shvets

Code Smells :

* Bloaters *

شامل کدها، متد ها و کلاس‌هایی هستند که به اندازه‌های بزرگی افزایش یافته‌ که کار کردن
با اونا سخت میشه. معمولاً این ‫code smells فوراً ظاهر نمی شوند، بلکه در طول زمان و با تکامل برنامه جمع می شوند ( مخصوصاً وقتی کسی تلاشی برای از بین بردن آنها نمی کنه)
‫و شامل موارد زیر میشه :

1) Long Method

یک متد حاوی خطوط کد بسیار زیادی است.
به طور کلی، هر متدی که بیش از ده خط باشد، باید شما را وادار به سؤال کردن کنه.

2) Large Class

بدین معنا که یک کلاس شامل بسیاری از فیلدها / متد ها / خطوط کد است

3) Primitive Obsession

استفاده زیاد و وسواس گونه از ‫primitives برای هر چیز مشخص در domain model
مثلا وقتی یک داده پیچیده رو داخل یک متغیر ذخیره میکنیم درست نیست و میشه این متغیر رو تبدیل به یک کلاس یا تبدیل به یک استراتژی کرد

4) Long Parameter List

بیش از سه یا چهار پارامتر برای یک متد

5) Data Clumps

گاهی اوقات قسمت های مختلف کد حاوی گروه های یکسانی از متغیرها (مانند پارامترهای اتصال به پایگاه داده) می باشد. ‫این clumps ها باید به کلاس های خودشان تبدیل بشن.‫
به عنوان مثال وقتی فیلد های مختلفی از یک دیتا رو به ورودی یک متد پاس میدیم میتونیم این رو در نظر بگیریم که کل آبجکت رو به متد پاس بدیم به جای اینکه یکی یکی فیلدهارو پاس بدیم

refactoringprogrammingdevelopcode smellsBloaters
Back-End Developer
شاید از این پست‌ها خوشتان بیاید