من چطور مسائل برنامهنویسی رو حل میکنم؟
اول از همه روی مفاهیم اصلی برنامهنویسی تسلط دارم. این مفاهیم چیان؟ توی سرفصلهای دوره کامل پایتون میتونید ببینید.
بعدش سعی میکنم مسئله رو بشکنم و به جزئیات توجه کنم. این کار با تمرین کافی خیلی براتون راحت میشه. فرض کنیم من از اینجا میخوام پاشم برم مشهد. اگر ازتون بپرسم مراحلش رو بگین لابد اینطوریه:
۱. خرید بلیت و رزرو هتل ۲. جمع کردن چمدون ۳. رفتن
اما کافی نیست! مثل این میمونه یکی بیاد بگه چطوری میشه نقاشی کشید؟ و بهش بگی به سوژه نگاه کن و بکش! من مراحل رو واضحتر میکنم:
۱. روشن کردن کامپیوتر ۲. وصل شدن به اینترنت ۳. باز کردن مرورگر ۴. پیدا کردن سایت معتبر خرید بلیت ۵. انتخاب تاریخ رفت و برگشت و پیدا کردن بلیت ۶. رزرو و خرید ۷. لیست کردن چیزایی که برای سفر لازم داریم ۸. جمع کردن چمدون با توجه به اون لیست ۹. خداحافظی کردن! ۱۰. رفتن به ایستگاه قطار یا اتوبوس یا هواپیما ۱۱. پیدا کردن صندلی مخصوص به خودت ۱۲. و رفتن!
منظورم رو فهمیدید؟ حتی اینو میشه باز هم بیشتر کرد. مثلا روشن کردن کامپیوتر، رمز کامپیوتر رو نباید وارد کنیم؟ هر چقدر جزئیات بیشتر باشه مغز شما واضحتر میتونه مسیر رو ببینه و راهحل بهتون پیشنهاد کنه.
یه شب خواب دیدم که میخوام برم دانشگاه و ارائه دارم. همینطوری پاشدم لپتاپ زدم زیر بغل و رفتم. اونجا رفتم پای تخته و ارائه میدم و یهو پایین نگاه میکنم میبینم عه! شلوارک پامه! مغز من مرحله لباس پوشیدن رو skip کرده بوده!
حالا چطور این کار رو یاد بگیریم؟ با تمرین و تکرار فراوان! شما فقط باید شروع کنید، مراحلی که برای حل مسئله فکر میکنید لازمه رو به ترتیب بنویسید. حالا بین مراحل سعی کنید یه جزئیات دیگه اضافه کنید! به قول شاعر، برنامهنویس جونیور مو میبیند و برنامهنویس سینیور، پیچش مو!
هر چقدر به این مراحل جزئیات بیشتری اضافه کنید قطعا حل کردن مسئله راحت تر میشه.
پ.ن: آها راستی! به این مراحل با ترتیب میگن الگوریتم!