خورده خیالم راحت شد
ولی تمسخر و سرکوب کد اسپاگتی خیلی فراگیر شده ها!
اوضاع خطرناک شده واسه اسپاگتی نویس هایی مثل من
البته چند نکته.
یکی اینکه اصلا کد اسپاگتی دقیقا چیه و چه درجاتی داره؟
مثلا فقط اگر از شیء گرایی و MVC در پروژه استفاده نکنیم بهرصورت کاملا اسپاگتیه؟
مثلا من درسته از اینا در پروژم استفاده نکردم، اما تاحد ممکن با روشهای ساده تر و بدوی تری مثل تابع ها، دسته بندی بندی کدها و عملیات مرتبط/مشترک و درج هرکدام از اونها در یک فایل جداگانه که اینکلود میشن، و حتی تفکیک نسبی کد برنامه و ساختار صفحات (HTML و اینها) در دایرکتوری ها و فایلهای جداگانه، و غیره سعی کردم برنامه سازماندهی و خوانایی و قابلیت نگهداری و گسترش و تغییر بهتری داشته باشه و کمتر احتمال باگ و ناسازگاری پیش بیاد.
البته به پای MVC و شیء گرایی نمیرسه احتمالا، ولی درحد اینکه کار منو راه بندازه کافی بود و ضمنا عوضش کار برنامه نویسی دو برابر یا حتی بیشتر سریعتر و راحتتر پیش رفت.
نکتهء دیگه اینکه قوی بودن برنامه و برنامه نویس فقط به این چیزا (شیء گرایی و الگوهای طراحی) نیست بنظرم. مثلا پروژهء من (سیستم رجیستر و لاگینم) اینا رو نداره، ولی از نظر الگوریتم ها و منطق و امنیت و انعطاف و امکانات در کل احتمالا یکی از برترین پروژه ها در دنیاست!! جدی میگما! شاید حتی برترین باشه حداقل بین اونایی که بصورت عمومی (نه لزوما بازمتن) منتشر شدن و مثلا خاص و انحصاری (درونی و منتشر نشده) سازمانها و شرکتهای بزرگ نیستن.
چون در زمینهء امنیت و الگوریتم من خیلی کار کردم و مطالعات زیادی داشتم که هرکسی نداره.
نکتهء آخر هم اینکه یک دلیل اینکه از شیء گرایی و MVC تا حالا استفادهء اساسی نکردم بخاطر این بوده که هنوز وقت نکردم روش کار کنم؛ همش داشتم در مسائل پایه ای تری مثل الگوریتم و امنیت و ساختمان داده و پروتکل ها مطالعه و تحقیق میکردم و ضمنا کار عملی/تجاری خیلی کمی هم داشتم به نسبت. شاید بعدها که پروژه های بیشتری کار کردم به مرور به سمت رعایت این روشها هم رفتم و نیاز شد. چون حیطهء دانش و توانایی خودم رو خیلی وسیع گرفتم. مثلا الان میتونم در چند حیطه و چند زبان تقریبا هر برنامه ای خواستم بنویسم، اما البته با همین شکل کدنویسی بقول شما اسپاگتی. یجورایی دنبال توانایی عملی گسترده بودم تا اینکه در یک حیطهء خاص متخصص استاندارد و تمیزکاری بشم که هرجایی با هر استانداردی پذیرش بشه. یعنی اول دنبال این بود که واسه خودم هر برنامه ای رو که خواستم بتونم بنویسم. دنبال تجارت و بازار و کار گروهی و این حرفا نبودم.