پیشگفتار:
دیرزمانی است که دربارهی طراحی چیزی ننوشتهام. دوست داشتم در این باره مطلبی بنویسم. احتمالاً مطالب بیشتر «بینشی» است تا «دانشی». امیدوارم مفید باشد. خوشحال خواهم شد که نظرات شما را برای نقد و تکمیل مطالب، دریافت کنم.
گفتار:
آموزش طراحی را معمولاً با یک مثال شروع میکنم: دو شکل داریم، مستطیل و دایره. میخواهیم آنها را رسم کنیم و مساحتشان را کنارشان بنویسیم. طرحی برای مسأله و مبتنی بر پارادایم شیءگرایی ارائه کنید.
چون دورهی آموزشی است، بین دانشجویان نوعی «مسابقهی دانایی» راه میافتد. هر کسی تلاش دارد همهی دانش و تجربهاش را روی میز بریزد و طرحش اشارهای به آنها داشته باشد. این موضوع طبیعی است، هر انسانی دوست دارد که بگوید «باسواد و باتجربهام»
دانشجویان با انبوهی از تکنیکها و مفاهیم به مسأله حمله میکنند: از Interface, abstract class بگیرید تا مباحثی مانند Layering و DI و گاه AOP!
یک:
اولین نکتهای که در این شرایط آموختهام این است که «گاهی ندانستن بهتر از دانستن است» و «گاهی بیتجربگی به تجربه میچربد»!
دانش و تجربهی دانشجویان به خصوص بهترینهایشان منجر به بحرانی میشود که آن را «انفجار پیچیدگی بیمورد» مینامم. به زبان سادهتر، برای جابهجایی یخچال به خانهی جدید، نیازی به اجارهی تریلی هجده چرخ نیست! بدیهی است که تریلی به مراتب قویتر از پیکان وانت است.
انتخاب تکنیکها از یک سیستم اقتصادی تبعیت میکند. چقدر هزینه کنیم و چه به دست آوریم. مدیر مؤفقی روزی به من آموخت که «حواست باشد گاهی ده واحد هزینه میکنی و فقط دو واحد به دست میآوری!».
توصیه: همواره در مورد مسائل طراحی، در چارچوب یک سیستم اقتصادی تصمیمگیری کنید.
دو:
معلمان زحمتکش ریاضی، فیزیک و شیمی سعی میکردند که بیاموزند که فهم و درک مسأله، پنجاه درصد حل مسأله است. یادم میآید که معلمانم برای یاددان این موضوع، ورودی را یک طرف مینوشتند و خروجیهای مورد انتظار را طرف دیگر. سپس میگفتند دنبال مطلب یا راه حلی باشید که بتواند شما را از طرف اول به طرف دوم برساند.
در این بین برای این که معنی قید (Constraint) را بیاموزانند، محدودیتهایی بر راه حل حاکم میکردند. مثلاً حد زیر را بدون استفاده از روش هوپیتال به دست آورید. جوابهای معادلهی درجه دوم زیر را بدون استفاده از روش دلتا محاسبه کنید. پاسخ پرسش زیر را در کمتر از نصف صفحه بنویسید.
جورج پولیا جایی گفته است: «پاسخ به پرسشی که فهمیده نشده باشد، کاری ابلهانه است. کار کردن برای رسیدن به هدفی که مورد پسند نیست، غمانگیز است.»
دانشجویان قبل از آن که مسأله را خوب بفهمند، حول و حوش آن «بچرخند» و ابعاد آن را خوب ببینند، علاقه دارند زود به راه حل فکر کنند و به راه حل برسند. چون هدف نهایی، «راه حل» است. البته وقت کمی که به آنها داده میشود نیز این عارضه را تشدید میکند.
توصیه: هرچند دستیابی به راه حل، موضوعی است تدریجی، اما تا قبل از فهم درست و کامل مسأله و تحلیل آن، به راه حل فکر نکیند.
پانوشت:
خدا رحمت کند آقای منصوری را و سلامت نگهدارد همهی معلمان را.
گزیده:
صبح، باران، بیبالان!
امیر
۹ شهریور ۱۳۹۲ در ۰۰:۰۰فاتحه رو خوندم. انسانهای شریف بی سروصدا کم نیستند
داريوش
۹ شهریور ۱۳۹۲ در ۰۰:۰۰استاد گرامی. روی ماهتان را می بوسم. البته که چنان استاد گرانقدری ، اینچنین استاد نازنین و پرمایه ای تحویل جامعه می دهد.
شهاب
۱۰ شهریور ۱۳۹۲ در ۰۰:۰۰درود بر شما
بسیار عالی واقعا جای چنین مطالبی روی وبلاگ خالی بود.
شاد باشید.
امیر جلیلی فرد
۱۲ شهریور ۱۳۹۲ در ۰۰:۰۰ممنونم. مثل همیشه آموزنده و سرشار از نکات بود