b733e4
Научим создавать свои игры, сайты и приложения
Начать учиться
Modal window id: popup-initschool

Язык программирования JavaScript

Язык программирования JavaScript
2.4K

Чтобы найти информацию в интернете, вы открываете поисковик, вводите запрос в специальное поле и нажимаете кнопку «Поиск». Возможно, поисковая строка даже попыталась угадать, что вы хотите найти. Любые интерактивные действия, которые вы делаете в интернете, в основном возможны благодаря JavaScript. В этой статье простыми словами объясним, что такое JavaScript, для чего нужен и что на нём пишут.

Научим детей и подростков делать сайты
Два учебных проекта, которые можно добавить в портфолио: магазин футболок и генератор резюме
Научим детей и подростков делать сайты

Что за JavaScript?

JavaScript (сокращённо JS) — это язык программирования, созданный для интернета.

Дело в том, что любой сайт, который вы открываете в своём браузере, — это обыкновенный текстовый документ.

В середине 90-х компании захотели не только рекламировать товары и услуги, но и продавать их через интернет, в том числе и обеспечивать электронные банковские транзакции, а для всего этого нужно было сделать текстовые документы интерактивными. То есть люди хотели взаимодействовать с веб-сайтами, а не только находить в них информацию.

Так появился JavaScript.

Именно он позволил расширить границы возможного и в десятки раз упростил обмен информацией — за счёт этого появились, в частности, форумы и социальные сети.

Сейчас JavaScript — это царь электронной коммерции, онлайн-банкинга, браузерных игр, видеостриминга, 2D- и 3D-анимации в интернете, онлайн-карт, социальных сетей и прочих сервисов, которые прочно вошли в нашу жизнь.

JavaScript — это «третий кит» технологий, которые сделали современный интернет таким, каким мы его знаем, наряду с HTML и CSS.

Не путайте JavaScript с Java. Это разные языки программирования. Просто 20 лет назад Java был у всех на слуху и маркетологи решили, что JavaScript будет звучать лучше, чем Mocha или LiveScript.

Modal window id: popup-professionsbox

А он пользуется спросом?

Топ-10 технологий в программировании по данным Stackoverflow

По данным исследований сервисов для программистов Stackoverflow и GitHub, JavaScript — это самая популярная технология в мире уже много лет подряд!

Дело в том, что у JS относительно низкий порог входа, и он выполняется прямо в браузере. А ещё его популярность обеспечена наиболее легкодоступной нишей использования — он максимально «близок к народу».

Это значит, что вы сможете найти работу, если знаете язык программирования JavaScript, где бы вы ни были.

Кроме того, большая популярность дарит нам внушительное комьюнити — общество единомышленников, у которых можно попросить помощи или подсмотреть какие-то решения.

Но такая мощь накладывает и большую ответственность — конкуренция на рынке труда тоже неслабая.

Получи больше пользы от Skysmart:

Для чего нужен JavaScript?

Изначально JavaScript создавался для браузеров. Он был призван сделать веб-страницы более отзывчивыми для пользователя, более функциональными для коммерческих компаний, и более важными для человечества в целом. JavaScript выполнялся только на стороне клиента (браузеров) и был узкоспециализированным, пока в 2009 году не вышел Node.js — серверная платформа для работы с JavaScript. Благодаря ему JavaScript можно запустить теперь хоть в кофеварке. ☕

Иными словами, JavaScript не просто стал всесильным в теории, но и на практике ворвался в список серверных языков программирования, таких как PHP, Python, Ruby, Go, C#, Java, и по сей день только наращивает позиции. Его используют известные компании: NASA, Netflix, PayPal, Twitter, LinkedIn, Uber, eBay и многие другие.

Кроме веб-разработки, с помощью Node.js развивают сферу IoT (англ. Internet of Things — интернет вещей), создают умные дома и программируют микроконтроллеры.

