За годы веб-разработки на JavaScript я пришел к выводу, что это невероятно мощный язык, и с ним можно делать удивительные вещи.
Он предлагает богатый набор функций, таких как:
- Динамическая печать
- Первоклассные функции
- Вложенные функции
- Затворы
- Функции как методы
- Функции как конструкторы объектов
- Прототип на основе
- На основе объектов (почти все является объектом)
- Regex
- Массивы и литералы объектов
Мне кажется, что почти все можно достичь с помощью такого языка, вы также можете эмулировать ОО-программирование, поскольку оно обеспечивает большую свободу и множество различных стилей кодирования.
С более ориентированными на программное обеспечение пользовательскими функциями (ввод-вывод, файловая система, устройства ввода и т. Д.), Я думаю, будет здорово разрабатывать приложения.
Хотя, насколько мне известно, он используется только в веб-разработке или в существующих программах в качестве языка сценариев.
Только недавно, возможно, благодаря движку V8, он больше использовался для других задач (см. Например, node.js).
Почему до сих пор это относится только к веб-разработке? Что удерживает его от разработки программного обеспечения?
Ответы:
Недавно node.js продвинул разработку на стороне сервера. Итак, теперь можно писать JavaScript для разработки.
Это правда. В истории он не использовался как язык разработки. Но, эй, даже сценарии в клиентской среде (пользовательские агенты) - это тип разработки. Не так ли?
Основная причина, которую я слышал и читал во многих блогах, заключается в том, что люди не знали о его мощи и уникальности до последних лет . То, что сделало это, возможно, было то, что другие языки выполняли свою работу достаточно хорошо, и никто никогда не думал о том, чтобы сделать что-то параллельное.
источник
От сюда :
источник
Почему?
JavaScript - самый неправильно понятый язык
Мы были в мрачной эпохе и до сих пор общему сообществу разработчиков признаем, что JavaScript - это мощный и универсальный язык. Это просто не мейнстрим.
Единственным недавним достижением является то, что node.js стал громким, и люди начинают понимать, что javascript имеет иное применение.
Я следил за разработкой JS & HTML5 для Windows 8, и реакция сообщества .NET была «Боже, почему?».
Просто факт, что большинство не-веб- разработчиков все еще видят в JavaScript тот игрушечный язык, который вы используете для прокрутки меню в ваших браузерах.
По общему признанию JavaScript не соответствует "современным методам разработки". Для меня JavaScript по-прежнему хакерский язык, который я использую с помощью vim, а интернет - моя документация. Здесь нет IDE, нет инструментов разработки, нет автозаполнения или "intellisense", нет графического интерфейса для перетаскивания.
В мире разработчиков Java и .NET они встроены в свои графические интерфейсы и IDE и не смогут программировать в vim.
источник
Ваш список не содержит ничего о записи файлов в систему, что является важной частью разработки программного обеспечения.
Люди не подумают об использовании JS для создания приложения, потому что это де-факто язык сценариев для Интернета, и вы всегда будете использовать правильный инструмент для этой работы.
Зачем писать акры JS для записи файла, когда это тривиальная операция в Java / .NET / C / C ++?
С учетом вышесказанного, как уже упоминали другие, node.js и его библиотеки сделали операции на стороне сервера тривиальными, и с ростом популярности node.js его изучение станет навыком для CV, поскольку вы сможете поддерживать / расширять / строить приложения с этим.
источник
Writing files to the file system has been replaced with HTTP POST.
Нет, если вы пишете API, которые обрабатывают сообщения.Большинство широко используемых языков более мощные и лучше разработаны, чем JavaScript. Все упомянутые вами функции поддерживаются другими динамическими языками, такими как Python или Ruby, которые в целом лучше разработаны. А некоторые из упомянутых вами функций в любом случае не обязательно желательны - многие считают статическую типизацию с выводом типа более предпочтительной, чем динамическую, если у вас есть выбор.
Я не говорю об этом, чтобы избавиться от JavaScript. Мне очень нравится работать с JS при разработке веб-приложений. Но если посмотреть объективно, у JS есть ряд недостатков по сравнению с другими языками:
Единственная особенность, которая действительно отличает JavaScript от других современных языков, - это наследование на основе прототипов (в отличие от классов), и преимущество этой модели сомнительно, поскольку каждый в любом случае просто использует его для эмуляции наследования на основе классов.
Просто нет причин выбирать JavaScript, если у вас есть возможность выбрать другой современный язык. Единственная причина была бы, если бы это был единственный язык, который вы знаете.
источник