انجمن برنامه نویسان البرز

دسته: آموزش اصلاح کد

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

جالب است بدانید که وجود برنامه های پراشکال و بد نوشته شده، مختص ایران نیست و در همه جای دنیا برنامه ها این مشکلات را دارند. اینجاست که مبحثی به نام اصلاح کد یا بازنگری کد و یا Code Refactoring مطرح میشود.

اگر سری به شرکت های نرم افزاری بزنید، معمولا کارکنانی را میبینید که از کدها ناراضی هستند و اعتقاد دارند که کدها کثیف نوشته شده اند. بیشتر برنامه نویسان، راه حل را این میدانند که کدهای برنامه، مجددا نوشته شوند.

ایندر حالی است که مدیران نسبت به این موضوع گارد دارند و بر این باورند که کدها نباید از نو نوشته شوند.

اگر بی تعارف صحبت کنیم، با اینکه خود من، برنامه نویس هستم، اما نظر مدیران به چند دلیل درست تر است:

  1. هزینه تولید از 0 معمولا بسیار بیشتر از هزینه ویرایش است. (هرجند هردو هزینه بالایی دارند)
  2. هیچ تضمینی نیست کدی که مجددا تولید شود، کد خوبی باشد و برنامه نویس بعد از شما، از دست خط شما در کد نویسی شکایت نکند.
  3. معمولا کدهایی که به مرور زمان بزرگ شده اند، حاوی جزئیاتی هستند که گاهی در تولید از 0 نابود میشوند.
  4. شرکت ها معمولا سرمایه انسانی و مالی تولید از 0 را ندارند و یا اگر دارند، این کار برایشان توجیه اقتصادی ندارد.

بنابراین، اگر برنامه نویس هستید، بدانید که بهتر است فکرتولید از 0 را از سرتان بیرون کنید. به جای آن، با ابزارهایی آشنا شوید که به شما برای اصلاح کد کمک میکنند.

اگر قرار است کدی اصلاح شود و بهبود پیدا کند، به چند ابزار مهم نیاز خواهد بود:

  1. شناخت Design Patterns
  2. شناخت مفاهیم SOLID
  3. Unit Testing
  4. ابزارهای تکمیلی نرم افزاری مثل افزونه Resharper

اصلا اصلاح کد به چه معنی است؟

اصلاح کد، یک روش قابل کنترل برای بهینه سازی کدها بدون تغییر کارایی آنها است. این روش، یک کد کثیف و وحشتناک را به کدی خوانا و قابل فهم تغییر میدهد.

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

اما چند سوال ممکن است برای شما پیش بیاید:

اصلا کد تمیز چه کدی است؟

  • کد تمیز کدی است که کارکرد آن برای همه برنامه نویسان مشخص و معلوم باشد.
  • کد تمیز، خط های تکراری ندارد.
  • کد تمیز، کوتاه و ساده است.
  • کد تمیز کدی است که تمام Unit Test های مربوطه را Pass میکند.
  • کد تمیز کدی است که نگهداری آن ارزان است.

کد کثیف چه کدی است؟

کد کثیف، کدی است که موارد بالا را نقض کند. مواردی مثل فشارهای زمانی، ضعف معلومات تحلیلی و کدی، نبود اصلاح کد، نبود Unit Test، نبود بحث و تبادل نظر میان افراد گروه و … همه و همه باعث به وجود آمدن کدهای کثیف میشود.

بسیار خوب. و اما از کجا شروع کنیم؟

  1. ابتدا یاد بگیرید چه وقت باید کدها را اصلاح کنیم ؟

مقالات آموزش اصلاح کد

درس سوم – کدهای بدبو !

کدهای بدبو کدهایی هستند که در برنامه ما وود دارند و یک جای کارشان میلنگد. در واقع، به نوعی کثیف هستند و میتوانند محل به وجود آمدن مشکلات و باگ ها بشوند. در این مقاله، شما را با مقدمات شناسایی این کدها، آشنا میکنیم....


درس دوم – چطور کدها را اصلاح کنیم ؟

در مطلب قبل فهمیدیم که چه وقت باید کدها را اصلاح کنیم. در این مطلب به این موضوع مهم میپردازیم که چطور باید کدها را اصلاح کنیم و چه چک لیستی داشته باشیم....


درس اول – چه وقت باید کدها را اصلاح کنیم ؟

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