Веб-платформы - объем контроля, предоставляемый между Java и ASP.Net - PullRequest
2 голосов
/ 22 марта 2012

Я много занимался веб-платформами (в основном .Net против Java) и обнаружил, что обе они служат многим целям.Я хотел бы знать, обеспечивает ли ASP.Net достаточный контроль, гибкость и настройку с точки зрения того, как сервер размещает и управляет веб-сайтом, или Java с, скажем, Tomcat и Swing или Struts2 обеспечивает большую гибкость?1001 *

Так как Tomcat от Apache, я представляю, что они реализовали тот же дизайн и методологию, что и Apache (что мне действительно нравится).Я спрашиваю, действительно ли IIS и Windows Server предоставляют такие вещи.Правильно ли мое предположение?

Ответы [ 3 ]

2 голосов
/ 22 марта 2012

Вот мой личный анализ сравнения двух фреймворков, которые работали на .NET в течение 4 лет и на Java в течение 5 лет.

NET имеет печатающий инструмент, похожий на стек разработки.Ява у тебя немного больше свободы.Это может быть положительным или отрицательным в зависимости от предпочтений разработчика.Другими словами, если вы хотите сделать что-то в .NET, обычно есть один стандартный способ сделать это.Это не относится к Java, где вы можете выбрать из множества библиотек и / или стратегий для выполнения своей задачи.По моему мнению, Java имеет тенденцию обслуживать более квалифицированное сообщество (особенно, поскольку почти каждый крупный университет преподаёт Java), которое обладает большей уверенностью и способностями при проектировании / создании приложений.Это не обобщение всех разработчиков Java EE и .NET, так как я встречал одинаковые таланты в навыках и способностях на обеих платформах, я обобщаю более широкое сообщество в целом.В конце концов, это более сложная среда для настройки и запуска, но вместе с этим появляется дополнительная гибкость.

Что касается серверных сред, вы можете размещать приложения Java EE на нескольких серверах (Tomcat, Glassfish / Apache, JBoss и т. Д.).Большинство из них с открытым исходным кодом, поэтому, если вы достаточно опытны, вы можете углубиться в этот код и выяснить, что именно вы получаете, и изменить его при необходимости.Это абсолютно не так в среде Microsoft.У вас в основном Windows-сервер, на котором работает IIS, и это все.IIS, на мой взгляд, является достойным инструментом веб-хостинга.Изучить основы легко, однако из коробки нет ничего подобного настройке и настройке, которые вы можете настроить с помощью Apache.Например, вы должны установить Helicon (или какой-либо другой инструмент) в качестве дополнения к IIS, если вы хотите создать сложные правила перезаписи для вашего сайта.Правила переписывания легко реализуются в Apache как стандарт.

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

2 голосов
/ 24 марта 2012

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

Если вы знаете платформу, вы можете заставить ее летать. Как заявил @iamkrillin, мне тоже еще предстоит преодолеть препятствия с платформой IIS / .Net. Это верно, независимо от того, размещаю ли я сайт сам (коло - у меня есть оборудование / ОС и т. Д.) Или через хостинг-провайдера. Тем не менее, на хостинге Windows выбирайте разумно, если вы размещаете Если вы знаете, что вам нужен доступ без поддержки, убедитесь, что вы получаете эту привилегию от того, с кем бы вы ни выбрали. Хорошей практикой является установка приложения на средний уровень доверия во время разработки - если вы не выберете выделенный сервер, это, вероятно, будет настройкой безопасности приложения вашего хостинг-провайдера в общих / облачных средах.

Что касается маршрутизации (созданной @GeorgeMcDowd), то теперь в IIS она включена, или, если вы предпочитаете делать это на уровне приложения (ASP.Net) (вместо IIS), вы можете сделать это тоже (RouteTables). Я не знаю, насколько сложным вы предполагаете, что ваши маршруты будут, поэтому я не могу сказать, столкнетесь ли вы с какими-либо ограничениями, предложенными любым из этих вариантов.

Что касается "стандартного" или "печенья", я не совсем уверен, что это значит. У вас есть (масштабная и растущая) базовая библиотека .Net (от Microsoft). Если вам нужно что-то очень специализированное (и не предлагаемое базовой библиотекой), вы можете найти Codeplex и другие (тоже) источники для библиотек, которые вы можете использовать в своем приложении. Если вы используете Visual Studio, вы можете использовать NuGet, чтобы сделать это несколькими щелчками мыши.

Не принимайте во внимание и руководство Microsoft .Net. Он постоянно совершенствуется, обновляется Microsoft .

Существует область, в которой Microsoft серьезно отстает - и это касается мобильных устройств. Против Android и IOS и их соответствующих устройств трудно подняться для Windows (телефона, планшета Windows 8 и т. Д.). Однако есть инструменты, которые позволяют разрабатывать в .Net и распространять на любое устройство. Я только начинаю вникать в это, поэтому не могу сказать, насколько он совершенен или катастрофичен.

Почти единственное, что осталось, это стоимость. Его все еще дешевле размещать на платформах, отличных от Windows. Если у вас уже есть опыт работы с платформами, отличными от Windows, то это не сложно. Однако разница в стоимости хостинга не должна быть вашим решающим фактором, если у вас есть кривая обучения (обычно это скрытая стоимость).

0 голосов
/ 22 марта 2012

Без конкретного примера того, что вы имеете в виду в отношении конфигурации. Я чувствую себя довольно комфортно, говоря, что существует множество способов настройки веб-сайта, его размещения, запуска и т. Д. Из панели управления IIS. С этой целью я никогда не сталкивался с ситуацией, когда думал: «Хотел бы я сделать х с моим веб-сайтом» и не мог заставить IIS сделать это.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...