производительность - переход с c# на java




Советы по переходу с C#на Java? (5)

Поэтому я собираюсь на собеседование на следующей неделе на Java-сайте, и мне бы хотелось, чтобы это не показалось мне невежественным. Я довольно уверенный разработчик C # / .NET и я (ясно!) Готов рассмотреть возможность перехода на Java на Java - мне бы хотелось получить ссылки на ресурсы, которые люди порекомендуют для этого. Меня интересуют ответы на такие вопросы, как:

  • Любые руководства, которые являются грубым эквивалентом Ruby для разработчиков C # Justin Etheridge ? Это было действительно полезно, когда я решил, что хочу узнать грабли Руби (и, таким образом, по крайней мере, немного Ruby). Кажется, есть больше страниц для людей, идущих в другую сторону, хотя ...
  • Какую IDE использовать? Я на самом деле уже купил свой собственный IntelliJ, потому что мне нравится его HTML / CSS / JS, но он не коснулся его фактического смысла, ну, «этот материал Java». Однако я подозреваю, что место, где я собираюсь использовать Eclipse. Итак - рекомендуемые ресурсы для запуска и работы на Mac или Windows (я не суетливый)?
  • Вероятно, это будет интервью по кодированию TDD; Думаю, JUnit - это де-факто выбор, чтобы немного узнать об этом?

Заранее спасибо.


Netbeans - лучшая (и наиболее похожая визуальная студия) IDE для разработчиков Java. Вам понравится, если у вас достаточно ОЗУ.


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

Что касается IDE, многие люди любят Eclipse или Netbeans (Мой любимый) - оба являются бесплатными. Поскольку вы уже владеете IntelliJ, вы можете попробовать это.

FYO некоторые из основных отличий:

  • Отсутствие свойств / авто свойств
  • Нет типа «события» (другой способ борьбы с событиями)
  • синтаксис цикла foreach
  • Реализация «Generics»
  • Проверенные исключения

и, возможно, еще много :)


Поскольку у вас есть только неделя, я бы повторил рекомендацию сосредоточиться на вещах, отмеченных эффективной Java .

Знайте API коллекций. Когда я беседую с людьми, это один из способов избавить людей. Особенно знайте разницу между equals() , hashCode() и compareTo() и что нужно для их правильной реализации.

Знайте, как обрабатывать исключения в Java и как он взаимодействует со стандартными транзакциями EJB.

Если вам посчастливилось приземлиться на работу, я бы потратил некоторое время на знакомство с ландшафтом J2EE, который довольно обширен. В эти дни я бы рассмотрел основы J2EE как EJB, MDB, сервлетов и JPA.

Я бы не стал так беспокоиться об IDE или API xUnit. Эти вещи тривиальны для любого достойного разработчика с опытом.


IDE

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

TDD

Да, вы очень правы в JUnit. После достаточного понимания, хорошо смотреть на другие специализированные библиотеки, такие как HtmlUnit, DBUnit. Кроме того, инструмент покрытия кода, такой как Cobertura, или Emma. Поскольку вы должны пойти с IntelliJ, вам, вероятно, захочется проверить Эмму, поскольку она имеет хорошую интеграцию с IDEA.

переход

Я не думаю, что вам нелегко пережить. ИМО, читая документы и спецификации, вы поймете. Может быть, вы можете пойти на несколько книг по дороге, но, насколько ядро ​​Java обеспокоено, чтение документов и спецификаций API будет хорошим началом. Вы можете использовать SO, чтобы задать вопрос. Я видел много вопросов, таких как «эквивалент C # в Java».


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





java