Каковы эквиваленты следующих понятий .NET(ASP.NET, IIS, Linq и т.д.) В мире Java?
Я единственный среди моих людей, которые перемещаются по воде .NET, а остальное - в мире Java. Поэтому я хотел бы поговорить с ними об общих вопросах. Каковы эквивалентные концепции Java для: (по понятию, я имею в виду цель такой технологии)
- Visual Studio
- IIS
- Linq
- Сервер разработки, который поставляется с VS (я не знаю имя)
- NHibernate, Subsonic,...
- ASP.NET WebForm (есть ли какой-либо эквивалент в Java с перетаскиванием)
- ASP.NET MVC
- и т.д. (Пожалуйста, добавьте некоторые другие понятия, если они важны для понимания)
Спасибо за помощь
Ответы
Ответ 1
Джаваландия - довольно большая экосистема. Существует множество инструментов и рамок для выбора и объединения.
Есть также популярные комбо вроде Tomcat/ Spring/Hibernate, но, конечно, есть и другие.
- Доступно множество IDE: Eclipse, NetBeans, JDevelopper,...
- Веб контейнер или сервер приложений: Tomcat, Glassfish, Jetty, WebLogic,...
- Некоторые сторонние библиотеки имитируют Linq, но они не пользуются большой популярностью
- Доступно несколько ORM: JPA (спецификация), Hibernate, EclipseLink, TopLink,...
- Несколько веб-фреймворков на основе компонентов: JSF, Wicket,...
- Несколько веб-фреймворков на основе действий: Spring MVC, Struts (старая школа),...
И я бы добавил:
- Инструменты сборки: Ant, Mavan
- Управление версиями: SVN, Git
- Документация: Javadoc
- Отслеживание проблем: JIRA,...
- Сотрудничество: Eclipse Mylin
Ответ 2
-
Visual Studio
Visual studio - это среда разработки (интегрированная среда разработки), и она не просто поддерживает .net. Есть много других Eclipse или NetBeans являются популярными ориентированными на Java.
-
IIS
IIS - это веб-сервер. Опять же, это не так .net. IIS может обслуживать все виды контента. Apache - популярный альтернативный веб-сервер.
-
Linq
Интегрированный запрос по языку. Linq состоит из различных методов расширения для поддержки поиска и запроса данных и некоторого дополнительного синтаксиса языка для поддержки вызова этих методов в декларативном стиле. Это довольно специфично для VB и С#.
-
Сервер разработки, который поставляется с VS (я не знаю имя)
Я предполагаю, что вы говорите о веб-сервере разработки. Это основано на Cassini, и есть расширенная версия - UltiDev Cassini 2.0 (бесплатный, но не открытый исходный код). Как и IIS, это всего лишь веб-сервер. Он может содержать asp.net и статический html-контент.
-
NHibernate, Subsonic,...
NHibernate фактически является портом Hibernate, который является Java ORM. Также доступно множество других Java ORM (см. Этот вопрос). Большинство из них основано на Java Persistence API (JPA).
-
ASP.NET WebForm (есть ли какой-либо эквивалент в Java с перетаскиванием)
-
ASP.NET MVC
Страницы сервера Java (JSP) и Java Servlets - некоторые технологии для динамического создания html-контента на стороне сервера Java. Для JSP существует множество визуальных редакторов. См. этот вопрос для некоторых визуальных плагинов JSP для eclipse.
Java Server Faces (JSF) - это платформа веб-приложений для Java. Он следует шаблону на основе MVC. Опять же, для него доступны различные визуальные IDE. Я думаю, что Eclipse имеет несколько визуальных редакторов JSF, доступных в виде плагинов.
-
Etc...
- С# - это язык. Java - это язык.
- С# скомпилирован в Common Intermediate Language, Java компилируется в Java Bytecode
- CIL работает на CLR. Java Bytecode работает на JVM.
- CLR и JVM выполняют компиляцию JIT для генерации машинного кода для конкретной платформы, на которой выполняется приложение.
- Оба описываются как управляемые языки.
Ответ 3
Для большинства из них нет эквивалента 1:1. Существует несколько IDE (Eclipse, NetBeans, IDEA и т.д.), Множество серверов приложений (JBoss, BEA WebLogic и т.д.), Веб-фреймворки и т.д.
Одним из исключений является NHibernate, который фактически исходит из проекта Java Hibernate.
Ответ 4
- Eclipse,
- WebSphere
- Ну, ничего там
- RSA (Rational Software Architect от IBM) поставляется с Websphere (я думаю) и основан на Eclipse
- Hibernate
- JSF, Struts... грузы из них
- JSF, Struts... same
- и т.д.