Топ-10 найпопулярніших мов програмування

Андрій Денисенко

У цій статті ми розглянемо чотири рейтинги, які складено з використанням різних підходів:

  • індекс TIOBE;
  • індекс PYPL;
  • результати опитування Stack Overflow (Stack Overflow Annual Developer Survey);
  • дослідження GitHub.

Які рейтинги існують

Перш ніж оприлюднити результати, розповімо, звідки беруть і як обробляють інформацію для складання рейтингів.

TIOBE

Рейтинг TIOBE (TIOBE Programming Community Index) — це рейтинг спільноти програмістів TIOBE. Він відображає частоту запитів про програмування мовою за схемою +"<language> programming" у 25 пошукових системах.

PYPL

Рейтинг PYPL (PopularitY of Programming Language Index) — це рейтинг популярності мов програмування. Він відображає, наскільки часто шукають у Google практичні посібники з мови (туторіали). Що частіше шукають посібник, то вищий рейтинг має мова програмування. Дані беруться із Google Trends.

Stack Overflow

Опитування Stack Overflow має визначити, які мови активно вивчають. У ньому брало участь понад 70 тис. розробників: і тих, хто ще починає опановувати програмування, і тих, хто підвищує кваліфікацію.

GitHub

Дослідження GitHub відображає найпоширеніші мови серед користувачів GitHub.

Короткий звіт за рейтингами

TIOBE

За рейтингом TIOBE найпопулярнішою мовою стала Python. А найстрімкіше набирає популярність C++ — частота запитів зросла на 4,62%.

За нею, за зростанням популярності запитів, йдуть C (+3,82 %) та Python (+2,78 %). Цікаво те, що мова C++ випередила мову Java.

Топ-10 мов програмування за рейтингом TIOBE

PYPL

Python — найпопулярніша мова у світі. За останні 5 років вона показала найбільший приріст популярності (7,8%), а найбільше втратила мова Java (-5,2 %).

ТОП-10 мов програмування за рейтингом PYPL

Stack Overflow

Опитування показало, що вже 10 років поспіль найпопулярнішою мовою програмування залишається JavaScript, тому що її найбільше вивчають.

HTML/CSS, JavaScript та Python найбільш популярні серед тих, хто ще навчається програмувати. Люди, які опановують програмування, частіше за професіоналів використовують Python (58 % на 44 %), C++ (35% на 20%) і C (32% на 17%).

Водночас вони рідше користуються SQL (38% та 53%), TypeScript (15% та 40%) та Bash/Shell (19% та 29%).

Топ-10 мов програмування за рейтингом Stack Overflow

Мова Частка
JavaScript 65,36%
HTML/CSS 55,08%
SQL 49,43%
Python 48,07%
TypeScript 34,83%
Java 33,27%
Bash/Shell 29,07%
C# 27,98%
C++ 22,55%
PHP 20,87%

GitHub

Серед користувачів GitHub мовою №1 залишається JavaScript.

Python упевнено утримує друге місце (з приростом 22,5%) за рахунок своєї універсальності, завдяки якій його можна використовувати в будь-яких сферах: розробці, освіті, машинному навчанні та обробці даних.

Найбільше зростання спостерігається в області IaC (інфраструктура як код) у мови HCL (Hashicorp Configuration Language).

TypeScript так само, як і кілька років до цього, утримує четверте місце.

Популярність PHP падає. Він зійшов на сходинку нижче: з шостого місця на сьоме.

Топ-10 мов програмування за рейтингом GitHub

Тепер про кожну з топ-10 мов програмування докладніше.

Python

Python є об’єктно-орієнтованою мовою програмування загального призначення. Вона широко застосовується для створення вебдодатків, обробки даних, штучного інтелекту/машинного навчання та в інших напрямках.

Python є інтерпретованою мовою. Вона дозволяє перевіряти фрагменти коду одразу, без компіляції. Це прискорює розробку та допомагає ефективніше інтегрувати системи.

Python є кросплатформною мовою. Написані на ній програми можуть працювати в різних операційних системах і у вигляді інтерпретованих сценаріїв, і у вигляді виконуваних файлів.

