خانه / کتابخانه و کتابدار 2.0 / آموزش و مهارتهای 2.0 / برترین زبان‌های برنامه‌نویسی سال ۲۰۱۷

برترین زبان‌های برنامه‌نویسی سال ۲۰۱۷

Python در رتبه نخست قرار گرفت و Swift نیز بین ۱۰ رتبه برتر قرار گرفت.
همگام با فرا رسیدن فصل تابستان، طبق خط­‌مشی مجله آی ­تریپل ای اسپکترم[۱] باید نتایج «چهارمین رتبه­‌بندی تعاملی» زبان­‌های برنامه‌نویسی را اعلام کنیم. تمام سعی ما برای رتبه‌­بندی زبان­‌های مختلف این است که بر مؤلفه‌های کلیدی و محبوب هر کدام توجه کنیم. برای انجام رتبه‌­بندی از چند منبع اطلاعاتی استفاده کرده­‌ایم: اولاً اطلاعات برنامه‌­ها و میزان محبوبیت آن­‌ها را از نیک دایکاپلس[۲]، یکی از روزنامه‌­نگاران در حوزه اطلاعات و داده­‌ها، دریافت کردیم، ثانیاً برای انتخاب معیارهای اندازه‌­گیری از ۱۰ منبع آنلاین استفاده کرده­‌ایم که در مجموع ۱۲ معیار برای ارزیابی زبان­‌های برنامه‌­نویسی معرفی کرده‌­اند. با ترکیب اطلاعات دایکاپلس و ۱۰ منبع آنلاین به رتبه‌­بندی نهایی دست یافته‌­ایم. مزیت خاصی که مدل تعاملی ما که آن را از دیگر رتبه­‌بندی­‌ها متفاوت می­‌کند، این است که به شما اجازه­ می‌­دهد خودتان هرکدام از این ۱۲ معیار را انتخاب کنید، هم­چنین درصد تأثیر هرکدام را مشخص نمایید و با هم ترکیب کنید؛ در نتیجه هر کسی می­‌تواند یک نوع رتبه­‌بندی شخصی بر اساس معیارهایی موردنظر خویش انجام دهد.

 برای انجام این رتبه‌­بندی چند پیش‌­زمینه مهم را در نظر گرفته­‌ایم: یک پیش‌فرض در نظر گرفتن خوانندگان همیشگی مجله، یک زمینه با تأکید بر زبان‌­های نوظهور، دیگر گزینه با در نظر گرفتن آنچه مدیران به دنبال آن می‌­گردند و در نهایت این­که در متن بازها (open source) چه زبانی پرطرفدار است. شما می­‌توانید بخش­‌های صنعتی را که نمی­‌خواهید فیلتر کنید یا یک رتبه‌­بندی کاملاً جدید بر اساس معیارهایی موردنظر خویش انجام دهید و هم­چنین رتبه­‌بندی امسال را با سال قبل مقایسه کنید. (اینجا)

با این اوصاف برای خوانندگان ثابت مجله کدام زبان‌­ها در رتبه ۱ تا ۱۰ قرار دارد؟Python به سیر صعودی خود از سال پیش ادامه داده و به رتبه ۱ رسیده است. با این حال هر چهار زبان اول، Python، C++، C و Java تقریباً همه به یک میزان از محبوبیت برخوردار هستند. در واقع در تحلیل دایکاپلس[۳] از میزان محبوبیت زبان‌­ها در میان شرکت­‌های کاریابی می­‌توان گفت که زبان C با اختلاف زیادی، بالاتر از Python قرار می­‌گیرد.

