Return to article

СРАВНИТЕЛЬНЫЙ АНАЛИЗ НАИБОЛЕЕ ПОПУЛЯРНЫХ СИ-ПОДОБНЫХ ЯЗЫКОВ ПРОГРАММИРОВАНИЯ

Таблица 1 - Сравнение языков программирования

Язык

C

C++

C#

Java

Rust

Год создания

1972

1985

2002

1995

2015

Парадигма

Процедурный

Мульти-парадигменный

ООП

ООП

Мульти-парадигменный

Тип трансляции

Компиляция

Компиляция

JIT-компиляция

(.NET Runtime)

JIT-компиляция

(часть JVM)

Компиляция

Типизация

Статическая слабая

Статическая слабая (с шаблонами – сильная)

Статическая сильная

Статическая сильная

Статическая сильная

Управление памятью

Ручное

Ручное + RAII

Автоматиче­ское (сборка мусора)

Автоматиче­ское (сборка мусора)

Владение + заим­ствование

Безопасность потоков

Требует руч­ной синхрони­за­ции

Возможны гонки данных

Возможны гонки данных

Возможны гонки данных

Компилятор не даст скомпи­лировать не­безопасный код

Скорость выполнения

Очень высо­кая

Очень высокая

Высокая

Высокая

Очень высокая (уровень С++)

Кроссплатформенность

Да (через переком­пиля­цию)

Да (через переком­пиля­цию)

Да (через JIT в .NET)

Да (JVM)

Да

Стандартная библиотека

Минимальная

Богатая (STL, алгоритмы, контейнеры)

Очень богатая (JDK)

Очень богатая

Небогатая (развивается)

Основное применение

ОС, драйверы

Игры, браузеры, высоконагружен­ное ПО

Приложе­ния под Windows, Unity, Web

Enterprise, Android, Backend

Системное ПО, блокчейн, веб-сервисы