- ТРИБУНА УЧЁНОГО электронный научно-практический журнал
✒ ОПУБЛИКОВАТЬ СТАТЬЮ В НАШЕМ ЖУРНАЛЕ
ОПУБЛИКОВАТЬ СТАТЬЮ
-
•
РЕГИСТРАЦИЯ•ВХОД•
СОВРЕМЕННЫЕ ЯЗЫКИ ПРОГРАММИРОВАНИЯ И СФЕРЫ ИХ ПРИМЕНЕНИЯ
Статья опубликована в журнале за "Май 2022"
Автор(ы) статьи: Иванов Д.П., Баев А.А.
PDF файл статьиУДК 004.438 Иванов Данила Петрович Высшая школа кибертехнологий, математики и статистики Российский экономический университет им. Г.В. Плеханова Россия, г. Москва e-mail: baevaleks2903@gmail.com Баев Александр Артемович Высшая школа кибертехнологий, математики и статистики Российский экономический университет им. Г.В. Плеханова Россия, г. Москва СОВРЕМЕННЫЕ ЯЗЫКИ ПРОГРАММИРОВАНИЯ И СФЕРЫ ИХ ПРИМЕНЕНИЯ Аннотация: Данная статья посвящена рассмотрению вопросов сравнительного анализа, структуризации и классификации современных языков программирования - инструментов, позволивших достичь нынешнего уровня развития технологий и не останавливаться на достигнутой ступени технологического прогресса. Ключевые слова: программирование, разработка, информационные технологии, технологический прогресс, технологии, языки программирования, цифровизация, сферы применения. Ivanov Danila Petrovich Graduate School of Cybertechnology, Mathematics and Statistics Russian Economic University. G.V. Plekhanov Russia, Moscow Baev Alexander Artemovich Graduate School of Cybertechnology, Mathematics and Statistics Russian Economic University. G.V. Plekhanov Russia, Moscow MODERN PROGRAMMING LANGUAGES AND THEIR APPLICATIONS Abstract: This article is devoted to the consideration of the issues of comparative analysis, structuring and classification of modern programming languages - tools that made it possible to reach the current level of technology development and not stop at the achieved stage of technological progress. Key words: programming, development, information technologies, technological progress, technologies, programming languages, digitalization, scopes. 1 Журнал «Трибуна ученого» Выпуск 05/2022 https://tribune-scientists.ru Мир постоянно движется вперед, ни на секунду не жалея тех, кто не хочет идти с ним в такт. Картина сегодняшнего дня заключается в инновационных открытиях в сфере медицины, физики, экономики, IT. Общество постоянно совершенствуется. Это говорит о небывалом прогрессе, как социальном, так и технологическом. Именно технологический прогресс является сегодня одной из наиболее важных движущих сил современного мира. Настоящее время невозможно представить без информационных технологий, и, как следствие, без специалистов, ими владеющих. Для беспрепятственного обмена информацией и работы с информационными потоками, любой современный специалист должен уметь добывать, анализировать и грамотно применять полученную информацию. Выполнение данной задачи практически невозможно без использования компьютеров, телекоммуникаций и прочих новейших средств связи, работа с которыми включает в себя обращение к языкам программирования. Актуальность данной темы не уходит с повестки дня уже долгие годы, и обусловлена тем, что прогресс в области компьютерных технологий влечет за собой процесс появления и обновления разнообразных систем для записи алгоритмов. Речь идет о современных языках программирования. Итак, язык программирования – это система обозначений, служащая для точного описания программ или алгоритмов для компьютера. На сегодняшний день существует множество языков программирования. Это искусственные языки, отличающиеся от естественных языков лишь ограниченным числом «слов» и строгими правилами для записи команд. Таким образом, основные требования к языкам программирования, исходя из их особенностей, можно четко классифицировать. Пожалуй, одними из главных требований, предъявляемых к современным языкам программирования, являются их наглядность, модульность, единство, гибкость и однозначность. Как известно, алгоритм – последовательность команд, инструкций, описывающих порядок действий для достижения результата. В зависимости от Журнал «Трибуна ученого» Выпуск 05/2022 https://tribune-scientists.ru 2 степени детализации инструкций обычно определяется уровень языка программирования — чем меньше детализация, тем выше уровень языка. На основании этого критерия принято выделять следующие уровни языков программирования: 1. Языки низкого уровня • машинные; • машинно-ориентированные (ассемблеры); 2. Языки высокого уровня Языки низкого уровня — это языки, структура данных которых определяется форматом команд и данных машинного языка, а также архитектурой ЭВМ. Иными словами, языки, с помощью которых программист может «напрямую» обращаться к аппаратному функционалу компьютера. Что же такое машинные языки программирования? Машинный язык программирования – это система команд (набор кодов операций) конкретной вычислительной машины, которая интерпретируется непосредственно процессором, так как процессор способен понимать исключительно машинный код. Такой код, как правило, представлен в виде последовательности нулей и единиц - двоичного кода, либо же, может принимать шестнадцатеричный код. Характерными особенностями машинных языков программирования являются: ориентированность на использование конкретной ЭВМ, сложность в освоении, необходимость знания разработчиком архитектуры ЭВМ на должном уровне [2]. Одним из наиболее распространенных примеров языков программирования низкого уровня является язык ассемблера. Это низкоуровневый машинно-зависимый язык, в котором короткие мнемонические имена соответствуют отдельным машинным командам. Он используется для представления программ, написанных в машинном коде, в удобочитаемой форме. Журнал «Трибуна ученого» Выпуск 05/2022 https://tribune-scientists.ru 3 Таким образом, языки низкого уровня позволяют создавать эффективные и компактные программы, поскольку разработчик получает прямой доступ ко всем возможностям процессора. Такие языки часто используются для написания системных приложений, драйверов устройств, аппаратно-зависимых частей ядра операционной системы. Но, также стоит учитывать тот факт, что при работе с языками низкого уровня требуется хорошее понимание устройства компьютера, становится сложно отлаживать большие приложения, и полученную программу не удастся перенести на компьютер с другим типом процессора. Языки же высокого уровня – это средства записи компьютерных программ, обеспечивающие высокую скорость и удобство работы. Языки высокого уровня имитируют естественные языки, используя некоторые слова разговорного языка и общепринятые математические символы. Важным преимуществом высокоуровневых языков является то, что особенности конкретных компьютерных архитектур в них не учитываются. Иначе говоря, программа, написанная на таком языке, может выполняться на разных машинах. Также явным превосходством языков программирования этой категории является снижение количества ошибок, допускаемых разработчиком в процессе написания программы. Таким образом, языки высокого уровня в значительной мере являются машинно-независимыми и преимущественно используются для создания ПО для компьютеров и вычислительных устройств с большим объемом памяти. Также высокоуровневые языки упрощают работу программиста и повышают надежность создаваемых программ. Анализ современных языков программирования и сфер их применения [1] Так как в современном мире насчитывается несколько сотен языков программирования, для каждого из них существует сфера применения. Наиболее популярными на сегодняшний день являются: • Web-разработка • Разработка desktop-приложений 4 Журнал «Трибуна ученого» Выпуск 05/2022 https://tribune-scientists.ru • Разработка мобильных приложений • Системное программирование • DevOps • Разработка игр • Программирование баз данных • Data Science и машинное обучение • Automation QA • Программирование для финансовых и бухгалтерских продуктов Что же касается непосредственно языков программирования, то наиболее популярными и часто используемыми в современном мире являются: 1. С++ [3] Язык программирования высокого уровня, созданный на базе языка Си. C++ является высокоуровневым компилируемым языком программирования, подходящим для разработки различных приложений. Используется при создании операционных систем, драйверов, утилит. Данный язык также широко применяется для разработки игр с интенсивной визуализацией. Большое внимание в данном языке уделено поддержке объектно-ориентированного и обобщённого программирования. Благодаря кроссплатформенным средствам разработки, C++ также используется для создания настольных приложений. Таким образом, язык программирования C++ активно используется в следующих сферах: • Системное программирование • Разработка игр • Разработка десктопных и кроссплатформенных приложений 2. Python Язык программирования высокого уровня, отличающийся мощностью и простотой изучения. Применяется для написания прикладных приложений и веб- разработки. Синтаксис данного языка максимально облегчен, что дает возможность начинающим разработчикам выучить его за относительно Журнал «Трибуна ученого» Выпуск 05/2022 https://tribune-scientists.ru 5 небольшой промежуток времени. Основной акцент данного языка сделан на читаемость кода и производительность разработчика. Python является одним из самых многофункциональных языков программирования, что влечет за собой стремительный рост количества областей применения языка. Одной из наиболее широко распространенных областей применения является автоматизация. Как правило, это направления Automation QA, DevOps, Data Science. В связи с этим, Python обладает огромным количеством готовых библиотек, удобных в использовании. Также ключевой областью применения языка является веб-разработка. Python входит в тройку языков (Python, PHP, Ruby), которые обладают развитыми экосистемами быстрой разработки веб-проектов. Ключевыми платформами здесь являются: Django, Tornado, Twisted, Flask, Aiohttp. Итак, основное преимущество Python заключается в том, что он позволяет быстро разрабатывать комплексные веб-приложения, имеет огромное число качественных модулей, хорошо подходит для сервисов статистики и аналитики. Таким образом, язык программирования Python активно используется в следующих сферах: • Web-разработка • Data Science и машинное обучение • Automation QA • DevOps 3. PHP Скриптовый язык программирования общего назначения. Благодаря возможности применения PHP на любой операционной системе, скорости выполнения, функциональности и простоте, используется в большинстве проектов разработки веб-сайтов, поддерживается подавляющим большинством хостинг-провайдеров. Код PHP можно внедрять непосредственно в HTML код. С помощью данного языка можно создавать динамические сайты, характеризующиеся конкретной логикой поведения, а также практически Журнал «Трибуна ученого» Выпуск 05/2022 https://tribune-scientists.ru 6 неограниченно расширять функционал сайта. PHP является серверным языком программирования. Проще говоря, исполнение происходит на сервере. Написанные на PHP программы получают данные от пользователей сайта, затем обрабатывают их, взаимодействуют с базами данных и возвращают на сайт обработанную информацию. Таким образом, язык программирования PHP активно используется в следующих сферах: • Web-разработка (серверная часть) 4. JavaScript Объектно-ориентированный высокоуровневый язык программирования, который поддерживает императивный, функциональный, событийно- ориентированный и другие подходы. Относится к языкам с динамической типизацией. JavaScript позволяет придать веб-странице интерактивности. Веб-приложения и браузеры не единственные сферы применения JavaScript. Кроме этого, на данном языке также можно: • Разрабатывать мобильные приложения. Например, с помощью фреймворка React Native создаются приложения для Android и iOS. • Серверные приложения. Node.js используется для бэкенд-разработки. Он позволяет выполнять JS-код вне браузера. • Десктопные приложения. JS применяется в офисных пакетах Microsoft и OpenOffice, в приложениях компании Adobe. Также, уникальным этот язык делает полная интегрируемость с такими технологиями, как HTML и CSS – языками разметки и стилизации сайтов. Таким образом, язык программирования JavaScript активно используется в следующих сферах: • Web-разработка • Мобильная разработка • Разработка десктопных приложений 5. Java 7 Журнал «Трибуна ученого» Выпуск 05/2022 https://tribune-scientists.ru Объектно-ориентированный язык общего назначения. Программы на Java транслируются в байт-код, выполняемый виртуальной машиной Java (JVM) — программой, обрабатывающей байтовый код и передающей инструкции оборудованию как интерпретатор. Это позволяет написанным на Java приложениям запускаться на любой платформе, где установлена среда исполнения Java (JRE, Java Runtime Environment). Данный язык программирования является универсальным и используется во многих современных компаниях разного масштаба для разработки корпоративного серверного ПО. Например, на языке Java написано большинство корпоративных систем для банковского сектора, финансовые системы, системы страхования, и многое другое. Таким образом, язык программирования Java активно используется в следующих сферах: • Мобильная разработка (Android приложения) • Серверные приложения в сфере финансовых услуг • Web-разработка • Разработка игр • Разработка программ для научных целей 6. C# [4] Объектно-ориентированный язык программирования со статической типизацией и C-подобным синтаксисом. Что касается основных особенностей, C# поддерживает полиморфизм, перегрузку операторов, в языке доступны делегаты, атрибуты, события, обобщенные типы и методы, анонимные функции. Что касается преимуществ, C# достаточно компактный, простой для освоения начинающими программистами, активно развивающийся язык программирования. Одним из наиболее популярных и востребованных направлений в разработке на языке C# в настоящее время является разработка игр. Существует некоторое количество движков, используемых разработчиками в этой области. Внутри этих движков используется C#. Самым популярным из подобных Журнал «Трибуна ученого» Выпуск 05/2022 https://tribune-scientists.ru 8 является игровой движок Unity. Unity – это движок для создания двумерных и трехмерных игр. Он берет на себя физику, графику и многое другое, чтобы пользователь мог сосредоточиться на контенте и сценарии игры. Особенностью движка является то, что он работает на всех нужных платформах. Таким образом, C# является универсальным инструментом для разработки приложений в следующих направлениях: • Web-разработка (серверные приложения) • Разработка десктопных приложений • Мобильная разработка • Разработка игр (Unity) 7. Go (Golang) Статически типизированный скомпилированный язык программирования, разработанный в Google Робертом Гриземером, Робом Пайком и Кеном Томпсоном. Основной фокус в языке сделан на минимализме. Go отличается своей простотой и надежностью. Что касается преимуществ, в данном языке существует однозначность выбора. Иначе говоря, если задачу можно решить, то это можно сделать единственным образом. Еще один фокус языка – масштаб. Go решает множество технических проблем, которые возникают на больших проектах. Также, Go является безопасным языком программирования. Разработчикам не приходится задумываться об освобождении памяти. За него это сделает “сборка мусора”. У языка есть конкретная ниша: разработка сервисов и инфраструктурных инструментов. Со своей задачей язык программирования справляется вполне успешно ввиду своей простоты, быстроты и надежности. 8. Ruby [5] Динамический интерпретируемый язык программирования общего назначения с упором на простоту и продуктивность. У языка есть ниша, в которой он используется чаще всего. Такой нишей является веб-разработка. 9 Журнал «Трибуна ученого» Выпуск 05/2022 https://tribune-scientists.ru Данный язык стал популярным инструментом для создания веб- приложений благодаря Ruby on Rails – фреймворку, представленному в 2005 году. В нем реализованы различные инновационные возможности, такие как бесшовные интеграции с базой данных, миграции, создание представлений для ускорения разработки. Основными характеристиками языка можно назвать то, что Ruby является высокоуровневым, динамичным, интерпретируемым языком программирования. Заключение Таким образом, в данной статье были рассмотрены сферы применения современных языков программирования, их классификация, структуризация и общие положения. Все это может послужить основой для выбора сферы деятельности и первого языка программирования молодыми специалистами, или же смены языка более опытными. Также данная информация будет полезна читателям, далеким от сферы программирования, но желающим приобрести в ней определенные знания. 1. Языки программирования – Студопедия [Электронный ресурс] // Режим доступа: URL: Языки программирования — Студопедия (studopedia.ru) (дата обращения 03.05.2022 г.). 2. Языки программирования высокого уровня [Электронный ресурс] // Режим доступа: URL: Языки программирования высокого уровня (helpiks.org) (дата обращения 05.05.2022 г.). 3. C++ | Введение [Электронный ресурс] // Режим доступа: URL: C++ | Введение (metanit.com) (дата обращения 05.05.2022 г.). 4. Обзор C# - Overview | Microsoft Docs. [Электронный ресурс] // Режим доступа: URL: Обзор C#-Overview | Microsoft Docs (дата обращения 05.05.2022 г.). 5. Язык программирования Ruby: особенности, перспективы, рынок труда [Электронный ресурс] // Режим доступа: URL: Язык программирования Ruby: Журнал «Трибуна ученого» Выпуск 05/2022 https://tribune-scientists.ru Список литературы: 10 особенности, перспективы, рынок труда (hexlet.io) (дата обращения 06.05.2022 г.). Журнал «Трибуна ученого» Выпуск 05/2022 https://tribune-scientists.ru 11