1.1 Появление JavaScript

Язык программирования JavaScript появился еще в 90-е годы. Он и его интерпретатор были написаны буквально за несколько месяцев. А основной целью данного языка было добавить примитивную анимацию в HTML-страницы.

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

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

1.2 JavaScript – это не Java

Первое, что тебе нужно знать о JavaScript, – это то, что он не имеет вообще никакого отношения к Java. Да, синтаксис у них местами похожий, но это просто следствие того, что в начале 90-х самым популярным языком программирования был C++ и оба языка взяли его себе за основу.

JavaScript вообще изначально назывался LiveScript – скриптовый язык для оживления страниц. Но в силу резкого роста популярности Java в конце 90-х его переименовали в JavaScript.

JavaScript – это скриптовый язык, он заточен на то, чтобы писать маленькие скрипты внутри HTML-страниц. В нем отсутствует типизация переменных, классы, области видимости, стандартные коллекции. Никаких стандартов.

JavaScript очень удобен, если над кодом работает один человек – вы можете легко писать код как вам угодно. Но он становится просто невыносимым, если над кодом работают несколько человек. Отсутствие стандартов приводит к тому, что разбираться в коде другого человека становится очень, очень сложно.

Скорость чтения чужого JavaScript кода где-то в 10-50 раз медленнее, чем чтение чужого Java-кода. И это не шутка. Иногда в чужом коде вообще невозможно разобраться, особенно если ему уже пару лет и в него внесено несколько десятков изменений.

Именно про такой случай и существует мем «тут нужно все удалить и переписать»

1.3 Популярность JavaScript в наше время

Но суровая реальность, как уже говорилось выше, состоит в том, что JavaScript – это единственный язык, который работает внутри браузера. А браузер – это самая популярная платформа в интернете в наше время. Поэтому спрос на frontend-разработчиков постоянно растет.

Более того, их зарплаты уже достигли зарплат backend-разработчиков. Но завидовать тут нечему. Любой frontend-проект спустя год превращается в ад. А ведь во фронтенде есть еще и ограничения на размер кода, ведь код загружается браузером и это влияет на скорость загрузки страницы.

Чтобы как-то уменьшить бардак в своих проектах, фронтендщики постоянно пишут новые фреймворки, которые упрощают их жизнь. И конечно же эти фреймворки устаревают буквально за 3-5 лет. Если 5 лет назад ты решил написать свой проект на суперсовременном фреймворке, то сегодня про него будут говорить, что !он древний как мамонты" и как ты вообще можешь его использовать.

Но есть и хорошие новости: изобрели новый язык на замену JavaScript – это TypeScript. Он очень хорош, в нем есть типизация, классы, области видимости. А кроме того, есть специальный компилятор, который умеет компилировать TypeScript в JavaScript.

Все крупные frontend-проекты используют TypeScript вместо JavaScript. Кроме того, многие современные frontend-фреймворки вместо JavaScript используют TypeScript. Например, Angular, на котором написан фронтэнд JavaRush.

Но это уже совсем другая история.