Языки сценариев и скомпилированные языки для веб-разработки

Несмотря на то, что я пришел из PHP-среды, специализирующейся на веб-разработке, я также много времени проводил с C # и C ++ на рабочем столе.

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

Когда следует использовать языки сценариев над скомпилированными языками для разработки веб-сайтов?
(и наоборот)

Просто для пояснения, ради этого вопроса я определяю «язык сценариев» для обозначения интерпретируемого языка, такого как PHP, Python или Ruby, и «компилируемый язык» для обозначения строго типизированного компилируемого языка, такого как C # , C ++, Java или VB.

12 голосов | спросил Austin Hyde 3 J0000006Europe/Moscow 2010, 17:02:09

5 ответов


0

Программист может написать хороший /плохой быстрый /медленный масштабируемый /не масштабируемый код на любом языке. Хотя некоторые языки и технологии усложняют задачу. По моему опыту, с помощью языков сценариев вы можете создавать небольшие и средние приложения быстрее, чем скомпилированные языки, такие как Java. Тем не менее, по мере того, как размеры приложений увеличиваются, скомпилированные языки становятся все более подходящими для задачи. Я думаю, что это происходит из-за строгой типизации объектов, более глубоких уровней архитектуры для управления задачами и большего количества сред QA для проверки того, что все работает так, как должно быть, когда происходят изменения.

ответил Jay 4 J0000006Europe/Moscow 2010, 18:44:44
0

Я нахожу это главным образом вопросом мнения. Сначала я ненавидел предварительно скомпилированные веб-приложения, которые предоставляет asp.net, но я привык к этому, поэтому больше не ненавижу. У него есть преимущества и недостатки:

Pro

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

Con

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

Мне всегда нравилось, как просто обновлять один файл в проекте PHP без необходимости перестраивать проект или что-то в этом роде. С другой стороны, .net имеет хорошую IDE, которая позволяет отлаживать все, от внутреннего интерфейса (C #, VB.net) до внешнего интерфейса (Javascript) в одном пакете. Но опять же; оба имеют свои преимущества и недостатки.

ответил Rob 3 J0000006Europe/Moscow 2010, 17:07:35
0

Я бы не стал проводить такое четкое различие между компилируемыми и интерпретируемыми языками - это на самом деле просто деталь реализации и имеет тенденцию меняться со временем (быстрее, чем сами языки). Пример: благодаря Facebook, PHP теперь также является "скомпилированным языком" . Другой пример - мне нравится веб-разработка с схемой - и моя предпочтительная реализация схемы теперь запускает виртуальную машину и в этом смысле по крайней мере так же скомпилирована, как и Java есть.

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

ответил gcbenison 10 J0000006Europe/Moscow 2012, 03:29:43
0

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

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

ответил zildjohn01 3 J0000006Europe/Moscow 2010, 17:09:31
0

Я думаю, что скорость является ключевой проблемой в веб-приложении, в частности

  • как быстро написать мой код
  • как быстро можно исправить мой код
  • как быстро можно выполнить рефакторинг моего кода
  • как быстро можно проверить мой код

То есть меня беспокоит скорость самой медленной ссылки: меня самого. Все остальное достаточно быстро для твиттер-подобных загрузок.

Сегодня номером один в моем оценочном списке для нового проекта будет Tornado и Python .

Если бы у меня был выбор платформ, конечно.

Ах, Python среди самый быстрый в скриптовых языках .

ответил mico 3 J0000006Europe/Moscow 2010, 17:21:06

Похожие вопросы

Популярные теги

security × 330linux × 316macos × 2827 × 268performance × 244command-line × 241sql-server × 235joomla-3.x × 222java × 189c++ × 186windows × 180cisco × 168bash × 158c# × 142gmail × 139arduino-uno × 139javascript × 134ssh × 133seo × 132mysql × 132