کانال تلگرام

چطور در مواقع حل مسائل برنامه نویسی بر موانع غلبه کنیم؟

تاریخ : ۵ مرداد ۱۳۹۹
نویسنده : امیر حسین نصر
دسته بندی ها : برنامه نویسی

برنامه نویسی کار سختی است و شما اغلب در یک رابطه عشق و نفرت با آن به سرخواهید برد. شما کاری را که دوست دارید انجام می دهید، اما هنگامی که به چیزی که میخواهید نرسید، از آن متنفر خواهید شد.

problemprogramming1

من سال های زیادی است که برنامه نویسی میکنم، بیشتر اوقات به خود افتخار میکنم، که چنین شغلی را انتخاب کرده ام، اما زمانی که سر حل یک مسئله چند روز درگیر هستم، از آن متنفر میشوم.

بعضی اوقات ممکن است در چارچوب هایی که استفاده میکنید، مشکلاتی وجود داشته باشد و یا حتی ممکن است خود زبان و فناوری هایی که استفاده میکنید، عیوبی داشته باشند، اما در اکثر اوقات مشکلاتی که سر راه شما وجود دارند، دلایل دیگری دارند. برای مثال به اندازه کافی روی مسائل تمرکز نکرده اید و یا آنها را به قسمت های کوچکتری تقسیم نکرده اید.

لازم نیست برای اینکه در حل مسئله قدرتمند شوید، برنامه نویس باشید. قانون شکستن مسائل به موارد کوچکتر در زندگی روزمره هم اعمال میشود و کسی که میخواهد این کار را انجام دهد، اهمیتی ندارد چه شغلی داشته باشد.

مسائل را به بخش های کوچکتر تجزیه کنید

قبل از نوشتن کدهای طولانی، یکی از موضوعاتی که سعی در حل آن دارید را انتخاب کنید، کمی از رایانه فاصله بگیرید و روی آن فکر کنید. یک کاغذ و یک مداد بردارید و شروع به شکستن مسئله کنید.

در این مرحله به کدنویسی فکر نکنید، تمرکز شما باید فقط روی حل مسئله باشد. سعی کنید مسئله را در زیرشاخه های کوچکتر خرد کنید. باید دستورالعمل های خود را تا اندازه ای خرد کنید که یک کودک 5 ساله هم بتواند آنها را درک کند.

توجه داشته باشید که رایانه ها همانند شما فکر نمیکنند،آنها احمق هستند، آنها فقط کاری را که شما به آنها می گویید انجام میدهند. آنها نمی توانند هنوز ذهن شما را بخوانند، پس همه جزئیات را باید برای آنها بازگو کنید. سعی کنید این مهارت را در خود پرورش دهید، تا به صورت طبیعی برای شما به یک عادت تبدیل شود.

نوشتن کد را فقط زمانی شروع کنید، که حل مسئله را روی کاغذ انجام داده باشید. با انجام این کار، خواهید فهمید که اکثر اوقات حتی مسائل بزرگ نیز راه حل های ساده ای دارند و می توان با استفاده از دستورات ساده ای مثل حلقه ها و دستورات تصمیم گیری آنها را حل کرد.

اگر به طور خاص در حوزه توسعه وب کار می کنید، حداقل یکی از کتابخانه مربوط به این حوزه را استفاده میکنید. البته کتابخانه ها برای کمک به ما و آسان تر کردن کار ما به وجود آمده اند، اما آنها دارای معایبی نیز هستند، ممکن است وسوسه شوید و از مراحل خاصی از دستورالعمل های خود را صرفنظر کنید، زیرا فریمورک ها و کتابخانه ها برای شما بیشتر چیزها را خودکار میکنند.

حتی اگر این کار را هم انجام میدهید، کاملا هوشیار باشید و بدانید چه عملکردی در حال پیاده سازی است. این کار باعث می شود تا زمانی که به مشکلی برخوردید، عیب یابی پروژه شما به سادگی انجام شود.

با گذشت زمان تجربیات بیشتری کسب خواهید کرد و در مورد زبان و فناوری مورد استفاده خود اطلاعات بیشتری کسب خواهید کرد و در حل مسئله بهتر خواهید شد، اما این اتفاق فقط در صورت کار با چالش ها، تمرین ها و مشکلات حاصل میشود.


مهارت های حل مسئله خود را تقویت کنید

همانطور که قبلاً نیز گفتم، جدا از برنامه نویسی، می توانید مهارت های حل مسئله خود را به روش های دیگری تقویت کنید. به عنوان مثال قطعات مختلف یک مبل را تهیه کنید و از خود بپرسید با آنها به بهترین شکل ممکن یک مبل تهیه کنید. شما باید با طرح های مختلفی آشنا شوید و تجربه خود را افزایش دهید.

کاری که شما می خواهید در اینجا انجام دهید این است که ذهنیت یک مهندس را به دست آورید. مهندسین، فارغ از رشته ای که دنبال میکنند، همیشه این چالش ها را با خود تمرین میکنند. اگر یک کار بزرگ و تا حدودی ارعاب کننده پیش روی خود دارید، شروع به شکستن آن کنید، سر و کله زدن با بخش های کوچکتر بسیار راحت تر است.

اطلاعات مقاله


تاریخ انتشار : ۵ مرداد ۱۳۹۹
نویسنده : امیر حسین نصر
اشتراک گذاری در :

مقالات پیشنهادی

مشاهده همه مقالات
ثبت دیدگاه

برای ارسال دیدگاه لازم است ابتدا وارد سایت شوید