در دنیای برنامه نویسی و توسعه نرم افزار حوزه های متنوع و بسیار زیادی داریم. برای اینکه بخواهیم حوزه کلی خودمان را انتخاب کنیم احتیاج است تا حدودی با آنها آشنا شویم و اطلاعاتی کسب کنیم.
۱. برنامه نویسی وب Web Programming
قبلا در مقاله برنامه نویسی چیست متوجه شدیم که برنامه ها، دستورات و اقداماتی هستند که ما مینویسیم و کامپیوتر قدم به قدم آنها را اجرا میکند تا به نتیجهای که میخواهیم برسیم. وب سایتها همان برنامه ها هستند ولی بر روی مرورگرها و سرور اجرا میشوند.
سرور server ، کامپیوتری است که وب سایتمان را روی آن بارگذاری میکنیم. سرورها ویژگیهای خاصی دارند، نسبت به کامپیوترهای خانگی ما خیلی قویتر و پرسرعتتر هستند و امکانات پیچیدهتر و بهتری دارند.
ما بعنوان برنامه نویس و توسعه دهنده وب، برنامههایی مینویسیم که روی این سرورها اجرا میشوند و نتیجه دلخواه ما را نمایش میدهند.
ساختن وب سایت ۲ بخش اساسی دارد:
۱. ظاهر سایت Front-end (چیزهایی که کاربر در صفحه سایت میبیند یا پنهان هستند و نمیبیند)
۲. سرور Back-end ( یکی از وظایفش پردازش و پاسخ مناسب به دستوراتی است که از بخش Front-end میآیند)
برای ساختن ظاهر سایت از موارد زیر استفاده میکنیم:
▪️ HTML
▪️ CSS
▪️ JavaScript
برای برنامه نویسی وب، بخش سرور، از زبانهای برنامه نویسی مختلفی میتوانیم استفاده کنیم، مثل:
▪️ JavaScript
▪️ Python
▪️ ASP.NET (.NET Core)
▪️ PHP
▪️ GoLang
▪️ Java
با توجه به نیاز افراد و کسب و کارها به داشتن وب سایت و تغییر فرهنگ مردم برای خرید آنلاین، برنامه نویسی وب یکی از پرطرفدارترین، پرکاربردترین و پردرآمدترین حوزههای برنامه نویسی است.
حداقل تا ده سال آینده بازار کار برنامه نویس وب در همه جای دنیا تضمین شده است.
۲. برنامه نویسی موبایل Mobile Programming
برنامه نویسی برای موبایل دو حوزه اصلی دارد:
۱. اندروید
۲. iOS
اندروید
دستگاههای اندرویدی حدود ۷۰ درصد و دستگاههای iOS کمتر از ۳۰ درصد بازار را از آن خود کردهاند. درصد خیلی کمی هم سیستم عاملهای دیگر هستند.
برای برنامه نویسی اندروید به مهارتهای زیر احتیاج داریم:
تسلط به هسته یکی از زبانهای برنامه نویسی مثل: کاتلین Kotlin و جاوا Java.
چندین زبان برنامه نویسی دیگر هستند که میتوانیم از آنها برای ساخت اپلیکیشنهای موبایل استفاده کنیم، مثل: پایتونPython ، جاوا اسکریپت JavaScript، سی شارپ #C و …
اما هر زبان برنامه نویسی را برای منظوری ساختهاند. نباید در تلهی همه کاره بودن زبانها گیر کنیم. اینکه با #C همه کار میتوانیم انجام بدهیم، یا با Java تقریبا هرچیزی که میخواهیم را میسازیم بیشتر جنبه تبلیغاتی دارد و در عمل این تقریبا امکانپذیر نیست یا اگر هم بشود مشکلات زیادی ایجاد میکند.
پس یادمان باشد هیچ زبان برنامه نویسی همهکاره و بهتر از بقیه نیست. هر کدام از این تکنولوژیها برای هدفی، خوب و عالی هستند.
هسته سیستمعامل اندروید، لینوکس است و لینوکس با زبان C نوشته شده است.
چون زبان Java از روی زبان C ساخته شده است گزینه بسیار خوبی برای برنامه نویسی برای اندروید است.
اما Kotlin، گوگل برای انحصار بیشتر و رفع نواقصی که در جاوا (برای برنامه نویسی اندروید) وجود داشت زبان مخصوص خودش را ارائه کرد.
ظاهرا گوگل تمرکز بیشتری روی Kotlin دارد و برنامه های خوبی برایش چیده است.
تنها مزیت Java نسبت به Kotlin این است که اگر Kotlin یاد بگیرید فعلا فقط در زمینه برنامه نویسی اندروید میتوانید فعالیت کنید و اگر احتمالا بخواهید در آینده وارد حوزههای دیگر برنامه نویسی شوید باید سراغ زبانهای دیگر بروید. اما با جاوا و دانشی که در این زمینه دارید به سرعت میتوانید در حوزههای دیگر هم فعالیت کنید.
iOS
تا قبل از اینکه اپل برای تلفنهای همراه خودش زبان برنامه نویسی رسمی و اختصاصی تولید کند تمام برنامههای iOS به زبان برنامه نویسی Objective-C نوشته میشدند.
اما از سال ۲۰۱۴ سوئیفت Swift منتشر شد. هرچند که Swift توسط Objective-C نوشته شده است اما درست مانند گوگل که زبان اختصاصی خودش با امکانات و امنیت بیشتر را ارائه داد، اپل هم این کار را انجام داد تا از آن به بعد برای appleTV، iOS، مک اینتاش macOS و ساعت appleWatch از این زبان برنامه نویسی استفاده شود.
۳. برنامه نویسی دسکتاپ Desktop Programming
برنامه نویسی دسکتاپ یعنی تولید نرمافزار (مثل نرمافزار حسابداری، فتوشاپ یا آفیس) برای یکی از سیستم عاملهای ویندوز، لینوکس یا مک اینتاش. به دلیل محبوبیت و استفاده زیاد ویندوز در ایران، معمولا بازار برنامه نویسی برای این سیستم عامل بیشتر است.
زبانهای برنامه نویسی برای ویندوز
در ایران، سی شارپ #C و دات نت .NET بسیار پر طرفدار هستند و اگر اینها را یاد بگیرید میتوانید به سرعت وارد بازار کار شوید.
محیط توسعه برنامههای ویندوزی که توسط مایکروسافت ساخته شده است ویژوال استودیو Visual Studio نام دارد. در نسخه رایگان این نرمافزار امکانات اولیه باز هستند اما اگر در فکر نوشتن نرمافزارهای بزرگ هستید باید لایسنس تهیه کنید و در آینده برای کامپوننتهایی که نیاز خواهید داشت باید هزینه پرداخت کنید. به همین دلیل خیلی از شرکتهای کوچک خارجی که مثل ما امکان استفاده از نرمافزار کرک شده ندارند، کمتر از Visual Studio استفاده میکنند.
اگر در فکر مهاجرت هستید و یا قصد دارید با بازار بیرون از ایران کار کنید جاوا Java گزینه بهتری است.
زبانهای برنامه نویسی و تکنولوژیهای متن باز open-source در دنیا محبوبیت بسیار زیادی دارند و Java یکی از محبوبترینها است.
زبان برنامه نویسی برای مک اینتاش
همانطور که در بالاتر اشاره شد، اپل سوئیفت Swift را بر اساس زبان برنامه نویسی Objective-C ساخته است و آنرا به صورت کامل پشتیبانی میکند، به همین دلیل بهترین انتخاب میتواند Swift باشد.
زبان برنامه نویسی برای لینوکس
اگر ابتدای راه هستید سراغ جاوا Java بروید. اگر تجربه چند ساله در برنامه نویسی دارید و تحمل یک زبان برنامه نویسی سخت و پیچیده را دارید میتوانید به C فکر کنید.
۴. یادگیری ماشین Machine Learning
یکی از حوزههایی که چند سال اخیر به شدت رشد کرده و آینده بسیار خوبی خواهد داشت یادگیری ماشین است. ما میتوانیم با استفاده از زبانهای برنامه نویسی و تکنولوژیهای دیگر کاری کنیم که ماشینها قدرت یادگیری داشته باشند و از شرایط و اتفاقهایی که برایشان میافتد چیز یاد بگیرند و هوشمند شوند.
امروزه اپلیکیشنها میدانند شما دقیقا دنبال چه چیزی هستید، چه رنگی دوست دارید، از چه حیواناتی خوشتان میآید و تقریبا دانش نزدیک به صد در صدی از شما و شخصیتتان دارند. این اطلاعات از خود ما و رفتارمان جمعآوری، دسته بندی و تحلیل میشوند. هربار که شما در شبکههای اجتماعی تصویری را لایک میکنید یا چیزی را به اشتراک میگذارید، آن اپلیکیشن یاد میگیرد که شما احتمالا از آن چیز خوشتان میآید و آنرا به خاطر میسپارد. اگر این رفتار را تکرار کنید، مطمئن میشود و از آن به بعد محتوای نزدیک به آن را به شما نمایش میدهد.
ماشینها از رفتار ما یاد میگیرند و متناسب با علایق ما رفتار میکنند. منظورمان از ماشین بعضی وقتها رباتها هستند، بعضی وقتها اپلیکیشنهایی مثل اینستاگرام و سایتهایی مثل یوتیوب و … هستند.
در حال حاضر پایتون Python پرطرفدارترین زبان برنامه نویسی برای Machine Learning میباشد.
نکته اینجاست که با یاد گرفتن پایتون میتوانید همزمان روی چند حوزه کد نویسی کنید و لذت ببرید (هرچند که من توصیه نمیکنم).
۵. واقعیت مجازی/افزوده Virtual/Augmented Reality
تکنولوژی به قدری عجیب و غریب شده که میتوانیم یک عینک روی چشممان بگذاریم و وارد یک دنیای دیگر بشویم. دنیایی که خودمان ساختهایم. میتوانیم بدون اینکه حتی از منزل خارج شویم تقریبا به هر نقطهای از دنیا برویم و آنجا را با جزئیات کامل ببینیم. انگار که دقیقا در آن مکان هستیم. اینها ویژگیهای تکنولوژی هستند به اسم واقعیت مجازی، واقعیتی که واقعی نیست!
مغز ما با توجه به تصویری که از اطراف میبیند، گول میخورد. ما این تصویر را با استفاده از یک عینک مخصوص به مغز میدهیم و محیط غیر واقعی را طوری نمایش میدهیم که انگار محیط واقعی است.
اگر شما بخواهید یک میز ناهار خوری یا مبل برای منزل خود تهیه کنید احتمالا باید ابعاد مبل را با جایی که قرار است مبل قرار بگیرد بررسی کنید تا مبل مناسب را خریداری کنید. با توجه به اینکه چشم خطا دارد و نمیتواند اندازهها را درست و دقیق تشخیص دهد اگر این کار را چشمی انجام دهیم ممکن است اشتباه کنیم و مبل، برای جایی که در نظر گرفتهایم بیش از اندازه بزرگ باشد.
اما با واقعیت افزوده میتوانید این کار را با تلفن هوشمند یا تبلتتان انجام دهیم. به این صورت که اپلیکیشنی که برای واقعیت افزوده نوشته شده را باز میکنیم، با استفاده از دوربین گوشی به ما نشان میدهد که کالایی که میخواهیم بخریم دقیقا در منزل ما به چه شکل و اندازهای قرار خواهد گرفت.
یکی از کاربردهای واقعیت افزوده این است که میتواند در خریدهای اینترنتی که با جنس فیزیکی سروکار داریم بسیار مفید باشد.
میانگین امتیاز 4.6 / 5. تعداد آرا: 5
اولین نفری باشید که امتیاز می دهید