А если взять фреймворк Electron, то можно создать десктопное приложение под Windows, macOS или Linux с помощью веб-технологий. Этот фреймворк довольно молодой, но с помощью него создали, например, Skype для Linux и мессенджер Slack.

А что насчёт мобильной разработки? И тут JavaScript на коне рынке — с помощью React Native обыкновенный фронтендер может создать полноценное Android-приложение.

Как видно, сфера применения JavaScript стала весьма широкой. Человечество активно стремится к концепции одного языка программирования для всего, и JavaScript в списке первых претендентов на эту роль.

Плюсы и минусы языка

JavaScript — язык с особенностями. У него много достоинств, но хватает и недостатков. Тем не менее все они субъективны. В мире разработки важно понимать, что язык программирования — это лишь инструмент. Все языки программирования создавались под конкретные классы задач, и вполне нормально, что они хороши именно в них и плохи в других. Никто же не будет ругать дрель за то, что ею неудобно забивать гвозди?

Так что в этом разделе речь пойдёт скорее об особенностях JavaScript. Перечисленные здесь достоинства могут быть для кого-то недостатками — и наоборот.

Обычно к достоинствам JavaScript причисляют следующее:

  1. Это мультипарадигменный язык программирования, то есть на нём удобно писать как в объектно-ориентированном, так и в функциональном стиле.

  2. Легко встраивается в веб-страницу.

  3. Относительно простой синтаксис.

  4. Запускается во всех браузерах.

  5. Динамически типизируемый — вам почти не нужно думать о типах данных, JavaScript делает это сам.

  6. Динамически компилируемый, а значит, работает быстрее любого интерпретируемого языка программирования, например Python.

  7. Имеет автоматический сборщик мусора — думать о неэффективном использовании памяти нужно гораздо меньше, чем, например, в С++.

Те, кто критикует JavaScript, часто приводят такие доводы:

  1. Нет встроенной возможности работать с файловой системой компьютера.

  2. Динамическая слабая типизация — в больших, долгосрочных проектах это мешает и увеличивает затраты на поддержку приложения.

  3. Сам язык до сих пор не доработан до конца, у него есть некоторые нелогичные особенности поведения, которых нет в других языках программирования, но и исправить многие из них уже нет возможности.

Важно понимать, что как достоинства, так и недостатки являются лишь аргументами при выборе технологии для решения задачи. Некоторые из недостатков, например слабую типизацию, решили с помощью вспомогательных инструментов. Например, для того чтобы использовать JavaScript со строгой типизацией, компания Microsoft в 2012 году выпустила TypeScript — язык, который транспилируется (переводится) в JavaScript. Вы пишете на языке программирования со строгой типизацией, а на этапе сборки проекта он превращается в JavaScript. А невозможность работы с файловой системой нивелируется платформой Node.js.

Сравнение с другими ЯП

Мы разобрались с тем, что пишут на JavaScript, и отсюда можно сделать вывод, что JavaScript — монополист в своём сегменте. И в том, что касается фронтенд-разработки, — так оно и есть. JavaScript — это по-прежнему единственный язык программирования для выполнения в браузере. Только на JavaScript можно создать веб-приложения, такие как Google Docs, Figma и прочие онлайн-инструменты, где вся логика работает прямо в браузере.

Технически веб-сайт возможно сделать на любом языке программирования, хоть на Assembly. Но уровень квалификации для этого нужен несравненно больший, как и затраченное для этого количество времени.

Поэтому если и сравнивать JS с другими языками программирования, то только в контексте серверной разработки.

Серверных языков довольно много, поэтому мы возьмём только самые популярные в 2022 году: Python и С#.

JS vs Python

