Переход от ASP.Net к Java для веб-разработки
Моя работа потребовала от меня радикально изменить технологии. Я в порядке с этим, я очень рад, что изучаю новые вещи; но я чувствую, что я очень новичок в Java, особенно на стороне веб-разработки, в которой у меня есть нулевой опыт.
Небольшой фон, я обычно создавал бы сайты с использованием ASP MVC 3, Razor view engine, С#, а на бэкэнде все было бы хорошо TDD'd и с использованием EF для доступа к данным. С .NET в целом я занимаюсь этим около 4 лет.
Теперь я ценю, что для своих целей я не усложню перевод синтаксически своих навыков с С# на Java, это просто все вокруг, рамки, веб-серверы и прочее, которые меня смутят в краткосрочной перспективе. Даже при использовании новой IDE сначала будет неприятно.
Может кто-нибудь предложить какие-либо советы? Я знаю, что мы хотим использовать Spring MVC, предположительно с Tomcat. Нужно ли мне устанавливать и устанавливать Tomcat для целей dev? Или eclipse/netbeans (который я должен использовать?!) автоматически делают это для вас, аналогично тому, как это делает Visual Studio, создавая локальный веб-сервер IIS.
Для TDD есть хороший плагин для eclipse/netbeans, который кто-то порекомендовал бы, поэтому я могу просто щелкнуть правой кнопкой мыши файл класса и выполнить "запустить тесты"
Любые общие полезные ссылки, начатые учебные пособия?
Приветствия
Ответы
Ответ 1
Я не рекомендую начинать с Spring MVC
. Вы должны начать гораздо более низкий уровень, чтобы упростить его с самого начала.
Я рекомендую установить версию Eclipse
IDE для разработчиков Java EE. Эта версия содержит все необходимое, за исключением сервера приложений.
Итак, вам нужно установить Tomcat
самостоятельно.
В Eclipse
теперь вы можете начать с "нового проекта" и выбрать "Динамический веб-проект", который сделает все, что вам нужно для чистого нового веб-приложения.
Из Eclipse
вы можете щелкнуть правой кнопкой мыши проект и нажать "Запустить на сервере", в котором откроется мастер, в котором вы настраиваете вещи для установки Tomcat
.
Вот о чем идет речь. И вы должны использовать Eclipse
, потому что Eclipse
является стандартным редактором в профессиональной среде.
То, что вы теперь должны изучить или где начать, - это прежде всего изучение Java, если вы еще этого не сделали. И затем продолжайте: Servlet API
и Java Server Pages (JSP
) API.
Вы должны получить от вас несколько книг, чтобы обдумать это.
После этого будет намного легче понять, что такое Spring MVC, что он делает и как он работает.
Начиная с Spring MVC в этом случае будет похоже на создание дома, начинающегося с крыши. Я думаю, что это потерпит неудачу.
Изменить. Чтобы закончить это, я нашел эту ссылку здесь, которая кажется мне первой хорошей отправной точкой.
Изменить. Еще одна вещь: стандартная библиотека для TDD
в Java
называется JUnit
, и для использования Eclipse
есть хороший плагин для Eclipse
.
Ответ 2
Большая проблема заключается в том, что вы останетесь застряли в очень увлекательных продуктах Microsoft, и это "волшебные" инструменты и редакторы и плагины, даже сочетания клавиш.
Итак, мне очень тяжело двигаться.
Ответ 3
Некоторые предложения:
-
Test Driven Development - JUnit, HTTPUnit
-
IDE - Eclipse (бесплатно), IntelliJ (коммерческий) - оба предлагают все расширенные функции IDE, которые вы ожидаете, включая встроенные серверы
-
Веб-структура - Важная. Критерии, которые вы должны использовать при выборе структуры, - это возможность внесения изменений без необходимости повторного развертывания или перезапуска сервера для внесения изменений. (Два примера, которые поддерживают это, - это Grails (основанный на script) и Tapestry5 (использует перезагрузку в реальном времени - я уверен, что в наши дни есть еще много чего... но сначала проверьте это или потратите массу времени ожидая развернуть изменения)
-
Сервер - Tomcat7 и Jetty оба хороши
Jetty небольшой, быстрый и гибкий, он может сделать хороший выбор для разработки, даже если вы в конечном итоге используете другой сервер на производстве. Вы можете встроить его в Eclipse (RunJettyRun) или написать свои собственные крючки, чтобы запустить его, так же просто, как:
private static void run(int port, String resourceBase, String descriptor) {
Server server = new Server(port);
WebAppContext context = new WebAppContext();
context.setResourceBase(resourceBase);
context.setDescriptor(descriptor);
context.setContextPath("/");
context.setParentLoaderPriority(true);
server.setHandler(context);
server.start();
server.join();
}
Ответ 4
Попробуйте Oracle ADF (Application Development Framework), он очень похож на Microsoft Visual Studio.