Coming from Java background, I am now working in a Microsoft shop where we use MS technologies only. Can you please map this architecture stack to the MS world? I am not looking for equivalents to specific layers of the stack, but a proven end-to-end stack that is known to work in the real world:
Thanks!
Architecture Stack:
Hibernate
Spring DAO
Spring Declarative transaction management
Domain model POJOs
Spring MVC
BlazeDS
Flex
Flex Interactive data visualization for charting and interactive data analysis
Cross cutting concerns:
Security using Acegi+ACL (Data content authorization for user roles)
Testing with Mock Objects
Deployment using Ivy+Ant
Logging with Log4J
Architecture Stack:
For DI, you can just go for spring.net if that is what you are familiar with. Spring and Castle Windsor are probably the most mature, followed closely by StructureMap.
Cross cutting concerns:
Security using Acegi+ACL (Data content authorization for user roles)
probably have to roll your own.
Testing with Mock Objects
.net methods are not virtual by default like java, which dramatically limits what a dynamic proxy (the secret sauce that makes mocking frameworks work in static language) can do. Either Rhino.Mocks or Moq would be the most used that are free, and use the dynamic proxy approach. There is also Typemock Isolator which will mock pretty much anything, but it is 800$/seat.
Deployment using Ivy+Ant
Ivy would be Cruise Control if you want free, and TeamCity if you want good (caveat: I am a jetbrains fanboi ;-) Ant would be NAnt or MSBuild (virtually the same thing)
Logging with Log4J
Two main choices, either log4net or the Microsoft Enterprise Library Logging Block (love their names) log4net is definately the more lightweight of the two choices, but it depends what you want to do
The following are not so much exact equivalents, but more alternatives used in the .NET world.
Spring MVC -> ASP.NET MVC
Flex -> Silverlight (client side only)
Flex interactive data -> Silverlight charting or ASP.NET Charting
Hibernate -> ADO.NET entity framework.
EDIT:
I think the following would be a good starting point (I have left out the things I do not know anything about, such as "declarative transaction management").
SQL Server
ADO.NET Entity Framework
.NET RIA Services
Silverlight (charting components are included in the Silverlight toolkit)
For logging I prefer log4net.
As for reporting and data analysis you might also want to look at SQL Server Analysis Services and Reporting Services.
Also check out Team Foundation Server for testing, automated builds and deployment.
If you love us? You can donate to us via Paypal or buy me a coffee so we can maintain and grow! Thank you!
Donate Us With