#C دوباره به رتبه پنجم بازگشت؛ رتبه­‌ای که زبان R پارسال از آن ربوده بود. Ruby به رتبه ۱۲ سقوط کرد اما با این وجود به Apple’s Swift شانس پیوستن با Google’s Go در رتبه ۱۰ را داده است که این اتفاق برای Swift بسیار شگفت‌انگیز است؛ چون از زمان ارائه آن فقط دو سال می‌­گذرد (فارغ از ۱۰ رتبه زبان برتر دیگر ارائه شده توسط اپل، Objective-C، دقیقاً برعکس Swift حرکت کرده و به رتبه ۲۶ رسیده است).

 برای دومین سال پیاپی است که زبان جدیدی به زبان­‌های رتبه‌­بندی شده اضافه نشده است. به نظر می­‌ر‌سد همگام با تلاش برنامه‌­نویسان برای ایجاد ابزارهایی در راستای برآورده کردن نیازها در حوزه فضای ابری، موبایل و نرم‌­افزارهای اطلاعاتی بزرگ، در حال رسیدن به یک دوره تحکیم و تقویت در کدگذاری زبان‌­ها هستیم.

 هنوز نمی‌­توان از تعدادی زبان عمومی و ثابت برای تمام برنامه‌­ها سخن به میان آورد؛ چون زبان­‌های قدیمی و رمزگشوده‌­ای وجود دارند که باز هم استفاده می‌­شوند. مثلاً Fortran مانند سال­‌های پیش درست در وسط جدول قرار گرفته و رتبه ۲۸ را به دست آورده یا Lisp در جایگاه ۴۰ می‌­باشند. پس زبان­ های قدیمی باز هم مورد علاقه بعضی از برنامه‌­نویسان قرار دارند. (و با این­که این یعنی تقریباً برای ورود به رتبه‌­­بندی ما آستانه خاصی وجود ندارد، اما من خوشحالم که می­بینم زبان قدیمی و مورد علاقه خودم، Forth؛ هنوز هم در جایگاه ۴۷ قرار دارد).

 با نگاهی به معیارهای ارزیابی مورد استفاده قرار گرفته برای پروژه­‌های متن باز (جایی که ممکن است نسبت به برنامه‌­های جدیدتر سوگیری اتفاق بیفتد)، می­بینیم که HTML در بین ۱۰ رتبه برتر قرار گرفته و از رتبه ۱۱ به ۸ رسیده است. (این فرصت خوبی است که پاسخمان را به افرادی که سال­‌های پیش اعتراض کرده‌­اند که HTML زبان برنامه‌­نویسی نیست؛ بلکه فقط نوعی نشانه­‌گذاری است، باز هم تکرار کنیم. ما در اسپکترم نوعی دیدگاه بسیار منعطف داریم نسبت به انتخاب این­که چه چیزی زبان برنامه‌نویسی هست و چه چیزی نیست. برنامه‌­نویسان از HTML برای دستور به کامپیوترها برای این­که چه کاری انجام دهند، استفاده می­‌کنند؛ بنابراین ما آن را جزو زبان­‌های برنامه‌نویسی به حساب می­‌آوریم. ما اصراری نداریم که مثلاً نظریه تمامیت تورینگ (Turing completeness[۴]) به‌عنوان آستانه­‌ای برای ظرفیت زبان­‌های برنامه‌نویسی در نظر گرفته شود و به نقطه اوج برسیم همان­طوری که سال گذشته، یکی از کاربران به نام جانی لین[۵] نیز اشاره کرد، HTML وقتی با CSS ترکیب شد، آن­قدر پیچیده شده است که هم‌اکنون به مرز تمامیت تورینگ ولو با اندکی آمیختگی رسیده است، رسیدن به این مرحله نیازمند یاری گرفتن از نظریه اتوماتای سلولی (ماشین سلولی)[۶] است.

نکته تکنیکی آخر: ما برای تقویت نتایج‌مان، در روش انجام رتبه‌­بندی بعضی تغییرات را اعمال کرده‌­ایم؛ مخصوصاً در مورد زبان­‌هایی که کمتر محبوب هستند؛ چون این تغییرات برای ارزیابی خیلی کوچک هستند و نسبت به انحراف آماری حساس هستند. ما داده‌­های سال پیش را با این سیستم رتبه‌­بندی جدید، دوباره ارزیابی کرده‌­ایم؛ بنابراین کسانی که به دنبال داده­‌های سال گذشته هستند می­‌توانند بین این دو سال مقایسه انجام دهند. این تغییر سیستم رتبه­‌بندی ممکن است به این منجر شود که بین رتبه‌بندی سال­‌های پیش به صورتی که الآن در حال نمایش است و رتبه­‌بندی اصلی نمایش داده شده در آن سال، کمی اختلاف دیده شود؛ اما این اختلاف­‌ها بسیار کوچک‌‌اند و به هیچ عنوان تأثیری بر رتبه پرطرفدارترین زبان­‌ها ندارد.

پانویس:      ­    
[۱]. IEEE Epectrum
[۲]. Nick Diakopoulos
[۳]. Diakopoulos
[۴]. نظریه تمامیت تورینگ که به آلن تورینگ منسوب است. کامپیوتر قادر به محاسبه و اجرای هر نوع برنامه‌ای هست. توانایی کامل ماشین برای پردازش محاسبات پیچیده…..
[۵]. Jonny Lin
[۶]. cellular automata
مدلی از ریاضیات گسسته توسط آلن تورینگ مطرح شد که براساس آن رایانه‌­ها می­توانند از طریق نرم‌افزار خود، قوانینی را در برگیرند که با آن خودشان را تکثیر کنند. مدلی است که از ترکیب دو یا چند بافت قادر به تولید ساختارهای پیچیده است.

منبع:  The 2017 Top Programming Languages

Share

درباره ی مجله ی کتابدار 2.0

پاسخ دهید

نشانی ایمیل شما منتشر نخواهد شد. بخش‌های موردنیاز علامت‌گذاری شده‌اند *