برنامهنویسی چیست و چگونه میتوان وارد این حیطه شد؟ علاقهمندانی که راههای مختلف را برای رسیدن به جواب آزمودهاند، همه از یک نقطه مشترک آغاز نکرده و حتی جذب نشدهاند. بیشک نکات مشترکی برای شروع به کار، توسط اساتید فن عنوان میشود، اما بهره بردن از تجربیات کاربران که آزمون و خطا را پشت سر گذاشته و حالا مجهز به تجربهای ارزشمندند، به سایرین کمک میکند تا راه کمهزینهتر و بهتری را برای یادگیری برنامهنویسی به زبانهای مختلف طی کنند.
نقطه آغاز تجربه یادگیری مهدی عرفانی با توضیح درباره چیستی برنامهنویسی است. او تلاش کرده برای کسانی که با برنامهنویسی آشنا نیستند به همراه مثال توضیحاتی ارائه کند. طبق تعریف اولیه او برنامهنویسی حل مسئله به کمک کامپیوتر است. به طوری که با این دانش، میتوان برای مسایل دشوار ریاضی پاسخهایی یافت.
مهدی عرفانی نوشته به این فکر کنید که قصد راهاندازی کسب و کار خانگی دارید. برای انجام این کار پستی و بلندی زیادی پیش روی شماست و انتهای مسیر هم معلوم نیست. یعنی نمیتوان حدس زد که در کسب و کارتان معروف خواهید شد یا خیر. اما شما میتوانید از یک برنامهنویس کمک بگیرید تا طراحی سایت شما را انجام بدهد.
یکی از مهمترین مسایل در طراحی سایت، نحوه طراحی سایت به گونهای است که بازدید بالایی داشته باشد. یک برنامهنویس میتواند طراحی سایت شما را با سئو مناسبی پیادهسازی کند تا میزان بازدید از سایت شما بالا باشد. با این کار، مجصولات و خدماتی که ارائه میدهید، بیشتر دیده میشوند و فروش بیشتری خواهدید داشت.
مهدی عرفانی تجربیات خود از یادگیری برنامهنویسی را اینگونه به اشتراک گذاشته:
من به حوزه گرافیک علاقهمند بودم و با برنامهنویسی آشنایی نداشتم. زمانی که به دنبال یک دوره آموزشی مناسب برای یادگیری Premiere میگشتم با «فرادرس» آشنا شده و در آن ثبتنام کردم. روزی در حال جستوجو و خواندن مقالههای مربوط به تکنولوژی بودم که با برنامهنویسی و طراحی سایت آشنا شدم.
از آن به بعد بیشتر جستوجو کردم تا بهترین زبان برنامهنویسی را پیدا کنم. برای شروع یادگیری برنامهنویسی دوره یادگیری HTML و CSS را خریداری کردم. کمکم علاقه من به برنامهنویسی بیشتر شد و با جاوااسکریپت آشنا شده و آن را یاد گرفتم. بعد از آن هم آموزش مقدماتی ریاکت نیتیو React Native برای طراحی نرمافزارهای اندروید وios را به همراه بسیاری از آموزشهای دیگر که تخفیف خورده بود، خریداری کردم.
مهدی عرفانی یادآوری کرده که اولین پیشنیاز برنامهنویسی علاقه به کامپیوتر و تکنولوژی است. اما مهمتر از آن داشتن پشتکار و تلاش برای یادگیری است. او توضیح داده اگر شما زود ناامید شوید، نمیتوانید با باگهای مختلف دست و پنجه نرم کنید و برنامهنویس خوبی شوید. دومین مورد این است که ایتدا جستوجوی زیادی انجام بدهید تا بدانید به کدام تکنولوژی علاقه بیشتری دارید.
مثل شخصی که به هوش مصنوعی علاقهمند است باید زبان برنامهنویسی مربوطه یاد بگیرد و اگر شخصی تمایل دارد اپلیکیشنهای موبایل را تهیه کند میتواند زبان جاوا یا کاتلین را یاد بگیرد. او توصیه کرده قبل از یادگیری برنامهنویسی بهتر است یک آشنایی اولیه با آن پیدا کنید. بنابراین پیشنهاد من به شما دیدن آموزش اصول و مبانی برنامهنویسی است که در سایت «فرادرس» به صورت رایگان وجود دارد.
مهدی عرفانی تاکید کرده اگر برنامهنویسی را به تازگی شروع کردهاید باید سعی کنید آن زبان را به بهترین شکل ممکن یاد بگیرید. به همین علت به فردی نیاز دارید که تجربه زیادی در این زمینه داشته باشد. اما این افراد مجرب را چطور میتوان پیدا کرد؟ پاسخی که مهدی عرفانی به مخاطبان داده این است که به نظر من «فرادرس» بهترین منبع برای یاد گرفتن برنامهنویسی است.
سپس از دلایلی گفته که «فرادرس» را برای آموزش دیدن انتخاب کرده است. نخستین دلیل، تخفیف در ایام مختلف است. دومین علت استفاده از وبسایت «فرادرس» اساتید مجرب آن و سومین دلیل، پشتیبانی بسیار قوی آن خوانده است. وجود دورههای آموزشی مختلف در زمینههای برنامهنویسی، گرافیک، دروس دانشگاهی و … دلیل دیگری است که مهدی عرفانی ذکر کرده است.
مهدی عرفانی سپس مهمترین مواردی که به ذهن سپرده را با مخاطب خود به اشتراک میگذارد. او میگوید مهمترین نکته این است که همراه با استاد کد بزنید و اکر دوره، پروژهمحور است سعی کنید پروژهها را با دانش خود پیش ببرید. در صورتی که به مشکل برخورد کردید، به ویدئوها برگردید. اگر دوره آموزشی پروژهمحور نیست با دانستههای خود یک پروژه بنویسید. این کار به تثبیت یادگیری مطلب کمک میکند.
آخرین نکته ای که به آن اشاره کرده این است که بعد از یادگیری برنامه نویسی بهتر است برای یادگیری گیت لب و گیت است چون بهم به کار پروژه نویسی می آید و هم برای استخدام در شرکت ها می توان از آن استفاده کرد. او در این قسمت لینک های موردنیاز برای آموزش را در اختیار علاقه مندان گذاشته است.
نخستین لینک مربوط به آموزش بازیسازی در پایتون با کتابخانه pyGame است. در پیش نمایش این آموزش توسط محمد جباری، کارشناس مهندسی کامپیوتر با گرایش سختافزار تهیه شده و پیشنیاز آن «آموزش برنامهنویسی پایتون Pyhton – مقدماتی است. آموزشی ۱۵ جلسهای که حدود ۴ ساعت فرصت نیاز دارد تا آن را ببینید.
در پیشنمایش آموزش بازیسازی در پایتون با کتابخانه pyGame نحوه نصب کتابخانه pyGame آموزش داده میشود. سپس اصول اولیه کدنویسی و معرفی متدهای مختلف و نحوه ایجاد پنجره برای بازی بیان میشود. طبق گفته مدرسُ این دوره آموزشی در یکی از درسها به نحوه رسم خط و شکلهای مختلف پرداخته میشود.
سپس مبحث انتخاب آیکون برای پنجره بازی تدریس میشود. نحوه ایجاد یک شکل متحرک در یکی دیگر از از درسهای این دوره آموزشی گنجانده شده. همچنین امکان ایجاد یک شکل با تغییر رنگ آموزش داده میشود. کار با کیبورد با استفاده از کتابخانه pyGame و ایجاد یک شکل با امکان حرکت توسط کلیدهای کیبورد عنوان میشود.
سپس کار با ماوس با کتابخانه pyGame و ایجاد یک شکل توسط ماوس آموزش داده میشود. نحوه اضافه کردن تصویر به بازی، بحث دیگری است که در این دوره آموزشی به آن پرداخته میشود و بعد تنظیم سرعت بازی به کاربر آموزش داده میشود. اضافه کردن فونت به صفحه بازی و نوشتن یک متن نیز در مراحل پایانی آموزش گنجانده شده.
چگونگی اضافه کردن صدا به بازی یکی دیگر از مواردی است که در این آموزش به آن پرداخته شده. برخورد اجسام در بازی و نحوه کنترل آن مورد بررسی قرار میگیرد. طبق گفته محمد جباری، مدرس این دوره آموزشی، طی گذراندن این دوره کاربر میتواند با استفاده از کتابخانه pyGame یک بازی را پیادهسازی کند.
دومین لینکی که مهدی عرفانی به دنبالکنندگان خود پیشنهاد کرده از آن بازدید کنند، آموزش رابط گرافیکی پای کیوت PyQt در پایتون است. این دوره آموزشی توسط فرزین عبدی، مدرس برنامهنویسی در ۹ جلسه ویدئویی تهیه شده. قبل از شروع این آموزش باید آموزش برنامهنویسی پایتون- مقدماتی و همچنین آموزش برنامهنویسی پایتون- تکمیلی- بخش اول را آموخته باشید.
این آموزشها به عنوان پیشنیاز این دوره آموزشی معرفی شده و در بین آموزشهای «فرادرس» وجود دارند. مدرس در پیشنمایش این دوره میگوید قرار است با استفاده از زبان برنامهنویسی پایتون و فریموورک پایکیوت، رابطهای گرافیکی پیشرفته و جذابی را طراحی کنیم. در قسمت پروژه به کاربر آموزش داده میشود تا فاکتور فروشی را برای فروشگاه طراحی و چاپ کند.
کاربر در انتهای این آموزش میتواند برنامههای دسکتاپ در زمینههای مختلف طراحی کند. آموزش دیگری که توسط این کاربر فرادرس معرفی شده، آموزش وردپرس مقدماتی است. این آموزش را سید رضا هاشمیان؛ کارشناس فناوری اطلاعات و برنامهنویس تحت وب تدریس کرده است.
آموزش مقدماتی ریاکتنیتیو React Native نیز جزو آموزشهایی است که مهدی عرفانی به مخاطبان معرفی کرده است. این آموزش توسط فرشید کرمی، مدرس دورههای برنامهنویسی وب و اپلیکیشن موبایل تهیه شده و حاوی دوازده درس است. در بخش پیشنیازهای این آموزش عنوان شده که کاربر باید قبلا با جاوا اسکریپت و اصول و مبانی برنامهنویسی آشنا شده باشد.
هر دو پیشنیاز نیز در دورههای آموزشی فرادرس موجود است و یکی از آنها (اصول و مبانی برنامهنویسی) به صورت رایگان در اختیار مخاطبان است. در پیش نمایش آموزش، فرشید کرمی با توضیحاتی برای مخاطب، او را به صورت اولیه با فریمورک React آشنا میکند. در بخش دیگری از تجربه یادگیری مهدی عرفانی لینک آموزش CSS و همچنین آموزش HTML آمده است.
آموزش CSS توسط محمد عبداللهی، کارشناس ارشد مهندسی فناوری اطلاعات تدریس شده و طی شانزده فصل به نحوه شروع کار با CSS، انتخابگرها، رنگها در CSS، پسزمینه در CSS، جعبهها، کادرها، حاشیهها، تنظیمات متن و بلاکهای متنی، استفاده از فونتها در CSS، نمایش بلاکهای متنی در صفحه، لیستها در CSS، تنظیمات جداول در CSS، انتخابگرها و ترکیبکنندهها، جلوههای دوبعدی و سه بعدی، پویانمایی در CSS، طراحی واکنشگرا و چینش صفحه با FlexBox میپردازد.
پیشنیاز آموزش مذکور، آموزش طراحی وب با HTML مقدماتی است. این آموزش نیز توسط محمد عبداللهی تدریس شده و شامل دوازده درس است. محتوای آموزشی ۲ ساعت و ۵۶ دقیقه است و در سرفصلهای عنوان شده این آموزش، جزئیات فراوانی درباره زبان HTML آمده است. همانطور که مهدی عرفانی ذکر کرده کاربران میتوانند با استفاده از لینک زیر به این محتوای آموزشی دست پیدا کنند.