سعید صالحی

بهترین زبان های برنامه نویسی 2020 برای یادگیری (رتبه نهم ---> Go)

در حال حاضر حدود 600 زبان برنامه نویسی وجود دارد. تقاضا و محبوبیت هر کدام از آنها هر ساله در حال نوسان است. همچنین زبان های برنامه نویسی جدید با ویژگی های جذابی عرضه میشوند.

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

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

  • هم اکنون جزو زبان های اصلی و تثبیت شده در صنعت توسعه نرم افزار باشد.
  • برترین رتبه ها را در وبسایت های مشهور برنامه نویسی داشته باشد.
  • محبوبیت آن در حال افزایش یا پایدار باشد و یا کاهش چشمگیری نداشته باشد.
  • دارای مجموعه ی بزرگی از کتابخانه ها(libraries)، چارچوب ها(frameworks)، ابزارهای پشتیبانی(tooling support) باشد و جامعه ی بزرگی را شامل شود.
  • در بازار کار با حقوق بالایی پذیرفته شود.

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

9. Go

go

همانند سوئیفت، Go نیز زبان برنامه نویسی است که در دهه ی اخیر و توسط یکی از غول های فناوری به وجود آمده است.

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

مهندس های نرم افزار مشهور، Rob Pike (UTF-8) و Ken Thompson (UNIX OS) یک زبان برنامه نویسی جدید، عملگرا، آسان برای یادگیری و بسیار مقیاس پذیر سیستمی به نام Go را در گوگل ایجاد و در سال 2012 منتشر کردند. Go دارای یک زمان اجرا و جمع کننده زباله (چند مگابایت) است؛ اما این زمان اجرا در سیستم قابل اجرای تولید شده قرار گرفته است.

اگرچه Go مقداری کمبود ویژگی دارد، در همین مدت کوتاه تبدیل به یکی از زبان های اصلی برنامه نویسی شده است.

3 ویژگی اصلی:

  • Go دارای پشتیبانی سطح زبانی برای همزمانی است. او یک همزمانی ارسال پیام را بر پایه ی CSP و به وسیله ی Goroutine (lightweight Green thread) و Channel ارائه میدهد.

  • مهم ترین خصوصیت Go طراحی زبان و سادگی آن است؛ به طوری که میتوان گفت توانسته با موفقیت سادگی و سازنده بودن پایتون و قدرت C را با هم ترکیب کند.

  • Go دارای جمع کننده زباله جاسازی شده است (البته به اندازه جمع کننده زباله ی JVM بالغ نیست). توسعه دهندگان Go میتوانند برنامه های سیستمی را با ایمنی جاوا و پایتون بنویسند.

محبوبیت:

شبیه به سوئیفت، Go نیز همچنان پیشرفت چشمگیری را در محبوبیت خود میبیند.

در اکثر سایت های معتبر مقایسه زبان های برنامه نویسی، Go جایگاه بالایی دارد و از بسیاری از زبان های موجود پیشی گرفته است. در این جا رتبه بندی سایت TIOBE را در ژانویه ی 2020 میبینیم؛ جایی که Go رتبه ی چهاردهم را در اختیار دارد:

go-tiobe

بر اساس نظرسنجی سایت StackOverflow در سال 2019، Go در جای سیزدهم محبوب ترین تکنولوژی ها و دهم محبوب ترین زبان های برنامه نویسی قرار گرفته است:

go-stack

باز هم بنابر نتایج نظرسنجی سایت StackOverflow، زبان Go نهمین زبان برنامه نویسی است که توسعه دهندگان به آن علاقه دارند:

go-love

GitHub Octoverse نشان میدهد که Go یکی از ده زبان برتری است که به سرعت رشد کرده اند:

go-octav

افزایش شهرت Go در پنج سال گذشته به وسیله ی Google trends نیز با یک شیب صعودی بازتاب پیدا کرده است:

go-trend

بازار کار:

در بازار کار آمریکا، بر اساس رتبه بندی سایت Indeed، زبان Goبا 4 هزار جایگاه شغلی در ژانویه ی 2020 در رتبه دهم پر تقاضا ترین زبان ها و با حقوق سالیانه 93 هزار دلار در رده ی نهم بیشترین حقوق پرداختی در بین زبان های برنامه نویسی قرار دارد:

go-indeed

نظرسنجی StackOverflow در سال 2019، Go را به عنوان یکی از درآمدزا ترین زبان های برنامه نویسی نشان میدهد:

go-salary

کاربرد های اساسی:

  • برنامه نویسی سیستم

  • محاسبات بدون سرور

  • اپلیکیشن های تجاری

  • توسعه ی Cloud-Native

  • IoT

منابع: