B-b-b-breaking! По разным оценкам, в мире существует более 8 тысяч языков программирования 🤯 // сказать по правде я сам удивился, когда нашёл эту статистику. Википедия предлагает список примерно из 700 основных языков, а GitHub рапортрует о 370 наиболее популярных. Почему языков так много, в чем отличия между ними, и с какого лучше начать?
Во-первых, я рекомендую не сильно загружаться на тему такого разнообразия. Большая часть современных программ написана примерно на 20 языках. Из них 4-5 лидируют с большим отрывом. Во-вторых, вне зависимости от выбора языка — работы в IT буквально хватит на всех. Точно так же, как в поликлинике есть великое множество разных врачей, так и в программировании есть огромное количество разных программистов. Как показывает практика, количество и врачей, и программистов, год к году только увеличивается. 👨💻
Программистам не нужно каждый раз учить новые языки с нуля. Разобравшись в 2-3 языках, нет никакой проблемы освоить новую языковую среду за пару недель. Как правило, достойно разобраться в первом языке получается за год-полтора. Через 5-7 лет вообще утрачивается разница на чём писать. Хоть на CSharp, хоть на C++, хоть на asm, хоть на чайнике, хоть на балалайке. В любых языках прослеживаются одинаковые концепции, одинаковые логические конструкции. Языки похожи друг на друга и имеют одинаковую задачу — объяснить компьютеру что ему делать.
В нашем канале будут параллельно изучаться несколько языков. Мы будем уделять бОльшую часть внимания «высокоуровневым» языкам. С их помощью Вы сможете создавать программы быстро, качественно и эффективно. Like a ninja.
Short-лист языков программирования в 2022 году
Итак, я предлагаю вот такой список из языков программирования, актуальных на 2022 год. Сказать по правде, они были актуальны и в 2021, и в 2020 году, и 5 лет назад. В целом этот список лениво меняется год к году. За последние 10 лет, пожалуй, в него добавился только Python.
Я не претендую на каноничность информации, но в целом именно так вижу базовый стартер-пэк. Преимущество этого набора в том, что на нём можно быстро начать зарабатывать на фрилансе, или пойти джуном в интересный проект. Ну, поехали.
Языки для веб-проектов
Собственно, языки на которых создаются сайты и все что относится к вебу. Открывая Google Chrome / Mozilla / Safari на ноутбуке или телефоне, вероятно Вы видите результаты программирования на одной из этих технологий.
PHP — вечная бессмертная классика номер 1. Серверный язык для создания веб-проектов. Отлично работает как для маленьких проектов, так и для огромных систем. Буквально - Facebook и VK написаны именно на нём. Wordpress на котором работает 50% сайтов во всём мире написан на нём. Уклон именно в логику, алгоритмы и взаимодействие с базами данных. Нестрогая типизация (см. прошлые посты), но язык прекрасно подходит для изготовления элегантного и эффективного кода. Очень лояльная точка входа для новичков, тонны документации и широкий рынок применения.
JavaScript — вечная бессмертная классика-2. Язык для создания веб-проектов, уклон в интерфейс и публичную часть сайтов. Всякие крутилки-загружалки, всплывающие окна, красивые анимации и интерактивные сайты типа Яндекс.Карт и Google Maps. Всё это сделано на JavaScript. С точки зрения строгости, один из самых лояльных языков. Можно писать настолько упоротый код, что зачастую проще удалить чьё-то творчество и переписать его заново, чем исправлять ошибки и распутывать "макаронную мысль" автора.
Python — универсальный язык для создания всего что угодно (и веб-приложения, и приложения для операционных систем). PHP + C++ на максималках. Работает в Windows / Linux. Хороший выбор для тех кто хочет быть "в тренде", и использовать современные красивые технологии. Лично я не использую этот язык, поскольку в стиле старой школы фигачу на PHP/MySQL/JS + C#. Но, для начинающих программистов это хорошая точка входа.
Языки для операционных систем / веб
Здесь чуть сложнее. Это языки для создания нативных приложений (то есть, что-то что надо устанавливать на компьютер и потом запускать).
C / C++ - вечная бессмертная классика-3. Универсальные языки для создания приложений в средах операционных систем Windows / Linux (без веб) / других ОС. Для тех, кто любит программирование «с нуля», и хочет получить максимальную эффективность и гибкость. Язык с максимальным доступом к «железу». Сюда относятся драйверы, утилиты для процессоров, всевозможные программы для майнинга крипты и всякое такое прочее. НЕ подходит для веб-программирования, т.к. имеет совсем другой уровень приложения и решаемые задачи.
C# - универсальный язык для создания приложений в среде Windows (а с недавних пор и Linux). С++ на минималках. Для тех, кто хочет создавать приложения быстро и без лишних заморочек. Гораздо меньше доступа к операционной системе, но огромный набор компонент для комфортной и эффективной разработки. Не знаешь на чём сделать прототип приложения - делай на C#. Так же применяется для разработки веб-приложений, через ASP.NET.
Java — универсальный язык для создания приложений. Очень похож на CSharp, но более универсален и работает на большем количестве устройств. Так же может использоваться для создания веб-проектов.
Ещё пара веб-языков на закуску
Отдельно стоит выделить 2 языка / технологии, для веб-разработки. Их нельзя назвать языками программирования, скорее это языки разметки и структурирования информации. Только на них одних нельзя полноценно решить условную задачу, но и без них обойтись затруднительно.
HTML — язык для содержимого веб-страниц. Любой интернет-сайт сделан на языке HTML. VK, Facebook, Google, Yandex, Госуслуги — все они используют HTML. Опять же, это не самостоятельный полноценный язык программирования, а способ для оформления внешнего вида, создания «каркаса» из элементов. Он гораздо проще и понятней других языков, и некоторые специалисты, условно, не выделяют его как «язык программирования». Корректно именовать HTML как "язык разметки страницы". Это обязательная к изучению технология, без которой что-то сделать в вебе будет очень сложно.
CSS — язык для стилизации веб-страниц. Всевозможные красивые кнопки, формы ввода, разноцветные таблицы. Вот это всё сделано на CSS. Комплектуется к HTML-разметке и взаимодействует с ней.
Какие языки будем изучать в нашем канале?
Собственно все вышеперечисленные языки и будем изучать. Начнём с простого, и будем двигаться к сложному. Я сторонник языков высокого уровня, поскольку сегодня большая часть коммерческих задач относится именно к ним. И да, функция этого канала в том, чтобы дать Вам первичный обзор и первичное обучение в сфере IT. Какую платформу и какой путь Вы выберите для углублённого развития - зависит от Вас.
#программист #it #itтехнологии #обучениепрограммированию #информационныетехнологии #айтишник #программирование #программированиеснуля #программированиедляначинающих
🔥 Понравилось? Подпишись! Победим восстание роботов вместе! 🔥
🚀 P.S. Ты можешь значительно поддержать меня и проект "Войти в IT" на boosty! Так же, я публикую там более эксклюзивный и профессиональный, иногда немного личный контент. Хочешь посмотреть как автор выглядит в реальной жизни? Тогда жми: Ссылка 🚀
P.S.2 У меня ещё есть Telegram-канал. Там посты чуть попроще, и чуть повеселей. Лёгкие материалы на тему современного IT: Ссылка