زمانی که قصد داریم برنامه نویسی را شروع کنیم قطعا این سوال برای ما پیش می آید که چگونه و چطور شروع کنیم. خواندن این مقاله کمک میکند با ویژگیهای مختلفی که زبانهای برنامه نویسی دارند آشنا شویم. این کار باعث میشود راحتتر مسیرمان را انتخاب کنیم.
برنامهنویسی پلی مابین تخیل و واقعیت
قابلیتهای خارقالعادهی فناوریهای دیجیتال از همان اولین سالهای توسعهی فناوریها، پتانسیل بالای آنها برای تغییر همیشگی دنیای سنتی به مدرن را نشان میدادند و نهایتا فناوریهای دیجیتال، سومین انقلاب صنعتی را پدید آوردند.
توسعهی زبان های برنامه نویسی به ما امکان داد تا مرزهای خیال را پشت سر بگذاریم و فناوریهایی که تا همین چند دهه پیش تنها در فیلمهای علمی-تخیلی میدیدیم، به واقعیت تبدیل کنیم.
برای شروع برنامهنویسی به چه مهارتها و استعدادهایی نیاز داریم؟
برنامهنویسان، نیازمند مهارتهای متعددی هستند تا بتوانند مسئولیتهایی که به عهدهشان قرار میگیرد را به حرفهایترین شکل ممکن انجام دهند. بهترین برنامهنویسان علاوه بر دانش برنامهنویسی و مهارتهای تکنیکی باید دارای قابلیتهایی مثل تفکر خلاقانه و کار تیمی باشند. مهارتها و استعدادهای مورد نیاز یک برنامهنویس:
● تسلط کامل بر یک یا چند زبان برنامهنویسی
● یادگیری مفاهیم و کاربرد آنها برای حل مسائل دیگر
● مهارتهای ریاضیاتی
● مهارتهای حل مسئله
● مهارتهای ارتباطی
● مهارتهای نویسندگی
● کنجاو بودن
همانطور که میتوان از فهرست فوق نتیجه گرفت، برنامهنویسی علاوه بر مهارت، نیازمند استعدادها و ویژگیهای شخصیتی خاصی نیز میباشد.
مواردی که باید در انتخاب اولین زبان برنامهنویسی به آنها دقت داشته باشیم
این سوال که بهترین زبان برنامه نویسی چیست، از اساس اشتباه است زیرا هر زبان برنامهنویسی برای مقصودی خاص طراحی شده است. در انتخاب اولین زبان برنامهنویسی باید به نکات زیر توجه داشته باشیم:
● محیط زبان برنامهنویسی و نحوه اجرای آن
● شرکت عرضه کننده و پلتفرم
● میزان تقاضا
● ارتباطات با دیگر زبان های برنامه نویسی و اکوسیستمها
● چشم انداز زبان برنامهنویسی
پیشرفت در برنامهنویسی
تقریبا فهمیدیم که چگونه برنامه نویسی را شروع کنیم، حالا وقت این است که در برنامهنویسی پیشرفت کنیم. در اینجا میخواهیم راه پیشرفت در برنامهنویسی را طی چند گام ترسیم کنیم:
اهداف را مشخص کنیم
پیش از یادگیری اولین زبان برنامهنویسی باید اهدافی را تعیین کنیم تا میزان پیشرفت مان را براساس آنها بسنجیم. برای این کار میتوانیم این سوالات را از خودمان بپرسیم:
● چرا برنامهنویسی را شروع کردیم؟
● اهداف ما از برنامهنویسی چیست؟
● ما با تبدیل شدن به یک برنامهنویس، میخواهیم چه رویایی را دنبال کنیم؟
اهداف ما میتواند شامل ساخت یک وبسایت، استخدام شدن در یک شغل جدید، فریلنسینگ، دورکاری، به چالش کشیدن خودمان یا هر چیز دیگر باشد. ما باید هدفمان را به اهداف کوچکتر بشکنیم و روی رسیدن به هر کدام از آنها تمرکز کنیم.
تمرین زیاد
زبانهای برنامهنویسی نیز همانند هر زبان دیگری نوعی مهارت هستند و تمرین کردن مهمترین چیزی است که برای کسب هر مهارت لازم است. پس از این که متوجه شدیم که چگونه برنامه نویسی را شروع کنیم باید آموزش برنامه نویسی یک زبان را پشت سر بگذاریم و در طول آموزش و پس از آن، مدام تمرین کنیم.
سوال پرسیدن
نباید از سوال پرسیدن خجالت بکشیم! تا میتوانیم از دیگر برنامهنویسان چه آنهایی که از ما دانش بیشتری دارند و چه آنهایی که در مقایسه با ما تازهکار محسوب میشوند، باید سوال بپرسیم و با آنها برای نوشتن کدها مشورت کنیم.
مطالعه برنامهنویسی را فراموش نکنیم
دانش برنامهنویسی انتهایی ندارد و هرچقدر که بیاموزیم باز هم چیزهای بیشتری هستند که نمی دانیم. بنابراین نباید هرگز از خواندن کتابها، مقالات و اخبار برنامهنویسی غافل شویم و همیشه باید دانش مان را بهروز نگه داریم.
به اشتراک گذاشتن چیزی که می آموزیم
پس از اینکه آموختیم که چگونه برنامه نویسی را شروع کنیم و با تمرین توانستیم مهارت برنامهنویسی خودمان را تقویت کنیم، مهمترین کاری که باید انجام دهیم انتقال تجربیاتمان به دیگران است.
یکی از روشها برای اینکه در هر زمینهای دانش مان را تقویت کنیم، آموزشدادن آن به دیگران است. بنابراین اگر میخواهیم برنامهنویس بهتری شویم آموزش برنامه نویسی را نباید فراموش کنیم.
چگونه برنامهنویسی را به صورت حرفهای شروع کنیم
آموختن اینکه شروع برنامه نویسی چگونه است به این معنی نیست که آموختهایم چگونه به یک برنامهنویس حرفهای تبدیل شویم. بسیاری از سازمانهای برای استخدام برنامه نویس معیارهای بیشتری از تسلط بر یک زبان برنامهنویسی دارند. میتوان گفت که مهمترین اصول حرفهای شدن در برنامهنویسی به شرح زیر هستند:
● از ابزارهای کمکی که درک ما را از فرآیندهای پایهای کاهش میدهند استفاده نکنیم.
● خیلی به دنبال نوشتن یک کد ایدهآل نباشیم، زیرا ایدهآلگرایی وقت و انرژی زیادی از ما میگیرد و نهایتا به این نتیجه میرسیم که هیچ کد ایدهآلی وجود ندارد.
● خودمان را جای کاربری بگذاریم که قرار است از محصول ما استفاده کند.
● سعی کنیم در یک حوزه، متخصص شویم و از این شاخه به آن شاخه نپریم اما به حداقل دو یا سه زبان برنامهنویسی مسلط باشیم.
● تا جایی که ممکن است کدها را ساده بنویسیم.
● انعطافپذیر باشیم و خودمان را محدود به اصول و قواعد نکنیم.
انواع پلتفرمهای برنامه نویسی
برای اینکه به مبحث انواع پلتفرمها بپردازیم نیاز است که بدانیم پلتفرم چیست؟ پلتفرم در واقع بستری است که یه نرم افزار میتواند در آن اجرا بشود.
معمولا پلتفرم با سیستم عامل اشتباه گرفته میشود در حالی که پلتفرم به مجموع سخت افزار مثل موبایل، کامپیوترهای دسکتاپ یا لپتاپ، کنسولها و… و سیستم عاملهای مختلف مثل ویندوز ۳۲ بیت یا ۶۴ بیت، مکینتاش، اندروید، IOS و… گفته میشود.
با احتساب توضیحات بالا به طور کلی ما میتوانیم روی سه بستر یا پلتفرم مهم موبایل، وب و دسکتاپ برنامه بنویسیم.
برنامه نویسی موبایل
برنامههای موبایل معمولا به دو دسته برنامههای اندرویدی و IOSتقسیم میشوند.
برای نوشتن اپلیکیشنهای اندروید میتوانیم از زبانهای برنامه نویسی مثل جاوا، سی شارپ، کاتلین، سی پلاس پلاس و… استفاده کنیم اما در ایران زبان جاوا برای این کار رایج تر است به علاوه برای نوشتن اپلیکیشنهای IOS میتوانیم از زبان هایی مثل swift و objective c استفاده کنیم.
برنامه نویسی وب
برنامههای وب به دو دسته برنامههای سمت کاربر (client side) و برنامههای سمت سرور (server side) تقسیم میشوند.
برنامههای سمت کاربر برنامه هایی هستن که روی مرورگر کاربر اجرا میشوند و برنامههای سمت سرور برنامه هایی هستن که روی یک کامپیوتر سرور اجرا میشوند ونتایج اجرای آنها، به کامپیوتر کاربران نرم افزار ارسال میشه.
اگر قصد وارد شدن به حوزه برنامه نویسی وب را داریم برای انتخاب زبان برنامه نویسی اول باید مشخص کنیم که زبان را برای سمت کاربر میخواهیم یا سمت سرور. البته معمولا در موقع شروع کار برنامه نویسی وب اولین قدم ها چه قصد رفتن به سمت کلاینت را داشته باشیم و چه سمت سرور، یادگیری زبانهای html و css هست. چون این دو زبان پایه برنامه نویسی وب محسوب میشوند ولی بدون آنها هم شروع یادگیری برنامه نویسی سمت سرور وجود دارد.
برای حوزه سمت کاربر زبان جاوا اسکریپت و برای حوزه سمت سرور به تناسب نیاز و هدف گذاری میتوانیم بین زبانهای برنامه نویسی زیادی مثل PHP، جاوا اسکریپت، روبی و… زبان برنامه نویسی مورد علاقه مان را انتخاب کنیم.
برنامه نویسی دسکتاپ
برنامه نویسی دسکتاپ بیشتر برای نرم افزارهای ویندوز و مکینتاش به علاوه لینوکس اشاره میکند. میتوانیم با استفاده از زبان هایی مثل جاوا، سی شارپ، پایتون و… که اغلب کراس پلتفرم هستن برنامه بنویسیم.
نکتهی مهم این است که پس از یادگیری و حتی استخدام در حوزهی برنامهنویسی هرگز از آموختن و آموزشدادن دست نکشیم و پیوسته و سخت تمرین کنیم و اگر میخواهیم یک برنامهنویس حرفهای شویم اصول حرفهای شدن و حرفهای ماندن را از یاد نبریم.