به شخصه به عنوان یک برنامهنویس در موقعیتهایی قرار داشتهام که با وجود تسلط به تکنولوژی و platform مورد استفاده باز هم در طراحی و پیادهسازی بخشهایی از نرمافزار کاملاً ناموفق بودهام. چون به علت عدم استفاده از روشهای خلاقانه و تکیه صرف به توان فنی از راه حلهای خیلی پیچیدهای استفاده کردهام که هم پیادهسازی را سخت و طولانی کرده و هم debug، نگهداری و تغییرات آتی را پر دردسر ساخته است.
مشابه همین مشکل را خیلی از برنامهنویسها و شرکتها در رابطه با طراحی محصول دارند. آنها برای رفع یک نیاز ساده نرمافزار خیلی پیچیده و درهم برهمی تولید میکنند که هم زمان پیادهسازی خیلی زیادی دارد هم کاربر بدبخت در استفاده از آن اصلاً راحت نیست. چاره کار در اینجا هم استفاده از کمی خلاقیت است. به عبارت دیگر من برنامهنویس لازم نیست که از تکنولوژیها و راههای فوقالعاده برای رفع یک نیاز کوچک استفاده کنم. بلکه کافی است نوع نگاهم را عوض کرده و فقط طراحی محصول را کمی عوض کنم.
دیدگاهها
موافقم با شما ، پیش آمده برای یک کار ساده گاهی راه حل های نجومی ارائه می دهیم یا در حالیکه با حذف یک امکان اضافی (بی مورد) کلی از پیچیدگیها محو می گردد دور خودمان چرخیده ایم.
انگار به قول سهراب گاهی "چشمها را باید شست جور دیگر باید دید"!
این شعر سهراب واقعاً خیلی به این موضوع میاد
2011/10/4 Disqus <>
http://csharperimage.jeremylikness.com/2011/09/top-10-over-engineering-mistakes-in.html