🍝 اسپاگتی کد و بدهیِ فنی؛ وقتی مثلِ گاو فقط کد میزنی!
ببین، یه سری برنامهنویس داریم که فکر میکنن چون کُدشون "کار میکنه"، دیگه یعنی شاهکار کردن! آخه لاشخور! اگه کدی زدی که فردا خودت هم نمیتونی بفهمی چی به چیه، تو برنامهنویس نیستی، تو یه «تایپیستِ متوهمی» که داری یه بمبِ ساعتی میسازی.
💀 داستان چیه؟ (بدهیِ فنی یا Technical Debt)
بدهی فنی یعنی تو واسه اینکه سریع کار رو تحویل بدی، از راهِ کثیف و میانبُر میری. مثل اینه که واسه ساختنِ خونه، جای تیرآهن از چوبِ کبریت استفاده کنی. اولش خونه سرپاست، ولی یه باد بیاد، کلِ هیکلِ پروژه به فاک میره.
چطوری گند میزنن به پروژه؟
۱. اسپاگتی کد: کدها رو جوری به هم گره میزنن که اگه یه if رو اینور تغییر بدی، یهو دیتابیسِ اونورِ دنیا منفجر میشه!
۲. Hard-coding: متغیرها و آدرسها رو دستی مینویسن وسط کد. انگار مغزشون نمیکشه که اینا باید داینامیک باشن.
۳. نبودِ داکیومنت: طرف جوری کد میزنه انگار قراره فردا بمیره و رازش رو با خودش ببره تو گور. هیچکس نمیفهمه این فانکشنِ کصشعر قراره چه غلطی بکنه!
نتیجه؟
بعد از ۶ ماه، پروژه جوری سنگین و کثیف میشه که دیگه هیچ آپدیتِ سادهای نمیشه داد. هر تغییری مساوی با ۱۰۰ تا باگِ جدیده. اینجاست که صاحبِ پروژه باید کلِ اون کدهایِ آشغال رو بریزه دور و از اول شروع کنه. یعنی پول و زمانِ ملت رو دادی دستِ یه مشت اَجقوَجق!
⚠️ چرا اینا برنامهنویس نیستن؟
چون این کصمغزها هنوز نمیفهمن که کد رو برای آدمیزاد مینویسن، نه برای ماشین! ماشین هر آشغالی رو اجرا میکنه، ولی این هنرِ توئه که جوری بنویسی که بقیه هم بتونن توسعهاش بدن. اینا همونایی هستن که فرقِ SOLID و KISS رو با مارکِ پوشکِ بچهشون نمیدونن!
🛠️ راهِ نجات (اگه نمیخوای یه بازنده باشی):
- Clean Code: برو کتابِ کُلین کد رو بخون تا بفهمی چطوری مثل آدم اسمگذاری کنی و فانکشن بنویسی.
- Refactoring: همیشه وقتی کد میزنی، برگرد و تمیزش کن. نذار زبالهها روی هم جمع بشن.
- Design Patterns: الگوهای طراحی رو یاد بگیر که چرخ رو از اول اختراع نکنی (اونم مربع!).
- TDD: قبل از اینکه کدِ کثیف بزنی، براش تست بنویس که بفهمی داری چه گوهی میخوری.
#TechnicalDebt #CleanCode #SpaghettiCode #Programming #Refactoring #برنامه_نویس_بی_عرضه
---
اگه با این پست حال کردی و فهمیدی که تا حالا داشتی آشغال تولید میکردی، اون انگشتِ مبارکت رو فشار بده رو ریکشنها. حمایت نکنی، باگهای کدِ قبلیت میاد تو خوابت خفهات میکنه! 😂🖕
@init_code
ببین، یه سری برنامهنویس داریم که فکر میکنن چون کُدشون "کار میکنه"، دیگه یعنی شاهکار کردن! آخه لاشخور! اگه کدی زدی که فردا خودت هم نمیتونی بفهمی چی به چیه، تو برنامهنویس نیستی، تو یه «تایپیستِ متوهمی» که داری یه بمبِ ساعتی میسازی.
💀 داستان چیه؟ (بدهیِ فنی یا Technical Debt)
بدهی فنی یعنی تو واسه اینکه سریع کار رو تحویل بدی، از راهِ کثیف و میانبُر میری. مثل اینه که واسه ساختنِ خونه، جای تیرآهن از چوبِ کبریت استفاده کنی. اولش خونه سرپاست، ولی یه باد بیاد، کلِ هیکلِ پروژه به فاک میره.
چطوری گند میزنن به پروژه؟
۱. اسپاگتی کد: کدها رو جوری به هم گره میزنن که اگه یه if رو اینور تغییر بدی، یهو دیتابیسِ اونورِ دنیا منفجر میشه!
۲. Hard-coding: متغیرها و آدرسها رو دستی مینویسن وسط کد. انگار مغزشون نمیکشه که اینا باید داینامیک باشن.
۳. نبودِ داکیومنت: طرف جوری کد میزنه انگار قراره فردا بمیره و رازش رو با خودش ببره تو گور. هیچکس نمیفهمه این فانکشنِ کصشعر قراره چه غلطی بکنه!
نتیجه؟
بعد از ۶ ماه، پروژه جوری سنگین و کثیف میشه که دیگه هیچ آپدیتِ سادهای نمیشه داد. هر تغییری مساوی با ۱۰۰ تا باگِ جدیده. اینجاست که صاحبِ پروژه باید کلِ اون کدهایِ آشغال رو بریزه دور و از اول شروع کنه. یعنی پول و زمانِ ملت رو دادی دستِ یه مشت اَجقوَجق!
⚠️ چرا اینا برنامهنویس نیستن؟
چون این کصمغزها هنوز نمیفهمن که کد رو برای آدمیزاد مینویسن، نه برای ماشین! ماشین هر آشغالی رو اجرا میکنه، ولی این هنرِ توئه که جوری بنویسی که بقیه هم بتونن توسعهاش بدن. اینا همونایی هستن که فرقِ SOLID و KISS رو با مارکِ پوشکِ بچهشون نمیدونن!
🛠️ راهِ نجات (اگه نمیخوای یه بازنده باشی):
- Clean Code: برو کتابِ کُلین کد رو بخون تا بفهمی چطوری مثل آدم اسمگذاری کنی و فانکشن بنویسی.
- Refactoring: همیشه وقتی کد میزنی، برگرد و تمیزش کن. نذار زبالهها روی هم جمع بشن.
- Design Patterns: الگوهای طراحی رو یاد بگیر که چرخ رو از اول اختراع نکنی (اونم مربع!).
- TDD: قبل از اینکه کدِ کثیف بزنی، براش تست بنویس که بفهمی داری چه گوهی میخوری.
#TechnicalDebt #CleanCode #SpaghettiCode #Programming #Refactoring #برنامه_نویس_بی_عرضه
---
اگه با این پست حال کردی و فهمیدی که تا حالا داشتی آشغال تولید میکردی، اون انگشتِ مبارکت رو فشار بده رو ریکشنها. حمایت نکنی، باگهای کدِ قبلیت میاد تو خوابت خفهات میکنه! 😂🖕
@init_code
👍2