- Низкоуровневые языки
- Среднеуровневые языки
- Высокоуровневые языки
Конечно, есть и другие типы, но эти являются основными. Разберемся в каждом из них. Логичнее было бы начать с низкоуровневых языков, но начнем с более популярного типа.
Высокий уровень
Высокоуровневый язык программирования - язык программирования, разработанный для быстроты и удобства использования программистом.
Такой тип языков используется повсеместно и является самым востребованным из всех. Считается, что люди использующие эти языки не только хорошо зарабатывают, но и являются частью будущего.
Плюсы:
- Задачи кажутся более простыми, благодаря абстракции.
- Синтаксис в целом простой, да и есть много литературы по любому языку этого типа.
- Огромное кол-во сторонних библиотек, совместно с обширной стандартной.
- В таком коде ты сам себе хозяин, благодаря динамике и скорости.
Минусы:
- Может увеличится кол-во ошибок из-за динамических структур.
- Память может стать проблематизированной, так как за ней можно впринипе не следить.
- Производительность гораздо ниже.
Плюсы:
- Задачи кажутся более простыми, благодаря абстракции.
- Синтаксис в целом простой, да и есть много литературы по любому языку этого типа.
- Огромное кол-во сторонних библиотек, совместно с обширной стандартной.
- В таком коде ты сам себе хозяин, благодаря динамике и скорости.
Минусы:
- Может увеличится кол-во ошибок из-за динамических структур.
- Память может стать проблематизированной, так как за ней можно впринипе не следить.
- Производительность гораздо ниже.
Ruby, Python, Javascript, Common Lisp
Средний уровень
Среднеуровневые языки часто используются для первых шагов в "мир программирования", так как они довольно несложны в изучении, но уже могут использоваться для каких-либо реальных проектов.
Плюсы:
- Необязательно париться насчет памяти.
- Обширные "родные" библиотеки, но при желании можно подключить сторонние.
- Компиляция происходит в "байт-код", подходящий для взаимодействия с другими языками.
- Хорошо служит несложным вводом в структуру программы.
Минусы:
- Всё еще нельзя забывать об устройстве памяти.
- Абстракций стало ненамного меньше.
- Требуется установленная среда выполнения программ.
- Реализация программы не такая простая.
- Обширные "родные" библиотеки, но при желании можно подключить сторонние.
- Компиляция происходит в "байт-код", подходящий для взаимодействия с другими языками.
- Хорошо служит несложным вводом в структуру программы.
Минусы:
- Всё еще нельзя забывать об устройстве памяти.
- Абстракций стало ненамного меньше.
- Требуется установленная среда выполнения программ.
- Реализация программы не такая простая.
Java, C#, Objective-C
Нижний уровень
Низкоуровневый язык программирования (язык программирования низкого уровня) — язык программирования, близкий к программированию непосредственно в машинных кодах используемого реального или виртуального (например, Java, Microsoft .NET) процессора.
Такие языки уже давно не являются популярными, если мы говорим о таких "стариках", как Assembler. Но на самом деле, если вы хотите понять, как устроены компьютер, взаимодействие данных и устройств между собой, то это самый правильный выбор. Итак:
Плюсы:
- Полный контроль над всеми устройствами компьютера.
- В отличие от других типов языков, вы имеете возможность делать с памятью то, что хотите.
- Поймете, как всё устроено изнутри и хорошо познакомитесь с таким понятием, как "абстракция".
- Узнаете всё об архитектуре и зачем это нужно.
Минусы:
- Не совсем понятный синтаксис.
- Не менее сложна будет реализация каждой задумки.
- Рыться в архитектуре и в процессах может обернуться опасностью для ваших устройств и файлов.
- Бедные стандартные библиотеки
- Полный контроль над всеми устройствами компьютера.
- В отличие от других типов языков, вы имеете возможность делать с памятью то, что хотите.
- Поймете, как всё устроено изнутри и хорошо познакомитесь с таким понятием, как "абстракция".
- Узнаете всё об архитектуре и зачем это нужно.
Минусы:
- Не совсем понятный синтаксис.
- Не менее сложна будет реализация каждой задумки.
- Рыться в архитектуре и в процессах может обернуться опасностью для ваших устройств и файлов.
- Бедные стандартные библиотеки
C++, C, Java-bytecode, Assembler
Теперь, зная возможности каждого языка можно выбрать себе один из них. Кажется, что проще взяться за высокоуровневый и не морочить голову памятью, архитектуру, но это ошибочное мнение, так как нельзя создавать, не понимая, как работает программа.
Хорошей очередностью может следовать к примеру такая цепочка для начинающих:
Pascal ==> Ruby
Языки немного схожи по синтаксису, но совсем разные по "мощности" и размаху.
Удачи в вашем выборе и предлагайте ваши варианты с достоинствами тех или иных языков!





