Почему серверная Javascript широко не используется?

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

7 ответов

Он стал более широко использоваться благодаря движку Google V8. Посмотрите Node.js. Я думаю, что плохая производительность раньше ограничивала эффективность.

Node.js позволяет писать многопоточные пользовательские веб-сервисы мгновенно и в основном способом ООП. Я думаю, вы увидите, что Javascript на back-end только начинает его запускать.

Я думаю, что единственное, что удерживает его, это & ​​mdash; как говорили другие. отсутствие аккуратно упакованного и стандартизованного (по крайней мере, для Linux) решения для отката. Это решение затем должно быть подхвачено крупными хостинговыми компаниями и добавлено как часть их предложений по продуктам, чтобы он действительно снял IMHO. Если это произойдет, я думаю, вы обнаружите, что он взорвется на внутреннем сервере.

Microsoft предложила возможность программировать серверные системы с помощью Javascript (AKA JScript) с 1998 года с помощью ASP. Вы все еще можете разрабатывать приложения ASP.NET с JScript. Так что ничего нового. Я думаю, что причина, по которой он не широко используется для приложений ASP или ASP.NET, заключается в том, что VBScript является "стандартным", а С#, по-видимому, является предпочтительным языком для более опытных профессионалов. Но вам нечего останавливать, кроме политики компании, которая часто ограничивает разработчиков одним языком для корпоративного развития. Одна из причин, по которой JScript не может сильно использоваться корпоративными структурами, заключается в том, что она "больше не будет активно развиваться" . Фактически Microsoft никогда не продавалась "JScript для разработчиков. Или, по крайней мере, не так сильно, как С# и VBScript. Поэтому я думаю, что, возможно, он его поддержал.


JavaScript популярен и широко используется в интерфейсе, потому что он имеет критическую массу, не обязательно потому, что он отличный язык. Никто не принимает решение написать JavaScript для клиентского кода; они просто должны, потому что каждый браузер поддерживает его. На обратной стороне другие языки (Java, PHP, Python, Ruby,...) предлагают преимущества, которые JavaScript не может.


Я не эксперт в этом, но Дуглас Крокфорд говорит в "Javascript: The Good Parts", что JS по сути стал популярным в браузере случайно, а не из-за заслуг.

"Javascript - это язык с большим количеством чем его доля плохих частей. Это прошло от несуществования до глобального усыновления в тревожно короткий промежуток времени. У него никогда не было интервала в лаборатории когда он может быть опробован и полируется... когда апплеты Java не удались, Javascript стал" языком Веб "по умолчанию. JavasScript-х популярность почти полностью независимо от его качеств как языка программирования".

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

У него есть хорошие возможности, как объясняет книга Крокфорда, и node.js может доказать, что это отлично подходит для серверной разработки. Но до сих пор, когда люди имели выбор, они в основном выбирали другие языки.


Короткий ответ: потому что есть намного лучшие альтернативы.

Длинный ответ: поскольку он полностью интерпретируется (и часто не очень хорошо - например, IE6), не предоставляет никаких стандартных механизмов ввода-вывода, отличных от того, что дает среда, имеет свободную грамматику, что приводит к сложным для проверки кода, и многие люди находят OO на основе прототипов намного сложнее, чем OO на основе классов.


Я бы сказал, что это просто случай истории. Javascript родился в Netscape как клиентский язык и никогда не делал переход.

Сравнивая его с известными серверными веб-языками сегодня, я думаю, что наиболее очевидным отличием является то, что батареи не включены в Javascript. Нет стандартной библиотеки.

Сравните это с Python, PHP, ruby ​​и т.д., у которых есть фантастические стандартные библиотеки, которые делают веб-программирование более приятным.


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

Вот почему наибольший процент людей выбирает что-то еще.


Я думаю, что ответ может заключаться в том, что польза для клиентской стороны не всегда хороша для серверной. Например, Javascript (ECMAScript вообще.. также ActionScript) - очень слабый и прощающий язык, который позволяет вам уйти с большим количеством материала. На стороне клиента это часто не только приемлемо, но и предпочтительнее. Вы часто хотите, чтобы ваш пользовательский интерфейс был максимально гладким и прощающим, чтобы улучшить пользовательский интерфейс.

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

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

licensed under cc by-sa 3.0 with attribution.