Переход от 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.