در اینجا میخواهیم ضروریات شروع آموزش برنامه نویسی را بر اساس ویژگیهای شخصیتی شما شرح دهیم.
«برنامه نویسی، شغلی پردرآمد است.»، «برنامه نویسی، شغلی مطمئن است.» «برنامه نویس، بی کار نمی ماند.»؛ همه اینها عباراتی هستند که درستی آنها در اغلب شرایط و در مورد بیشتر افراد، صدق می کند. برنامه نویس شدن، مزیتهای بسیاری به دنبال دارد و به همین دلیل، علاقهمندان زیادی دارد.
فکر می کنید از میان این علاقهمندان، چه کسی واقعاً می تواند برنامه نویس شود؟ باهوشترین؟ علاقهمندترین؟ با ارادهترین؟ پرتلاشترین؟ درسخوانترین؟ … خیر. هیچ کدام از جوابهایتان درست نبود. در واقع، همه می توانند برنامه نویس شوند و آن عده که بیشترین باور را به این جمله دارند، بیشترین شانس را دارند.
با این که هر کسی میتواند برنامه نویسی را شروع کند، اما خیلیها جرأت این کار را به خود نمیدهند. بعضی تصور میکنند برای برنامه نویسی به دانش بالا در حوزه آی تی نیاز دارند یا باور دارند برای این کار، به اندازه کافی بزرگ نشدهاند یا برای آنها دیگر دیر شده است یا ریاضیاتشان قوی نیست یا دنیا به اندازه کافی برنامه نویس دارد و به برنامه نویسی آنها نیازی نیست.
اما هیچ چیز نمیتواند به اندازه این تصورات، از واقعیت به دور باشد. موضوع برنامهنویسی، حل مشکلات است و بله، البته که یاد گرفتن یک زبان برنامه نویسی به خصوص به زمان نیاز دارد ولی منابعی که میتوان از طریق آنها زبان موردنظر را آموخت، برای انواع مختلف سلایق آموزشی نیز به وفور یافت میشود.
برای شروع آموزش برنامه نویسی، کار خود را با یک پروژه ساده شروع کنید.
باید چندتایی قفسه چوبی بسازید تا هنر نجاری را یاد بگیرید. به همین ترتیب، بهترین تمرین برای شروع آموزش برنامه نویسی این است که چند برنامه ساده بنویسید. اگر پروژههای سادهای را برای خود تعریف نکرده باشید، به راحتی ممکن است تمرکز و انگيزه خود را از دست بدهید. به همین دلیل، بهترین کار این است که با یک ایده، کار خود را شروع کنید و به مرور به سمت هدف و اجرای ایده خود پیش بروید.
نرمافزار موردنیاز خود را برای شروع آموزش برنامه نویسی تهیه کنید.
برای این که کار کدنویسی را شروع کنید، به اطلاعات زیادی نیاز ندارید. مطمئن باشید که کامپیوتر شما نحوه اجرای کدهای شما را میداند و قبل از آن فقط باید تنظیماتی را به این منظور انجام دهید. بنابراین، اگر در برنامه نویسی، یک مبتدی تمام عیار هستید، باید به چند چیز توجه داشته باشید:
کدنویسی، به همان سادگی استفاده از یک ویرایشگر متنی است.
هنگام کدنویسی، کل کاری که باید بکنید این است که فایل را با فرمت فایلی درست ذخیره کنید. به عنوان مثال، اگر از Python استفاده میکنید، باید فایل متنی خود را به جای txt. با فرمت py. ذخیره کنید. با دانلود نرمافزار Notepad++ زندگی را سادهتر کنید. با کمک این برنامه به راحتی می توانید جاهایی را که اشتباه کردهاید، پیدا کنید.
لازم است کامپیوتر شما بداند که چه طور باید کدها را بخواند.
وقتی یک فایل را اجرا میکنید، کامپیوتر شما باید بداند که با کدهای موجود در آن چه کار باید بکند. لذا قبل از این که آن فایل را اجرا کنید، کمی تحقیق کنید و ببینید برای اجرای آن فایل باید چه نرم افزاری را نصب کنید.
میتوانید نرمافزاری تهیه کنید که تمام چیزهای موردنیاز شما را یکجا در اختیارتان قرار دهد.
بعد از این که زبانی را که میخواهید یادبگیرید، انتخاب کردید و کار ساخت برنامههای پیچیدهتر را شروع کردید، به یک IDE یا Integrated Development Environment (محیط توسعه یکپارچه) نیاز خواهید داشت.
IDE ،امکانی را برای ویرایش کدهای شما در اختیارتان قرار میدهد. میتوانید آن را اجرا کنید و فایل نهایی موردنیاز خود را در داخل آن ایجاد کنید. البته استفاده از IDE الزامی نیست ولی باعث سادهتر شدن کارها میشود.
کنسول را درک کنید.
احتمالاً تا به امروز برای استفاده از کامپیوترتان از یک رابط کاربر خوش ترکیب و زیبا استفاده میکردید. نام دیگر آن GUI یا Graphic User Interface (رابط گرافیکی کاربر) است. اما حال که قصد دارید برنامهنویس بشوید، این رابط به شما کمک میکند که از قدرت یک پنجره سیاه رنگ استفاده کنید: این پنجره سیاهرنگ، کنسول نام دارد (یک رابط خط فرمان). تعامل با این پنجره، کار سختی نیست ولی احتمالاً کمی نا آشنا به نظر خواهد رسید. هرچه بیشتر با پنجره کنسول آشنا شوید، بهتر است.
به اجتماعاتی که در مورد نحوه شروع آموزش برنامه نویسی بحث میکنند، بپیوندید.
حال که با مبانی آشنا شدهاید، زمان آن است که وارد جزئیات شوید. در شبکههای اجتماعی و اینترنت، مکانهای متعددی وجود دارد که در آنها میتوانید سؤالات خود را مطرح کنید و در مورد بهترین راهکارهای تمرین، اطلاعات کسب کنید. پیوستن به این جوامع، واقعاً میتواند شما را به ادامه راه، تشویق کند و در مواقعی که احساس سردرگمی میکنید، شما را راهنمایی کند.
در اینجا چهار روش خوب برای پیوستن به این جوامع را ذکر میکنیم:
1- Quera.ir : جامعه برنامهنویسان ایران علاوه بر ارائه رایگان موضوعات مرتبط با برنامهنویسی، جامعهای متمرکز بر موضوعبرنامهنویسی است. در این مکان مدرسین برنامهنویسی، کلاسهایی را برای خود تعریف کرده و دانشجویان خود را به کلاس خود اضافه میکنند. یک بخش سؤالات نیز در آنجا وجود دارد که میتوانید در میان بانک اطلاعاتی سؤالات مطرح شده، به دنبال پاسخ سؤالات خود بگردید. ضمن این که بخش جذاب مسابقه نیز حول موضوعات و چالشهای برنامهنویسی فعالیت میکند.
2- barnamenevisan.ir : منابع بسیار متعددی برای خودآموزی برنامهنویسی در این محل وجود دارد.
4- Stack Overflow : هرگاه با مشکلی مواجه شدید، بسیار محتمل است که شخص دیگری پیش از شما آن مشکل را حل کرده باشد. Stack Overflow یکی از بهترین فرومهاییست که در آن میتوانید به این قبیل راه حلها دست پیدا کنید.
با سؤالات ساده شروع کنید و اجازه بدهید، جامعه مورد نظر به سؤالات شما و خود شما عادت کند. سوال خود را طوری طرح کنید که درک آن برای دیگران ساده باشد. خود را به مرور خود را در جامعه برنامهنویسان حل کنید تا بتوانید از دوستان برنامهنوستان کمک بگیرید.
در مورد شروع آموزش برنامه نویسی، کتاب بخوانید.
کتابهایی که حول موضوع شروع برنامه نویسی بحث میکنند، بسیارند. البته خواندن کتاب میتواند در درک تئوری کدنویسی بسیار مفید واقع شود ولی مسأله این است که وقتی گیر میکنید، بسیار مشکل است که از یک کتاب انتظار داشته باشید کمکتان کند. کتاب خواندن برای دریافت ایده و آشنایی با مفاهیم یا به طور خلاصه، مواقعی که از کامپیوتر خود دور هستید، بسیار مفید است، ولی بدون تمرین مداوم ممکن است به نقطه دلسردی کامل نزدیک شوید. در گیتهاب میتوانید فهرستی از کتابهای رایگان در این حوزه را دریافت کنید.
هرگز به کتابهایی که ادعا میکنند چیزی را در 24 ساعت به شما آموزش میدهند، اعتماد نکنید.
کدنویسی، زمان میخواهد. شما نمیتوانید در یک روز، یک زبان برنامهنویسی کامل را یاد بگیرید. بهتر است دنبال کتابهایی باشید که قالب زمانی واقعبینانهای را به شما پیشنهاد میکنند. یکی از کتابهای خوبی که میتواند واقعاً به شما کمک کند، کتابهای خودآموز انتشارات Sams است که توسط Bradley L Jones نوشته شدهاند.
چه طور برنامه نویسی را در یوتیوب بیاموزیم؟
منابع آموزشی یوتیوب در مورد نحوه شروع برنامه نویسی، زیاد نیست. شاید استفاده از یوتیوب در مقایسه با خواندن کتاب، روش جذابتری باشد ولی معمولاً منابع یوتیوب، سطح بالاتری نسبت به کتابهای این حوزه دارند. برای شروع، این منابع را پیشنهاد میکنیم:
- Crash Course Computer Science : این سری مطالب آموزشی به نحوه برنامهنویسی اختصاص ندارد ولی در مورد عملکرد سیستم عامل و سختافزارها نقطه دید مفیدی را در اختیار شما قرار میدهند. هر قسمت، حدود 10 دقیقه است و با سرعت نسبتاً بالایی میتوانید نحوه عملکرد هماهنگ کامپیوتر و کدها را درک کنید.
- The Coding Train : تمرکز این نمایش سرگرمکننده، روی Python است و عملکرد یک برنامهنویس واقعی را در عمل نشان میدهد. این برنامهنویس سعی میکند در ده دقیقه، یک برنامه ساده بنویسد و دیدن این نمایش، خالی از لطف نیست. البته بهتر است این ویدیوها را بعد از آشنایی با اصطلاحات اولیه کدنویسی، تماشا کنید.
از بازی برای شروع آموزش برنامه نویسی استفاده کنید.
بعد از این که کمی در مورد کدنویسی اطلاعات کسب کردید و چند برنامه کوچک نوشتید، زمان تمرین فرا میرسد. حالا زمان آن است که به دنبال بازیهای کدنویسی بروید. این بازیها مثل پازل عمل میکنند که شما را در نزدیک شدن به مسائل برنامهنویسی به چالش میکشند. البته این بازیها برای تازهکارهایی که هرگز کدنویسی نکردهاند، مناسب نیست و برای متوسطها مناسب است. بعضی از این بازیها عبارتند از:
- Code Combat : این بازی، مفاهیم علوم کامپیوتر را به آهستگی مرور میکند.
- CodinGame : بعد از این که درک بهتری از مفاهیم علوم کامپیوتر پیدا کردید، این بازی به حل مشکلات زبانهای خاص میپردازد.
- Code Wars : مستقیم به سراغ مشکلات برنامهنویسی و فرایند عیبیابی (Debugging) نرمافزار میرود.
بهترین ایده برای شروع برنامهنویسی: توسعه فرانتاند
برای شروع، سعی کنید پروژه سادهای را برای خود تعریف کنید. مثلاً با ساخت یک محاسبهگر بودجه، زندگی را برای خودتان و دیگران، سادهتر کنید یا مثلاً تلاش کنید بازی قدیمی Hangman را از نو بسازید. هرقدر روی اهمیت این موضوع تأکید کنیم، کم است. لذا قبل از این که کتابی را برای خواندن انتخاب کنید یا سعی کنید زبان برنامهنویسی به خصوصی را انتخاب کنید، ابتدا ایده مناسب را پیدا کنید.
اگر هیچ ایدهای در این زمینه به ذهنتان نمیرسد، نگران نباشید چون بهترین ایده را همین حالا به شما معرفی میکنیم:
وقتی نوشتن اولین کدهای HTML و CSS موردنیاز برای ساخت صفحات وب را شروع میکنید، خروجی کار خود را به صورت صفحات وب آشنایی که بارها قبلاً با آنها سر و کار داشتهاید، مشاهده میکنید. این تجربه، برای افراد مبتدی بسیار لذت بخش است چرا که پیش از این نمیدانستند صفحات وب، چگونه ساخته میشوند. این تجربه انگیزهبخش باعث میشود گامهای بعدی را برای بدل شدن به یک توسعهدهنده فرانتاند، با انگیزه و قدرت بسیار بیشتری دنبال کنید.
بعد از این که موفق شدید، بخشهای استاتیک (ثابت) یک صفحه وب را به عنوان خروجی اولین تجربه کدنویسی خود مشاهده کنید، زمان آن است که به بخشهای داینامیک صفحات وب فکر کنید. این که تحرکات و تعاملات وب، چگونه ساخته میشوند؟
هر چه حس کنجکاوری شما برای یافتن پاسخ سؤالاتتان بیشتر باشد، انگیزه شما برای ادامه راه بیشتر میشود. حالا زمان آن است که با جاوااسکریپت آشنا شوید و به دنیای واقعی برنامهنویسی قدم بگذارید. در این مرحله، مشکل رایجی که بین فراگیران وجوددارد، مشکلات ذهنی ناشی از چالشهای برنامهنویسی است. در مقابل این مشکلات، اگر از این چالشها لذت ببرید، زمان بیشتری را صرف این کار میکنید و هر چه زمان بیشتری صرف کنید، زودتر به نتیجه میرسید.
اگر به لحاظ زمانی با محدودیت مواجهید، یک بوتکمپ برنامهنویسی حرفهای میتواند در کمترین زمان، شما را به هدفتان نزدیک کند. بوتکمپی که توسط برنامهنویسهای حرفهای شاغل در شرکتهای بزرگ اداره میشود، قطعاً میتواند بهترین نقطه شروع برای ورود به دنیای برنامهنویسی باشد. در واقع، شرکت در چنین بوتکمپی به معنای ورود به دنیای برنامهنویسی است.