Врешті-решт, мова Python проста для опанування, її підтримує велика активна спільнота, а в інтернеті є багато ресурсів для її вивчення.

JavaScript

JavaScript (JS) — провідна мова всесвітньої павутини. Двигун JS є основним інструментом усіх сучасних веб-браузерів. Тому понад 95% онлайн-застосунків та вебсайтів використовують її як мову програмування фронтенду.

На JavaScript можна створювати динамічні інтерактивні інтерфейси, кросплатформне програмне забезпечення, мобільні програми та віджети, браузерні ігри й інші програми.

Водночас JS використовується у фулстек-розробці, бо виконується і в клієнті, і на сервері.

Основні переваги JS:

  • швидкий та простий кодинг;
  • широка функціональність;
  • велика колекція бібліотек і фреймворків.

Java

Java є популярною мовою програмування, яку використовують для розробки мобільних застосунків, вебзастосунків, застосунків для робочого столу, ігор, корпоративних застосунків, і це ще не повний перелік.

Java є кросплатформною мовою. Вона виконується віртуальними машинами, які створено для різних ОС, тому той самий код, написаний на ній, працюватиме на різних платформах.

Java, як і Python, має багато бібліотек з відкритим вихідним кодом і велику спільноту, в якій можна знайти підтримку з боку досвідчених програмістів.

Java підтримує передові практики програмування. Їх вивчення стане в нагоді для використання і в інших мовах програмування.

C#

C# — це об’єктно-орієнтована мова загального призначення. Її використовують для створення вебзастосунків, програм для робочого столу, мобільних пристроїв, ігор та іншого програмного забезпечення.

Синтаксис C# нагадує С/C++ та Java/JavaScript, тому її легко опанувати тим, хто знайомий з цими мовами.

C# є компонентно-орієнтованою мовою. Її мовні конструкції підтримують цю концепцію, завдяки чому мова C# є природною мовою створення та використання програмних компонентів.

C# створено для платформи .NET, вона компілюється в код на проміжній мові, який може взаємодіяти з кодом, який написано для тієї самої платформи мовами F#, Visual Basic і C++.

На додаток до вищесказаного — платформа .NET має безліч бібліотек. Їх розподілено за просторами імен, вони і надають такі можливості, як-от читання/запис файлів, робота з рядками, аналіз XML, надають платформи для створення вебзастосунків та елементи керування Windows Forms.

C

C є процедурною імперативною мовою програмування загального призначення. Її було створено в 1972 році для розробки операційної системи UNIX. Незважаючи на свій вік, мова C широко використовується і зараз.

Серед основних можливостей мови C — низькорівневий доступ до пам’яті, простий набір ключових слів та охайний стиль. Завдяки таким можливостям C підходить для системного програмування, наприклад, розробки операційних систем та компіляторів.

C дуже швидка порівняно з іншими мовами програмування, зокрема Java та Python.

Якщо ви знаєте С, то не матимете проблем із вивченням інших популярних мов програмування, наприклад Java, JavaScript, C++, C#, Python тощо завдяки подібному синтаксису.

C++

Мову C++ розроблено як розширення C, і синтаксис цих мов майже однаковий. На відміну від C, C++ підтримує класи та об’єкти. Це одна з найпоширеніших мов у розробці ігор. Її широко використовують для написання драйверів, керування апаратним забезпеченням, навчання та досліджень. Інтерфейс Windows написано на C++.

C++ є компільованою мовою загального призначення зі статичною типізацією. У ній поєднано можливості мов високого та низького рівнів, тому її називають мовою середнього рівня. C++ підтримує процедурне, об’єктно-орієнтоване та узагальнене програмування.

Зліт її популярності у 2022 році зумовлено, серед іншого, публікацією нових мовних стандартів з цікавими можливостями. Першою віхою став C++ 11. Цей стандарт було опубліковано 2011 року, і він став першою значною зміною з 1998 року. Другою віхою — стандарт C++ 20, у якому, зокрема, запроваджено модулі.

Можливо, завдяки цьому C++ утримуватиме свої позиції в рейтингу TIOBE.

PHP

PHP є абревіатурою від PHP: Hypertext Preprocessor (PHP). За допомогою PHP можна створювати динамічні вебсайти або вебпрограми, які зберігають контент у базах даних. З ним використовуються такі бази, як-от MySQL, PostgreSQL, Informix, Microsoft SQL Server, Oracle і Sybase.

Спочатку мова PHP була невеликим проєктом із відкритим вихідним кодом. Згодом більше користувачів стали розуміти, наскільки ця мова ефективна, і тоді вона отримала розвиток.

PHP є мовою сценаріїв. Її код вбудовується в код HTML і перетворюється на код на HTML на сервері.

PHP виконується досить швидко. Наприклад, модуль для Apache скомпільовано, за рахунок чого швидкість його виконання набагато більша, ніж під час інтерпретації коду. Запущений сервер MySQL виконує складні запити з об’ємними результатами у рекордні терміни.

R

R є мовою програмування й програмним середовищем для статистичного аналізу, створення графічних представлень і звітності. Її скомпільовані бінарні версії доступні для таких операційних систем, як Linux, Windows і Mac.

R надає розробникам безліч статистичних і графічних технологій (лінійне та нелінійне моделювання, статистичні тести, аналіз часових рядів, класифікацію, кластеризацію тощо).

Поміж інших, R має такі можливості:

  • ефективна обробка й зберігання даних;
  • набір операторів для обчислень на масивах, зокрема матрицях;
  • велика узгоджена колекція інструментів середнього рівня для аналізу даних;
  • графічні засоби для аналізу й візуалізації даних або безпосередньо на комп’ютері, або у вигляді роздруківки;
  • якісно розроблена, проста й ефективна мова програмування S з умовними операторами, циклами, користувацькими рекурсивними функціями та засобами введення-виведення.

Swift

Swift створено з метою розробки для iOS та OS X. Swift поєднує в собі найкращі риси C й Objective-C.

Swift використовується для розробки програмного забезпечення для телефонів, настільних комп’ютерів та інших пристроїв, які виконують код. Це безпечна, швидка й інтерактивна мова програмування.

Swift усуває безліч помилок програмування за рахунок застосування сучасних шаблонів:

  • змінні завжди ініціалізуються перед використанням;
  • індекси масивів перевіряються на помилки виходу за межі діапазону;
  • цілі числа перевіряються на переповнення;
  • необов’язкові значення гарантують явну обробку значень nil;
  • керування пам’яттю здійснюється автоматично;
  • обробка помилок забезпечує контрольоване відновлення під час непрогнозованих збоїв;
  • код на Swift компілюється та оптимізується, щоб повною мірою використати можливості сучасного обладнання.

Ruby

Ruby є мовою сценаріїв, яка працює на безлічі платформ, зокрема Windows, Mac OS та на різних варіантах UNIX. У Ruby поєднано риси Perl, Smalltalk, Eiffel, Ada та Lisp, а також збалансовано функціональне та імперативне програмування.

Серед можливостей Ruby:

  • обробка виняткових ситуацій, як у Java та Python;
  • збиральник сміття для об’єктів;
  • написання розширень для Ruby на C простіше, ніж Perl або Python, Ruby можна вбудовувати в ПЗ як мову сценаріїв;
  • Ruby може завантажувати розширення динамічно, якщо дозволяє ОС;
  • підтримка потоків виконання не залежить від ОС, тому на будь-якій платформі, на якій виконується Ruby, можна користуватися багатопоточністю, незалежно від того, чи підтримує її ОС, навіть у MS-DOS!

TypeScript

TypeScript є надбудовою над JavaScript, яка забезпечує підтримку статичної типізації, класів та інтерфейсів. Його компілятор приймає такий код і перетворює його на JavaScript. На TypeScript написано платформу Angular 2.0.

Коли ви опануєте TypeScript, ви зможете писати програми з підтримкою ООП та компілювати їх у JavaScript і для серверної, так і для клієнтської частини.

Програмісти, знайомі з ООП, легко опанують TypeScript. А знаючи TypeScript, вони зможуть набагато швидше розробляти вебзастосунки завдяки ефективній інструментальній підтримці.

Мови, що втрачають популярність

Жодна мова програмування не протримається вічно. Навіть найпопулярніші мови згодом втрачають позиції. Так відбувається, тому що розробники переходять на нові платформи та мови, з якими їм легко працювати. Нижче наведено деякі мови програмування, які втрачають популярність.

CoffeeScript

CoffeeScript — одна з найменш масивних мов, якусь колись було створено. Її використовували для написання коду клієнта, але мова JavaScript виявилася кращою, і мова CoffeeScript застаріла.

Ruby

Ruby широко використовують для створення вебзастосунків, обробки даних, автоматизації та в багатьох інших цілях. Python виявилася її серйозною конкуренткою з погляду зручності читання та безпеки коду, тому Ruby стала поступово застарівати і потрапила до списку мов програмування, які вимирають.

VBA

VBA була однією з найширше використовуваних мов програмування, але Microsoft більше не оновлює її, що свідчить про старіння VBA.

Objective C

Надмірність, складний синтаксис і застарілі бібліотеки Objective C стали причинами, через які розробники віддали перевагу Swift з її легкістю читання й простотою написання коду.

Perl

Perl є однією з найефективніших мов для роботи з текстом. Незважаючи на свою простоту й ефективність, Perl має один серйозний недолік. Ця мова не підтримує переносимість через модулі CPAN. Програми виконуються повільно та при кожній зміні їх необхідно інтерпретувати.

Haskell

Недоліки Haskell — відсутність повноцінної підтримки в IDE, складний синтаксис та крута крива входження. Тому розробники віддали перевагу іншим мовам, а Haskell опинилася серед мов, які вмирають.

Fortran

Fortran потрапила до списку мов програмування, які вмирають, тому що розробники перейшли на інші через відсутність у ній динамічної пам’яті, недостатню надійність та безпеку коду, який виявився вразливим для кібератак.

Erlang

Мова Erlang підтримувала банківську галузь, електронну комерцію, розробку комп’ютерних систем і сервіси миттєвого обміну повідомленнями. Через складні процедури налагодження та проблеми з розгортанням її стали використовувати дедалі менше.

Cobol

Програми мейнфреймів для бізнес-транзакцій, банківської справи та інших цілей створювали на COBOL. Але ця мова стала застарівати через складний синтаксис, повільну компіляцію й розгортання.

Це далеко не повний список мов програмування, які застаріли чи застарівають. До нього можна додати такі мови як Ada, LISP, Pascal, ALGOL і деякі інші.


Серед топ-10 мов програмування спостерігається така динаміка (за даними GitHub):

  • Java плавно втрачає популярність, поступаючись Python;
  • PHP з 2019 року спустилася з 4-го місця на 7-ме;
  • Ruby переживає ще більший спад популярності: з 2015 по 2018 рік вона перейшла з 5-го місця на 10-е.

Які мови має знати програміст

HTML і CSS

По суті, це не мови програмування. HTML визначає розмітку вебсторінки, а CSS — стилі елементів. Проте їх корисно знати для створення вебсторінок. Крім того, HTML і CSS можуть стати хорошим введенням у програмування.

Python

Python є однією з найпоширеніших мов програмування у світі. Це зумовлено її універсальністю.

Python дозволяє застосовувати різні підходи для досягнення цілей, зокрема процедурний, функціональний та об’єктно-орієнтований. Однією з найбільших переваг мови Python є її зручність для читання. Інтуїтивно зрозумілий синтаксис полегшує процес написання коду. А завдяки великій спільноті ви завжди можете отримати підтримку, наприклад, на Stack Overflow.

Python стане в нагоді, якщо ви хочете займатися розробкою серверної частини вебзастосунків і сайтів. Також цю мову широко застосовують у штучному інтелекті/машинному навчанні.

JavaScript

JavaScript, як і Python, є однією з найпопулярніших мов програмування. JavaScript використовують як для фронтенд-, так і для бекенд-розробки. До того ж, вона стає мовою розробки для інтернету речей (IoT). JavaScript разом із HTML і CSS вважають технологією, яку покладено в основу всесвітньої павутини.

Тому, якщо ви хочете пов’язати своє майбутнє з веброзробкою, обов’язково опановуйте JavaScript.

Java

Java є відмінною мовою для кросплатформенного програмування. На ній можна створювати різноманітні продукти: від серверних програм до мобільних ігор на Android.

Крім того, Java буде корисно вивчити завдяки тому, що в цій мові впроваджено передові практики розробки, які стануть у нагоді в роботі з будь-якою мовою.

Swift

Якщо ви хочете програмувати для Mac, мова Swift вам просто необхідна. Її розроблено Apple спеціально для використання з macOS, iOS, watchOS і tvOS. Крім того, Swift став невід’ємною частиною стеку IoT.

C++

C++ поєднує в собі переваги C і додає до них підтримку класів. Така парадигма підтримує процедурне, узагальнене та об’єктно-орієнтоване програмування, а також абстрагування даних.

Завдяки своїй швидкості мова C++ стала популярною мовою для створення програм, ігор та анімації.

C#

C# призначено для розробки застосунків на платформі .NET в ОС Windows. Це гнучка й проста для вивчення мова загального призначення з синтаксисом, що нагадує Java. Як і C++, C# часто використовують для розробки ігор та програм, особливо для ОС Windows.

R

Якщо ви збираєтеся займатися статистикою та обробкою даних, вивчіть мову програмування R. Вона має інструменти для статистичного аналізу, прогнозного моделювання, є інтуїтивно зрозумілою та ефективною.

Golang

Ця мова, яка більш широко відома як Go, нагадує своїм синтаксисом мову C. Go може виявитися складною для програмістів-початківців. Для тих, хто хоче розширити коло своїх навичок, Go буде простою та зрозумілою мовою, тим паче, що в ній лише 25 ключових слів.

Go стане в нагоді для проєктів з використанням розподілених мереж, хмарних сервісів та інших складних серверних технологій.

Висновки

Популярність мов програмування змінюється з часом. Корисно стежити за показниками, які відображають їхню популярність з різних точок зору. Тим, хто робить перші кроки у програмуванні, важливо визначитися з напрямком, у якому вони працюватимуть. Тим, хто бажає підвищити кваліфікацію, важливо дізнаватися про нові технології, які стають популярними, щоб розвиватися.

Рейтинги допомагають обрати напрямок навчання й розвитку, підказують, які мови та платформи варто опанувати. Залишайтеся в курсі поточної ситуації, щоб бути затребуваними і в короткостроковій, і у довгостроковій перспективах.

Останні статті

Айтівець Міноборони США понабирав кредитів і хотів продати рф секретну інформацію

32-річний розробник безпеки інформаційних систем Агентства національної безпеки Джарех Себастьян Далке отримав 22 роки в'язниці…

30.04.2024

Простий та дешевий. Українська Flytech запустила масове виробництво розвідувальних БПЛА ARES

Українська компанія Flytech представила розвідувальний безпілотний літальний апарат ARES. Основні його переваги — недорога ціна…

30.04.2024

Запрошуємо взяти участь у премії TechComms Award. Розкажіть про свій потужний PR-проєкт у сфері IT

MC.today разом з Асоціацією IT Ukraine і сервісом моніторингу та аналітики згадок у ЗМІ та…

30.04.2024

«Йдеться про потенціал мобілізації»: Україна не планує примусово повертати українців із ЄС

Україна не буде примусово повертати чоловіків призовного віку з-за кордону. Про це повідомила у Брюсселі…

30.04.2024

В ЗСУ з’явився жіночий підрозділ БПЛА — і вже можна проходити конкурсний відбір

В Збройних Силах України з'явився жіночий підрозділ з БПЛА. І вже проводиться конкурсний відбір до…

30.04.2024

GitHub на наступному тижні випустить Copilot Workplace — ШІ-помічника для розробників

GitHub анонсував Copilot Workspace, середовище розробки з використанням «агентів на базі Copilot». За задумкою, вони…

30.04.2024