Мы уже рассказывали подробно про преимущества и недостатки Python. Но если кратко, то у Python и JavaScript много общего:

  1. Оба — языки программирования общего назначения.

  2. Это интерпретируемые языки программирования, для работы каждого из них на компьютере должен быть установлен интерпретатор — программа для выполнения кода; у JS им является браузер.

  3. Как и JavaScript, Python имеет слабую динамическую типизацию.

  4. Оба языка очень популярны ввиду простоты использования (синтаксис Python проще, чем у JavaScript).

  5. И у первого, и у второго огромное комьюнити, создавшее большое количество библиотек для всего, что только можно представить и автоматизировать.

  6. Оба высокоуровневые, скриптовые языки программирования.

  7. И Python, и JavaScript нужна платформа для бэкенд-разработки, например Django.

Но есть и значимые отличия между этими языками программирования:

  1. Python медленнее (хотя в версии 3.11 разработчики очень хорошо поработали над этим недостатком).

  2. Основная ниша Python — Data Science и научно-технический прогресс: нейронные сети, машинное зрение, искусственный интеллект и прочая работа с данными.

  3. Python пускают к железу значительно чаще. Это означает, что для программирования микроконтроллеров между JavaScript и Python выбирают последний, хоть это и не их стезя изначально.

  4. Python чаще выбирают в тех задачах, где нужна автоматизация бизнес-процесса.

JS vs C#

Название языка C# читается как «си шарп». Это детище компании Microsoft, наследник Java, взявший от него 90% функциональности. Изначально создавался для разработки десктопных приложений и игр под Windows. Но в последнее время C# оброс таким количеством удобных инструментов, что всё больше завоёвывает любовь у профессиональных разработчиков.

В чём сходятся C# и JavaScript:

  1. Для серверной разработки на C# нужна платформа ASP.NET, то есть тут вы тоже не можете просто взять и начать писать сервер.

  2. Многие синтаксические конструкции очень похожи.

На этом их сходства заканчиваются. 🙂

Теперь об отличиях от JavaScript:

  1. С# — строго типизируемый, это означает, что вам всегда нужно думать о типах данных, которые дозволено использовать памяти компьютера.

  2. С# — компилируемый, его команды переводятся в двоичный код и отправляются прямиком в процессор, поэтому С#-код выполняется быстрее, чем на JavaScript.

  3. У С# синтаксис более строгий и сложный, чем у JS, но более лёгкий, чем у Java или C++.

  4. Если JavaScript — мультипарадигменный язык программирования, то C# заточен на использование в объектно-ориентированном стиле — вы обязательно должны знать ООП.

  5. Даётся новичкам не так просто, как JavaScript.

Перечисленные тут отличия — фундаментальные, то есть далеко не все, но, пожалуй, самые главные.

Возможности трудоустройства, зарплата разработчика на JS

По данным исследования портала «Хабр Карьера», в первом полугодии 2022 года средняя зарплата фронтенд-разработчика (JavaScript-разработчика) в России — 150 000 рублей в месяц.

А количество вакансий на портале hh.ru по ключевому слову JavaScript — около 6,5 тысячи. В поисковую выдачу попадают вакансии разных профессиональных уровней, а также разных направлений: фронтенд-разработка, веб-разработка, бэкенд-разработка и фулстек-разработка. По ключевому слову frontend количество вакансий — около 3,5 тысячи.

Теперь вы знаете, что такое JavaScript, и имеете представление о его востребованности. На курсах программирования для детей и подростков в Skysmart Pro мы рассказываем и показываем ещё больше полезных вещей из мира компьютеров, повышаем цифровую грамотность и помогаем разрабатывать собственные приложения, сайты и игры. Попробовать свои силы и подобрать курс по интересам можно бесплатно на вводном уроке.

Открыть диалоговое окно с формой по клику
Бесплатный вебинар
Бесплатный вебинар
Бесплатный вебинар
Научиться разработке
Подготовиться к ОГЭ/ЕГЭ
Получите план развития в программировании
  • Поможем с выбором IT-профессии
  • Вместе сделаем первый проект
  • Расскажем, как проходят занятия
Шаг 1 из 2
Шаг 1 из 2
Шаг 2 из 2