Архитектура Java карты складывает к Microsoft

Происходя из среды Java, я теперь работаю в магазине Microsoft, где мы используем технологии MS только. Можно ли отобразить эту стопку архитектуры на мир MS? Я не ищу эквиваленты определенным слоям стека, но доказанный от начала до конца складывают, который, как известно, работает в реальном мире:

Спасибо!

Стопка архитектуры:
Быть в спящем режиме
ДАО Spring
Управление транзакциями Описания Spring
Модель предметной области POJOs
Spring MVC
BlazeDS
Flex
Flex Интерактивная визуализация данных для построения диаграммы и интерактивный анализ данных

Сквозные проблемы:
Безопасность с помощью Acegi+ACL (Авторизация содержания данных для пользовательских ролей)
Тестирование с фиктивными объектами
Развертывание с помощью Ivy+Ant
Вход с Log4J

6
задан Gareth Davis 2 March 2010 в 13:19
поделиться

6 ответов

Стек архитектуры:

  • Hibernate -> NHibernate
  • POJO модели предметной области -> POCO модели предметной области
  • Spring MVC -> ASP.net MVC
  • BlazeDS -> RIA Службы
  • Flex -> Silverlight

Для DI вы можете просто перейти на spring.net, если это то, с чем вы знакомы. Spring и Castle Windsor, вероятно, являются наиболее зрелыми, за ними следует StructureMap.

Общие проблемы:

Безопасность с использованием Acegi + ACL (авторизация содержимого данных для ролей пользователей)

, вероятно, придется менять самостоятельно.

Тестирование с использованием имитирующих объектов

.net-методы по умолчанию не являются виртуальными, как java, что резко ограничивает возможности динамического прокси (секретный соус, который заставляет имитирующие фреймворки работать на статическом языке). Чаще всего используются бесплатные бесплатные Rhino.Mocks или Moq, использующие подход динамического прокси. Также есть Typemock Isolator, который издевается над чем угодно, но он стоит 800 долларов за место.

Развертывание с использованием Ivy + Ant

Ivy будет круиз-контролем, если вы хотите бесплатно, и TeamCity, если вы хотите хорошего (предостережение: я фанатик с реактивными мозгами ;-) Ant будет NAnt или MSBuild (практически то же самое)

Ведение журнала с помощью Log4J

Два основных варианта: либо log4net, либо блок ведения журнала корпоративной библиотеки Microsoft (люблю их имена) log4net определенно является более легким из двух вариантов, но это зависит от того, что вы хотите сделать

{ {1}}
2
ответ дан 17 December 2019 в 07:03
поделиться

Это не столько точные эквиваленты, сколько альтернативы, используемые в мире .NET.

Spring MVC -> ASP.NET MVC

Flex -> Silverlight (только на стороне клиента)

Интерактивные данные Flex -> диаграммы Silverlight или диаграммы ASP.NET

Hibernate -> структура сущностей ADO.NET.

РЕДАКТИРОВАТЬ:

Я думаю, что следующее будет хорошей отправной точкой (я упустил то, о чем я ничего не знаю, например, «декларативное управление транзакциями»).

SQL Server
ADO.NET Entity Framework
.NET RIA Services
Silverlight (компоненты диаграмм включены в набор инструментов Silverlight )

Для ведения журнала я предпочитаю log4net.

Что касается отчетов и анализа данных, вам также может потребоваться обратиться к службам SQL Server Analysis Services и Reporting Services.

Также посетите Team Foundation Server для тестирования, автоматической сборки и развертывания.

1
ответ дан 17 December 2019 в 07:03
поделиться

Я бы добавил одну вещь, поскольку я не думаю, что об этом еще упоминалось, - это то, что Unity является реальной (и более простой!) Альтернативой Spring:

http://www.codeplex.com/ unity /

0
ответ дан 17 December 2019 в 07:03
поделиться

.NET-магазины обычно более предписательны в том, что "разрешено", поэтому сначала спросите своих коллег, прежде чем нырять и просто выбирать что-то.

Я использовал Spring.NET и Castle Project, и оба они довольно надежны, но не 1:1 по функциональности с их аналогами на Java. Магазины MS часто стремятся держаться ближе к материнской компании, поэтому чаще всего используют такие вещи, как MS Enterprise Library/Unity (солидная, но многословная), ASP.NET MVC, Silverlight и Entity Framework.

Для CI есть TFS (Team Foundation Server, бесплатная версия теперь поставляется с Visual Studio), но если вы хотите придерживаться свободного программного обеспечения, есть CruiseControl.NET, nAnt, nUnit, в общем, возьмите Java-проект, преобразуйте "j" в "n" и, возможно, найдется продукт ;)

.
1
ответ дан 17 December 2019 в 07:03
поделиться

Я знаю, что у пары из них есть эквиваленты:

log4j -> log4net

Hibernate -> NHibernate

Spring -> Spring.net

Также, кажется, что POJO не так уж специфичен для java (ну, я полагаю, что часть J специфична :)). Я думаю, что "простой старый объект C#" можно считать эквивалентом...

0
ответ дан 17 December 2019 в 07:03
поделиться

Я нашел кое-что, Sharp + Silverlight дадут мне 80%? Считается ли это лучшей практикой в мире .NET?

http://wiki.sharparchitecture.net/MainPage.ashx

Самый большой недостающий кусок, который я вижу, это функциональность Acegi+ACL...

0
ответ дан 17 December 2019 в 07:03
поделиться
Другие вопросы по тегам:

Похожие вопросы: