در سال ۲۰۱۷ چه زبانی یاد بگیریم؟
خیلی از افراد برای سال جدید کسب کردن مهارتها یا تجربه یک موقعیت شغلی جدید را به عنوان هدف خود قرار میدهند. چندین منبع برای به دست آوردن آماری در مورد “بهترین زبان” وجود دارد. در این مطلب این موضوع را بررسی میکنیم.
بیش از ۵۶۰۰۰ توسعهدهنده از ۱۷۳ کشور نظرسنجی استک اورفلو را در سال ۲۰۱۶ پر کردند. بیشترین تکنولوژیهای مورد استفاده آنان به شرح زیر است:
JavaScript — 55.4%
SQL — 49.1%
Java — 36.3%
C# — 30.9%
PHP — 25.9%
Python — 24.9%
C++ — 19.4%
AngularJS — 17.9% (JavaScript framework)
Node.js — 17.2% (server-side JavaScript)
C — 15.5%
در این نظرسنجی در مورد چیزی که بیشتر از همه به آن علاقه دارند هم سوال شده است:
Rust — 79.1%
Swift — 72.1%
F# — 70.7%
Scala — 69.4%
Go — 68.7%
Clojure — 66.7%
React — 66.0%
Haskell — 64.7%
Python — 62.5%
C# — 62.0%
و چیزی که بیش از همه از آن بیم دارند و نگرانند:
Visual Basic — 79.5%
WordPress — 74.3%
Matlab — 72.8%
Sharepoint — 72.1%
CoffeeScript — 71.0%
LAMP — 68.7% (Linux, Apache, MySQL, PHP)
Cordova — 66.9%
Salesforce — 65.4%
Perl — 61.3%
SQL — 60.3%
و اما مهمترین سوال، تکنولوژیهایی که به یادگیری آنها علاقه دارند:
Android — 15.8%
Node.js — 14.8%
AngularJS — 13.4%
Python — 13.3%
JavaScript — 11.9%
React — 9.2%
Swift — 8.7%
MongoDB — 8.1%
Arduino / Raspberry Pi — 8.0%
C++ — 8.0%
استک اورفلو علاوه بر این آماری از سوالها و جوابها و رایها در مورد برترین تکنولوژیها جمع آوری کرده است
JavaScript — 16.6%
Java — 14.7%
Android — 11.5%
Python — 11.4%
C# — 11.1%
PHP — 8.6%
jQuery — 6.7%
C++ — 6.6%
HTML — 6.6%
iOS — 6.3%
در PYPL نیز شاخصی از محبوبیت زبانهای برنامهنویسی بر اساس گوگل ترندز محاسبه شده است که آموزش چه زبانهایی بیشتر مورد جستجو است:
Java — 23.1%
Python — 14.4%
PHP — 9.7%
C# — 8.4%
JavaScript — 7.7%
C — 7.1%
C++ — 7.0%
Objective—C — 4.4%
R — 3.4%
Swift — 3.0%
در شاخص TIOBE در ژانویه ۲۰۱۷ هم رتبهبندی زیر از زبانهای برنامهنویسی در دست است:
Java — 17.3%
C — 9.3%
C++ — 6.3%
C# — 4.0%
Python — 3.5%
VisualBasic.NET — 3.0%
JavaScript — 2.9%
Perl — 2.7%
Assembly Language — 2.7%
PHP — 2.6%
بیشترین رشد در سال ۲۰۱۶ مربوط به زبان GO است که از هیچ به رتبه ۱۳ام رسیده است. جاوا نیز با وجود افت ۴.۱۹ درصد کماکان با فاصله زیادی اول است.
اما این آمارها چه به ما میگوید؟
نتایج با این که جالب اند اما اغلب متناقض هستند و متدهای جمعآوری اطلاعات هم محدودند و نظرسنجیها نیز جامعه خاصی را مخاطب قرار میدهند.
در بررسی بهترین زبان باید توجه کرد که کسی نیست که همه این زبانها را تجربه کرده باشد. ممکن است کسی دانش خوبی از چندتای آنها داشته باشد اما انتخاب بیطرفانهای نمیتواند داشته باشد. زبانی که یک توسعهدهنده هر روز از آن استفاده میکند را به سایرین ترجیح میدهد و مشتاقانه از آن دفاع میکند، وگرنه که به زبانی دیگر سوئیچ میکرد.
اما در حقیقت لازم است بدانید که واقعا نیازی به انتخاب بهترین زبان ندارید. یادگیری اصول هر زبان کافی است تا بعد از آن با یادگیری سینتکس هر زبان دیگر بتوانید آن را در موقعیت مناسب به کار ببندید. مسلما انتخاب زبان COBOL برای طراحی بازی iOS بهترین انتخاب نیست اما در موقعیتها متوجه خواهید شد چه زبانی را لازم است به کار ببندید و از آن بهره ببرید.
شاید سختترین مرحله از فرآیند یادگیری شروع کردن باشد!
افرادی هم هستند که تجربه برنامهنویسی دارند و با توجه به نقاط ضعف فعلی خود میتوانند ادامه کار را برای خود روشن کنند.
اگر زمان زیادی را به کار کردن با دادههای spreadsheet تلف میکنید شاید لازم باشد زبان ماکرو آن را یادبگیرید.
اگر یک سایت طراحی میکنید و از ظاهر آن ناراضی هستید، دانش خود در CSS را ارتقا دهید.
اگر یک برنامه سمت سرور مینویسید و نیاز به ذخیره اطلاعات دارید، SQL را بیاموزید.
کسانی که میپرسند چه زبانی لازم است یاد بگیرم احتمالا افرادی کاملا تازهکار در این حوزه هستند. درست مثل این است که بپرسند چه لباسی باید بپوشم؟ در مورد یک لباس لازم است سن، سلیقه، موقعیت، جنسیت، کشور، وضعیت آب و هوا و … مشخص شود. برای پیشنهاد یک زبان هم لازم است بدانیم:
آیا واقعا به برنامهنویسی علاقهمندید؟
چه مسالهای را میخواهید حل کنید؟
چه سختافزار و سیستمی در دسترس دارید؟
چقدر زمان و فرصت یادگیری دارید؟
و همه پارامترهای درگیر با موارد فوق…
هیچ کسی از خواب بیدار نمیشود و تصمیم بگیرد تا برای یک موقعیت شغلی حرفهای بدون هیچ پیشزمینهی برنامهنویسی اقدام کند. اگر واقعا به برنامهنویسی علاقهمند هستید یک پروژه کوچک انتخاب کنید، یک زبان برنامهنویسی انتخاب کنید و آموزشهای آن را دنبال کنید.
در ادامه از آموختن دست نکشید. اگر توسعهدهنده front-end هستید، یک نگاهی هم به آموزشهای back-end مثل PHP، Node.js یا هرچیزی که دوست دارید داشته باشید و در کنار آن کار با پایگاه داده SQL را نیز در مهارتهای خود قرار دهید.
اگر توسعهدهنده back-end هستید، HTML، CSS و JavaScript را یاد بگیرید کار کردن با فرمت دادهای مثل JSON نیز مفید و کارا خواهد بود.
امیدواریم موفق باشید و دیگر این چنین مقالات و مطالب را نخوانید و فقط شروع کنید!
منبع:
سلام
یه تشکر از مطلب شیواتون شاید بهترین بیان بین تمام سایت هایی که دیدم بود.
انگلیسی و حتما گواهینامه بگیرید (IELTS)