Является ли Javascript мастером на все руки в мире программного обеспечения?
В современном мире так много языков программирования для любой задачи! Черт возьми, вы даже можете запустить свой собственный язык программирования в любое время, но среди всех разных областей есть один язык, о котором я слышал в разных типах разработки программного обеспечения, — это Javascript .
Javascript — довольно универсальный язык, и основной причиной этого является его культура с открытым исходным кодом. Каждый день появляется все больше и больше языков и фреймворков, построенных на его основе (например, React, Typescript и т. д.), и огромное количество библиотек, созданных разработчиками по всему миру для всего, что вы хотите делать ( npmjs.com ваше место для всех видов библиотек Javascript и даже для добавления ваших!)
Вот некоторые из распространенных направлений разработки программного обеспечения, где Javascript может использоваться в той или иной форме:
Во фронтенд-разработке
Это первое место, где Javascript был представлен и стал безумно популярным в 1996 году. Вы можете создать свою веб-страницу с помощью HTML и добавить стили с помощью CSS, но как вы взаимодействуете со своей статической веб-страницей и заставляете ее принимать ваши входные данные и выполнять различные задачи соответственно? ?
Ответом на этот вопрос является Javascript, используемый сегодня на 95% всех веб-сайтов и являющийся неотъемлемой частью любой клиентской (обращенной к пользователю) среды!
В Backend-разработке
Отлично, мы разобрались, как взаимодействовать с пользователем через веб-страницу! Но куда мы добавляем нашу бизнес-логику того, как должна выполняться конкретная задача? Мы можем захотеть сохранить некоторые данные, связанные с пользователями, на основе их входных данных в базе данных и использовать их позже — так как же мы взаимодействуем с такой базой данных?
Вот тут-то и начинается бэкэнд-разработка — и хотя здесь так много вариантов сервера на всех возможных языках программирования, есть также очень широко используемый вариант Javascript — Node.js. Я много использовал его в студенческие годы благодаря обширной библиотеке, поддерживающей такие функции, как аутентификация, загрузка изображений, PDF-файлов или любых других форм данных и т. д.
В машинном обучении
Машинное обучение — это область, в которой с 2010-х годов наблюдается массовый бум, и она становится все более заметной и лучше! Хотя Python и его фреймворки были популярным выбором как новичков, так и разработчиков для задач, связанных с машинным обучением, знаете ли вы, что Tensorflow (очень хорошо поддерживаемая инфраструктура для создания и развертывания моделей машинного обучения) также поддерживает разработчиков Javascript как Tensorflow. js ?
Это позволяет нам разрабатывать модели машинного обучения в Javascript и использовать машинное обучение непосредственно в нашем браузере или в серверной части Node.js. Вы можете посмотреть некоторые интересные демонстрации Tensorflow.js здесь!
Мобильная разработка (Android и iOS)
Мобильная разработка долгие годы оставалась совершенно отдельным потоком от веб-разработки. У него будет другой технологический стек, в том числе разные для Android и iOS, и разработчики обычно будут иметь опыт разработки для Android или iOS.
Но ReactNative — это одна платформа, которая сочетает в себе веб-разработку, разработку для Android и iOS! Представленный командой Meta Open Source в 2015 году и написанный на Javascript, ReactNative действительно изменился, объединив всю экосистему веб-разработки и нативной мобильной разработки. Сегодня он активно используется такими компаниями, как Facebook и Microsoft. Вы можете посмотреть видео «Объясните, как мне 5» на Facebook на React Native и знаете что? Вам необходимо знать основы Javascript, чтобы начать работу с React Native.
Несмотря на большое разнообразие применений Javascript, у него есть свои преимущества и недостатки — как и у любого другого языка программирования. Все еще довольно интересно наблюдать, как он смог адаптироваться за эти годы как инструмент для выполнения всего и вся. У меня есть Javascript ( технический стек Medium ), чтобы поблагодарить меня за то, что я могу написать это и поделиться им со всеми вами прямо сейчас :)

![В любом случае, что такое связанный список? [Часть 1]](https://post.nghiatu.com/assets/images/m/max/724/1*Xokk6XOjWyIGCBujkJsCzQ.jpeg)



































