Самые популярные языки программирования
Под программированием понимается определение для вычислительной системы последовательности действий, которые ей необходимо совершить. К примеру, можно «заставить» компьютер решать квадратные уравнения или подключаться к интернету и скачивать из него файлы. Для этой цели используется язык программирования (ЯП), который способна понимать эта система. А понимает его она переводом в формат машинных команд, исполняемых центральным процессором.
Основная задача ЯП заключается в облегчении написания алгоритмов программистом и понимании их структуры и принципа работы другими людьми. Ведь всегда может потребоваться внести изменения в исходный код, чтобы он стал работать по другому для возможности решения требующихся им задач. Необходимость в ЯП обусловлена сложностью и высоким уровнем непонятности для людей машинного кода, который «понятен» процессорам и прочим устройствам вычислительных систем.
Для чего нужны языки программирования
Исходя из вышесказанного, ЯП требуются везде, где используются цифровые устройства. А на текущий момент это все сферы жизни – начиная от привычного быта (например, под управлением микроконтроллеров работают холодильники, микроволновые печи, автомобили, не говоря уже о системах «умный дом») и заканчивая передовыми научными и военными разработками (например, системы управления телескопами, наведения ракет, геопозиционирования и т. д.). Соответственно, и программисты чрезвычайно востребованы во всех сферах деятельности человека – без написанных ими алгоритмов работы любое цифровое устройство будет лишь бесполезной «грудой железа».
Однако не каждый такой специалист может справиться с программированием любого устройства – каждое из них, как минимум, отличается архитектурой (т. е. внутренней электронной начинкой) и используемым ЯП (а их насчитывается десятки тысяч, если считать разные версии, которые, в общем случае, между собой несовместимы). Потому то и программисты классифицируются по имеющимся у них знаниям, в частности, по языкам, которыми они владеют в совершенстве. Следует учитывать, что даже высококлассный профессионал может отлично знать лишь несколько ЯП, поскольку они постоянно развиваются и в процессе этого развития их последующие версии претерпевают существенные изменения, за которыми обязательно нужно следить. Именно поэтому обучение языкам программирования востребовано не только новичками, но и уже серьезными специалистами.
А вот что полезно знать перед изучением ЯП или изучать параллельно с ними, так это математику и английский язык. Математические знания необходимы, поскольку программные алгоритмы в подавляющем большинстве случаев работают на математических принципах, в частности, в них используется логика. А знание английского позволяет быстро запомнить операторы, команды, директивы и прочие компоненты ЯП, которые пишутся на латинице и соответствуют определенным реальным словам.
Где учиться языкам программирования
Самый лучший вариант это, конечно же, поступление в государственные высшие или среднетехнические заведения. В них, как правило, работают квалифицированные преподаватели, способные дать учащемуся объективные и достоверные знания, причем знания эти будут комплексными (т. е., там параллельно будут изучаться и другие науки, часть которых впоследствии неизбежно окажется полезной).
Главный недостаток описанного вида обучения – долгий срок (не менее 2-х лет). А вот если хочется быстро изучить язык программирования, то для этой цели оптимальным вариантом являются онлайн-курсы. Обычно длятся они несколько недель или месяцев, по окончании которых обучающийся получает аттестат, подтверждающий его квалификацию. Рассчитаны такие курсы и на людей с разной степенью подготовленности – от новичков до специалистов (им тоже нужно периодически повышать свою квалификацию). Поэтому можно сначала пройти обучающий курс для новичков, а затем уже и для продвинутых программистов (например, максимально углубиться в конкретный ЯП). И займет это не больше года, а при усердии обучаемого на это потребуется всего несколько месяцев.
Недостаток подобных курсов – довольно высокая вероятность попасться на мошеннические предложения или получить не соответствующий заявленному уровень знаний. Но и здесь есть очень просто способ избежать этих неприятностей – предварительно нужно изучить отзывы от людей, пользовавшихся этими услугами. Однако следует тщательно фильтровать все мнения, ведь среди них могут быть заказные, причем как положительные (так недобросовестные поставщики услуг создают себе позитивную репутацию), так и отрицательные (так недобросовестные поставщики услуг негативно влияют на репутацию добросовестных, обеспечивая отток от них учащихся к себе). Поэтому использовать для анализа рекомендуется только отзывы с фактами, размещаемые на надежных ресурсах.
Ну и еще один способ, о котором нельзя не упомянуть – это самостоятельное изучение. Для этой цели можно как приобрести соответствующую литературу, так и воспользоваться интернет-контентом – статьями, аудиокнигами, видеороликами. Но эффективным такой способ будет лишь в том случае, когда у человека уже есть некий фундамент из знаний, который позволит правильно понять потребляемый материал. В ином случае без помощи хорошего преподавателя не обойтись – он сможет максимально доступно и понятно разъяснить все непонятные моменты и избавит от досадных ошибок.
Лучшим решением является всестороннее изучение одного ЯП, чтобы стать настоящим профессионалом по его применению. Ну а затем можно изучать и другие языки, что при наличии уже полученных знаний, будет намного легче и проще. А вот начинать учить сразу несколько языков программирования нецелесообразно – это создаст только путаницу в голове новичка и вместо ожидаемого им результата придет только разочарование.
Важно еще до обучения понимать, что даже наличие диплома, аттестата или сертификата не гарантирует быстрое нахождение работы. Однако полученная теоретическая база, практические навыки и портфолио выполненных работ сильно повышают вероятность получения желаемой должности. Но и после этого не стоит расслабляться, ведь технологии стремительно шагают вперед, а конкуренция постоянно усиливается. И потому всегда следует стремиться к продвижению по карьерной лестнице, уступая занимаемое место для других программистов.
Рынок труда для программистов
Найти вакансии проще и быстрее всего через специализированные веб-сервисы, к примеру, ХедХантер. Там работодатели публикуют свои предложения для кандидатов с подробным описанием требований и обязанностей. Поэтому, выбирать ЯП для изучения следует только после ознакомления с существующими предложениями и если размер оплаты, требования, обязанности и прочие нюансы вас удовлетворяют, то именно такой язык и стоит начать изучать.
Не рекомендуется начинать изучение с какого-то экзотического ЯП, по которому предлагается очень высокая зарплата и предложений немного – как правило, обучение ему тоже весьма дорогое, а самостоятельно научиться ему практически невозможно из-за очень скудной информации в открытом доступе. Кроме того, спрос на него очень нестабильный, а потому, несмотря на очень малую конкуренцию, предложения работы по нему могут отсутствовать месяцами.
Вот сферы программирования, в которых всегда можно найти работу (пусть и не со слишком высокой зарплатой):
- Разработка веб-приложений (есть два принципиально различных направления – клиентская часть, отвечающая за работу на стороне пользователя, и серверная часть, отвечающая за глобальное управление работой сайта);
- Разработка мобильных приложений (направления определяются операционной системой, под которую планируется разрабатывать ПО – Android, iOS);
- Разработка компьютерных игр (направления разделяют по типу игр, платформ, на которых они запускаются, движкам, которыми они управляются, и прочим параметрам);
- Программирование микроконтроллеров (это поле деятельности для специалистов, владеющих навыками создания машинно-ориентированных алгоритмов);
- Обучение программированию (желающих получить такие знания всегда хоть отбавляй).
Краткий обзор 10-ти самых востребованных в мире ЯП (по индексу TIOBE на август 21-го года)
C (Си)
Разрабатывался в период с конца 60-х до начала 70-х годов 20-го века как удобная альтернатива ассемблеру. Конструктивно он очень похож на машинные инструкции. Окончательным вариантом можно считать стандарт C11, после которого существенных изменений этот ЯП не претерпел.
Основное назначение Си заключается в создании объемных программных приложений, которые:
- максимально освобождены от типичных для ассемблера ошибок;
- не требуют значительных ресурсных расходов, свойственных языкам высокого уровня (ЯВУ).
Ключевые особенности C:
- простота, достигаемая, в том числе богатой функциональной библиотекой;
- допустимость процедурного программирования;
- строгая типизация, сокращающая количество операций;
- применение препроцессора, чтобы эффективно выполнять однотипные операции;
- адресация памяти указателями;
- небольшое количество ключевых слов;
- параметры функций передаются по значению;
- реализованы статические переменные и функциональные указатели;
- предусмотрены области видимости имен;
- цельность типов «структура» и «объединение».
Применение Си:
- создание ОС;
- написание быстровыполнимых программ;
- кроссплатформенность;
- промежуточный компилируемый код для ЯВУ.
Python (Пайтон)
Его разработка началась в конце 80-х годов 20-го века, а задумывался он как скриптовый ЯП для ОС Amoeba. Первая реализация была готова в начале 90-х и являлась объектно-ориентированной, какой остается и до сих пор (т. е. в Python все компоненты – это объекты). С 2020-го года поддерживается только версии языка Python 3.
Основные идеи, заложенные в Пайтон:
- увеличение производительности разработчиков;
- улучшение читаемости кода;
- легкость переноса программ между «железом».
Ключевые особенности Python:
- простота, обеспечивающая легкость изучения даже детьми;
- открытость исходного кода;
- модульность;
- интеграция с другими ЯП;
- кроссплатформенность.
Применение Пайтона:
- на нем написаны многие приложения (или их компоненты), использующиеся миллиардами людей – Фейсбук, Реддит, Дропбокс, Инстаграм, поисковик Гугл, Ютуб и др.;
- тестирование аппаратных вычислительных средств;
- реализация приложений для научных расчетов повышенной сложности;
- написание командных файлов ОС;
- системное администрирование.
Java (Джава)
Первая версия была выпущена в середине 90-х годов 20-го века. Изначально он задумывался как язык, на котором можно программировать работу бытовой электроники. Однако после выпуска его стали активно применять для написания клиентских и серверных приложений.
Как правило, Джава-приложения преобразуются транслятором в байт-код, для выполнения которого необходима виртуальная Java-машина (является интерпретатором). Поэтому они способны работать на всех вычислительных системах, для которых она реализована.
Ключевые особенности Джавы:
- кроссплатформенность;
- высокая системная безопасность (все подозрительные операции блокируются виртуальной машиной);
- автоматическое распределение ресурсов памяти;
- использование нестандартных типов данных;
- расширенная обработка исключений;
- унификация доступа к БД;
- поддержка лямбда-функций.
Применение Java:
- на нем написаны Амазон, иБэй, поисковик Яху, СУБД Оракл Датабэйс и другие широко используемые программные ресурсы и приложения;
- написание клиентских, серверных и сетевых приложений;
- разработка приложений для мобильных гаджетов на ОС Андроид.
C++ (Си-Плюс-Плюс)
Начал разрабатываться в 80-х годах 20-го века. Идеей это разработки было совершенствование ЯП C так, чтобы:
- на нем можно было достаточно просто разрабатывать объемные программные компоненты;
- в нем присутствовали статические типы данных;
- он подходил для разных стилей программирования;
- он использовал минимум ресурсов.
Ключевые особенности C++:
- наличие библиотек ввода-вывода, регулярных выражений, многопоточности и др.;
- поддерживает процедурное, объектно-ориентированное и обобщенное программирование;
- кроссплатформенность;
- поддержка лямбда-выражений;
- синтаксическая совместимость в Си.
Применятся Си-Плюс-Плюс для написания приложений, для которых критична скорость выполнения и/или необходима многопотоковая обработка данных:
- ОС;
- драйверов;
- серверов;
- игр;
- баз данных и пр.
C# (Си-шарп)
Разработка его началась в конце 90-х годов 20-го века. Он задумывался как язык для написания приложений под платформу MS .NET Framework. Именно для этой цели чаще всего он и используется по сей день.
Предком Си-шарпа является Си, по сравнению с которым у него есть дополнительные возможности и отсутствует ряд недостатков.
Ключевые особенности C#:
- широкие возможности для написания функций любой сложности;
- предоставление прямого доступа к памяти;
- высокая производительность;
- высокий уровень безопасности приложений;
- возможность формирования запросов со строгой типизацией.
Применяется Си-шарп при написании программного кода:
- компьютерных игр;
- интернет-приложений;
- программ для защиты цифровых данных;
- приложений под Windows;
- приложений под мобильные ОС.
Visual Basic (Вижуал Бэйсик)
Первая версия вышла презентована в начале 90-х годов 20-го века. Это потомок классического Бейсика, в котором реализованы современные методы программирования, в частности, объектная и компонентная ориентированность.
Ключевые особенности Visual Basic:
- допускает визуальное проектирование интерфейсов;
- позволяет быстро разрабатывать приложения для среды Windows (СУБД, графические интерфейсы;
- множество готовых компонентов, существенно облегчающих программирование;
- стабильность работы благодаря эффективному предотвращению возникновения ошибок работы с памятью и указателями.
Применение Вижуал Бэйсик:
- программирование задач с вычислениями разной степени сложности;
- обучение программированию;
- разработка баз данных;
- написание макросов для офисных приложений;
- создание веб-приложений на основе HTML.
JavaScript (ДжаваСкрипт) или JS (ДжейЭс)
Начал разрабатываться в середине 90-х годов 20-го века и изначально предназначался для соединения в единое целое отдельных веб-компонентов. Целью этой задумки было повышение удобства работы веб-дизайнеров и программистов.
Ключевые особенности JavaScript:
- низкий уровень типизации;
- динамическая типизация;
- автоматизированное распределение ресурсов памяти;
- использует прототипирование;
- наряду с объектной ориентированностью поддерживает свойства, характерные для функциональных ЯП;
- поддерживает технологию AJAX для построения веб-приложений.
Применение ДжаваСкрипт:
- обеспечивает программный доступ к объектам, генерируемым и использующимся другими приложениями;
- позволяет писать браузерные сценарии, чтобы веб-страницы стали интерактивными;
- является компонентом браузерных ОС;
- на нем пишутся пользовательские скрипты для браузеров, обеспечивающие управление содержимым веб-страниц, серверные приложения, приложения для мобильных гаджетов, виджеты, прикладное ПО.
PHP (ПиЭйчПи)
Начало его разработки – середина 90-х годов 20-го века. На 21-ый год крайней версий является PHP 8 и именно на ней Майкрософт объявил прекращение поддержки этого ЯП для Windows.
Ключевые особенности ПиЭйчПи:
- кроссплатформенность;
- автоматическое распределение памяти и ее освобождение;
- возможность подключения любого числа модулей (в том числе, собственных и написанных на других ЯП) для расширения функциональности;
- наличие файла конфигурации, обеспечивающего гибкую настройку режима работы интерпретатора.
Основная сфера применения PHP - создание страниц сайтов с динамическими компонентами (например, на нем написаны компоненты Фейсбука, Википедии, Яху). Также на нем пишутся сценарии серверной части и системы управления содержимым – ВордПресс, Джумла!, Друпал и др.
Следует учитывать, что новые версии этого ЯП частично несовместимы с прежними (и наоборот) – но эта особенность присуща в той или иной степени всем языкам программирования.
Assembly Language (Ассэмбли Лэнгвидж)
Дословный перевод – Язык Ассемблера. По сути, он является машинно-ориентированным низкоуровневым ЯП, который обеспечивает удобочитаемость программ на машинном коде. Его можно считать ЯП 2-го поколения – все остальные описанные в статье ЯП относятся к 3-му поколению.
Ключевые особенности Assembly Language:
- полная зависимость от «железа» (даже на схожих аппаратных платформах он будет работать по разному);
- весь синтаксис определяется Ассэмбли Лэнгвидж командами процессора и директивами транслятора, поэтому единого стандарта языка Ассемблера нет (для каждой архитектуры вычислительной машины свой синтаксис и их даже может быть несколько);
- создание модулей ПО, которые способны максимально эффективно использовать аппаратные ресурсы (в результате такие программные компоненты получаются компактными и выполняются очень быстро);
- обеспечивает прямой доступ к памяти, регистрам ЦП, портам ввода-вывода.
Применение Ассэмбли Лэнгвидж:
- написание драйверов, встроенного ПО, вирусов, антивирусов, ядер операционных систем, алгоритмов для микроконтроллеров и микрокомпьютеров;
- оптимизация компонентов программ, для которых критично быстродействие и доступный объем памяти;
- восстановление алгоритма программного обеспечения при отсутствии доступа к его исходному коду (для этого откомпилированная программа прогоняется через дизассемблер и полученный машинный код может быть изучен).
SQL (ЭсКуЭл)
Начал разрабатываться в начале 70-х годов 20-го века, а первый стандарт был принят спустя полтора десятка лет. Разработчики поставили целью создать ЯП, с помощью которого управление данными в БД становилось простым и доступным рядовым пользователям ПК.
Ключевые особенности ЭсКуЭл:
- декларативность (т. е., пользователь только определяет, какой результат ему нужен, а не каким способом он должен быть получен);
- способность обрабатывать реляционные БД;
- отсутствие строгой привязки синтаксиса языка к конкретной СУБД;
- довольно высокая сложность для изучения;
- простота написания запросов даже с очень высоким уровнем сложности;
- масштабируемость (с одной базой данных могут одновременно работать несколько пользователей).
Применяется SQL исключительно для обработки данных в СУБД любой сложности и неограниченного объема. Но и эти возможности делают его очень востребованным, особенно сейчас, когда объем данных, генерируемых человечеством, растет в геометрической прогрессии.
Источники
- https://rin.ru/novosti/138401/forum-programmistov-dlya-professionalov-i-lyubitelei.html
- http://istoki.tv/news/company/kak-sokhranit-kompyuter-i-dannye-v-bezopasnosti/
- https://ict-online.ru/news/n203570/
- http://rus-linux.net/press-reliz/2021-12/CyberForum.html
- https://tayga.info/174045
- https://om-saratov.ru/blogi/02-december-2021-i106090-kiberforum-%E2%80%93-udobnyi-i-po
- https://trc33.ru/news/society/professionalnyy_forum_dlya_programmistov54623/
- https://www.niasam.ru/biznes/kiberforum-bystrye-resheniya-raznyh-voprosov-184746.html
- https://66.ru/news/other/246878/
- https://www.panram.ru/partners/news/periferiynye-ustroystva/
- http://omskregion.info/news/102058-kompyuternaya_gramotnost/
- https://vmnews.ru/novosti/2021/12/06/forum-programmistov--vozmozhnost-stat-masterom
- http://niv.ru/public/353/windows11/
- https://progorodsamara.ru/page5306/
- https://my.ciis.edu/ICS/Academics/EWP/EWP__6227/2008_20-EWP__6227-01/Readings1/python-forum.jnz
- https://www.penza-press.ru/znakomimsja-s-microsoft-excel.dhtm
- http://simcat.ru/news/38627
- https://pervouralsk.ru/news/tekhnologii/phyton-niuansy-programmirovaniia/42565/
- https://ntsk.ru/news/43921
- https://www.ap22.ru/paper/Programmirovanie-vnikaem-glubzhe-vmeste-s-Kiberforumom.html
- https://biwork.ru/news/42119-python
- https://www.gorno-altaisk.info/news/138593
- https://www.verstov.info/news/company_news/97601-chto-delat-esli-pylesos-otkazyvaetsja-vkljuchatsja.html
- https://orsk.ru/news/111606
- https://www.urank.ru/luchshie-deshevyie-noutbuki-26000-34000-rubley-2022-goda-hp-14s-dq0002sl/
- https://gost-snip.su/blog/kak-vybrat-kompaniyu-po-razrabotke-prilozhenij/
- http://sayt-s-nulya.ru/robots_txt_kak_rabotaet_poiskovy_robot.html
- https://vnru.ru/stati/62635-sut-tekhnologii-seo-optimizatsii-sajta.html
- https://yerkramas.org/article/186199/uznajte-novoe-u-professionalov-na-kiberforume-programmistov-i-sisadminov
- https://megatyumen.ru/posts/forum-programmistov-kiberforum
- http://www.apn-spb.ru/news/article34627.htm
- http://k-ur.ru/articles/chto_neobkhodimo_znat_o_kompyuternom_modelirovanii_02.htm
- http://www.gorodpavlodar.kz/News_92257_3.html
- https://i38.ru/technologii-potrebitel/v-rossii-chotyat-skorrektirovat-gosudarstvennuiu-politiku-v-oblasti-iskusstvennogo-intellekta
- https://trc33.ru/news/society/professionalnyy_kiberforum11734/
- http://pervo66.ru/news/block-26798/
- https://www.ikirov.ru/news/51212-programmirovanie-na-si-chto-takoe-funktsii
- http://ssa.ru/articles/entry/proektirovanie-osnovnaya-chast-proizvodstva
- https://globalscience.ru/news/sovteh/9023-nuzhno-li-znat-matematiku-dlya-programmirovaniya-na-java.html
- https://kikonline.ru/partner/razrabotka-mobilnyh-prilozhenij/
- https://news.sarbc.ru/main/2022/02/26/271545.html
- https://www.pervo.ru/news/hi-tech/60315-kak-samostoyatelno-nauchitsya-web-programmirovaniyu.html
- https://www.niann.ru/?id=576636
- https://www.justmedia.ru/news/russiaandworld/kak-pochistit-stiralnuyu-mashinu-effektivnyye-sposoby-chistki
- https://earth-chronicles.ru/news/2022-03-24-160497
- https://progorod58.ru/organicheskaya-elektronika-na-grebne-volny
- https://pg11.ru/kak-proverit-versiyu-wordpress
- https://astv.ru/news/materials/kak-pravil-no-vypolnit-nastrojku-esli-komp-yuter-ne-vklyuchaetsya
- https://bloknot-rostov.ru/news/populyarnye-yazyki-programmirovaniya-1468872
- https://bloknot-voronezh.ru/news/vidy-yazykov-programmirovaniya-1468871
- https://rsute.ru/1035452-vazhnye-konczepty-s-kotorymi-stoit-poznakomitsya-pered-izucheniem-iskusstvennogo-intellekta.html
- https://53news.ru/it-i-tehnologii/podhodit-li-vstroennaya-videokarta-dlya-igr.html
- https://tolknews.ru/obsestvo/122655-chem-otlichayutsya-chetire-vostrebovannih-segodnya-yazika-programmirovaniya
- https://vladtime.ru/obsh/750413
- https://astv.ru/news/materials/kak-bystree-i-effektivnee-osvaivat-yazyki-programmirovaniya
- https://vesiskitim.ru/2022/05/12/10-samykh-ozhidaemykh-igr-vykhodiashchikh-v-2022-godu
- https://kirov-portal.ru/article/pesochnica/nedorogie-stiralnye-mashiny-2022-goda-chto-vybrat-top-5-predlozhenij-31855/
- https://bizon.ru/news/view/news_id/606485
- https://www.metronews.ru/partners/novosti-partnerov-239/reviews/zhanry-kompyuternyh-igr-1934340/
- https://progorod58.ru/kak-sobrat-igrovoy-kompyuter
- https://pg11.ru/tendencii-programmirovaniya-na-2022-god
- https://volga.news/article/623039.html
- https://urbc.ru/1068112332-kakoy-vybrat-noutbuk-shkolniku-i-studentu.html
- https://e-news.su/kompyuternye-obzory-i-poleznosti/433884-sovety-po-ispolzovaniju-windows-11-na-planshete.html
- https://moluch.ru/archive/222/94288/
- https://bloknot-volgodonsk.ru/news/kakoy-yazyk-programmirovaniya-vybrat-novichku-1505366
- https://www.bnkomi.ru/data/relize/147177/
- https://sevastopol.su/news/6-samyh-slozhnyh-zadach-v-videoigrah-kotorye-nenavidyat-vse-razrabotchiki
- https://altapress.ru/preview/310864?secret=fidNRhB9A5tTY_Z8uv8MpF82zjDxGhFU
- https://www.amic.ru/news/dosug/chtoby-vse-letalo-kak-sobrat-igrovoy-kompyuter-samostoyatelno
- https://www.audit-it.ru/news/pressv/1067579.html
- https://stolica-s.su/partners/starye-kompyuternye-igry-top-kultovoj-klassiki
- https://swsu.ru/kva/kompyuternye-programmy-i-igry/sozdaem-sobstvennuyu-2d-igru-na-python-za-odin-vecher.php
- https://www.province.ru/sovet/izuchaem-linux-nastrojka-pecha.html
- https://gorod24.online/russian/news/276750-XMOS_adaptiruet_Xcore_v_AIoT_krossovernyiy_protsessor.html
- https://vpk.name/news/648448_5_oshibok_perspektivnogo_programmista.html
- https://ria56.ru/posts/kak-vybrat-stiralnuyu-mashinu-i-ne-progadat.htm
- https://www.politnavigator.net/veb-platforma-aspnet-dlya-sozdaniya-saytov-i-prilozheniy-ot-windows.html
- http://worldcrisis.ru/crisis/4209584
- https://portamur.ru/texts/issue/chto-nuzhno-znat-nachinayushchemu-veb-razrabotchiku/
- https://1777.ru/stavropol/one_lenta.php?id_one=10432&id=29
- https://v-tagile.ru/obschestvo-yanvar-2023/kak-pravilno-vybrat-khoroshij-noutbuk
- https://pg21.ru/pyat-klyuchevyh-preimushchestv-razrabotki-sobstvennyh-mobilnyh-prilozheniy
- https://www.kp40.ru/site/releases/pnews/96843/
- https://newsomsk.ru/news/132937-kak_vbrat_smartfon/
- https://crimea-news.com/other/2023/03/02/1024163.html
- https://pandoraopen.ru/2023-03-02/kak-stat-programmistom-s-nulya/
- https://168.ru/news/other/top-10-vostrebovannyih-professiy-v-2020-gody-39706/
- https://www.rlocman.ru/press-rel/rel.html?di=2879
- https://vladnews.ru/2023-03-02/215903/perspektivnyh_yazykov
- https://4esnok.by/novosti-kompanij/vhod-novichka-v-it-za-10-shagov-kak-nauchitsya/
- https://www.volzsky.ru/press-relize.php?id=16275