اندر احوالات کد کثیفی که از گذشته به ما ارث رسیده و بازسازی اون
در دنیای برنامهنویسی همیشه اینجوری نیست که همه چیز بر وفق مراد باشه؛ درست مثل زندگی. مثلا زیاد پیش میاد که به هر دلیلی کارهای یکی از اعضای تیم به تو واگذار میشه. اینجاست که اگه بین اعضای تیم، استاندارد درستی تعریف نشده باشه یا برنامهنویس ارشدی وجود نداشته باشه یا وجود داشته اما وظایفش رو به درستی انجام نداده یا مرور کدی1 در کار نباشه یا خود نفر قبلی مسئولیتپذیر نبوده یا ضعف آموزش یا به هزاران دلیل ریز و درشت دیگه، کدی به دست شما میرسه که ناخوانا و شکنندهست. به هر جاش که دست میزنیم یه جای دیگهاش بهم میخوره و یه باگ دیگه پیدا میشه. هر اسمی میخواید براش بذارید. کد زشت، کثیف، بدبو، اسپاگتی یا هرچیز دیگهای. مهم اینه که شما بتونید اینها رو شناسایی و بعد اصلاح کنید. در این موقعیت به نظرم بهتره که:
- خونسردی خودتون رو حفط کنید (درست مثل توصیههای روشنی که برای حوادث طبیعی میگن!)
- برنامهنویسهای قبلی رو قضاوت نکنید چونکه شما در شرایط اونها نبودید و تضمینی وجود نداره که در اون شرایط کار شما بهتر از حالت فعلی از آب در میومد
- از اشتباهات نفرات قبلی درس بگیرید و سعی کنید شما دیگه تکرارشون نکنید. یه چیزی شبیه «ادب از که آموختی...»
- غُر نزنید. به جای غر زدن به این موضوع به شکل مسئلهای نگاه کنید که وظیفه حل کردنش رو به شما سپردن
- و در نهایت اینکه بازسازی و ریفکتور2 کردن کد رو یاد بگیرید و با کمک برنامهنویس ارشدتر، حتی به اندازه یک خط کد، کدها رو بهبود بدید. تغییرات کوچک بدید و قدمهای کوچک بردارید.
نمیشه نسخه کلی پیچید؛ اما به نظرم بدترین کار اینه که ما هم همون راه نفرات قبلی رو ادامه بدیم. توسعهدهندگی صرفا این نیست که یه چیز جدید رو از صفر خودمون شروع کنیم بلکه بهبود هم بخشی از مسیر توسعه است.