By : Ajay Singh, Tech Lead, Birlasoft Limited
Source : http://www.springframework.net
Activity: 4 comments 609 views last activity : 07 23 2010 14:56:28 +0000
Spring.Net is an enterprise development framework. The design of Spring.NET is based on the Java version of the Spring Framework, which has shown real-world benefits and is used in thousands of enterprise applications world wide. Spring .NET is not a quick port from the Java version, but rather a 'spiritual port' based on following proven architectural and design patterns in that are not tied to a particular platform.
Spring.NET provides comprehensive infrastructural support for developing enterprise .NET applications. It allows you to remove incidental complexity when using the base class libraries makes best practices, such as test driven development, easy practices. Spring.NET is created, supported and sustained by SpringSource.
The breath of functionality in Spring .NET spans application tiers which allows you to treat it as a ‘one stop shop’ but that is not required. Spring .NET is not an all-or-nothing solution. You can use the functionality in its modules independently.
Spring.NET consists of the following modules. Click on the module name for more information.
Spring.Core – Use this module to configure your application using Dependency Injection.
Spring.Aop – Use this module to perform Aspect-Oriented Programming (AOP). AOP centralizes common functionality that can then be declaratively applied across your application in a targeted manner. An aspect library provides predefined easy to use aspects for transactions, logging, performance monitoring, caching, method retry, and exception handling.
Spring.Data – Use this module to achieve greater efficiency and consistency in writing data access functionality in ADO.NET and to perform declarative transaction management.
Spring.Data.NHibernate – Use this module to integrate NHibernate with Spring’s declarative transaction management functionality allowing easy mixing of ADO.NET and NHibernate operations within the same transaction. NHibernate 1.0 users will benefit from ease of use APIs to perform data access operations.
Spring.Web – Use this module to raise the level of abstraction when writing ASP.NET web applications allowing you to effectively address common pain-points in ASP.NET such as data binding, validation, and ASP.NET page/control/module/provider configuration.
Spring.Web.Extensions – Use this module to easily expose a plain .NET object (PONO), that is one that doesn't have any attributes or special base classes, as a web service, configured via dependency injection, 'decorated' by applying AOP, and then exposed to client side java script.
Spring.Services – Use this module to adapt plain .NET objects so they can be used with a specific distributed communication technology, such as .NET Remoting, Enterprise Services, and ASMX Web Services. These services can be configured via dependency injection and ‘decorated’ by applying AOP.
Spring.Testing.NUnit - Use this module to perform integration testing with NUnit.
Additional Functionality in Spring.Core
The Spring.Core module also includes the following additional features.
- Expression Language - provides efficient querying and manipulation of an object graphs at runtime.
- Validation Framework - a robust UI agnostic framework for creating complex validation rules for business objects either programmatically or declaratively.
- Data binding Framework - a UI agnostic framework for performing data binding.
- Dynamic Reflection - provides a high performance reflection API.
- Threading - provides additional concurrency abstractions such as Latch, Semaphore and Thread Local Storage.
- Resource abstraction - provides a common interface to treat the InputStream from a file and from a URL in a polymorphic and protocol-independent manner.
Microsoft recently acquire s Teamprise Assets which enable developers using the Eclipse IDE or operating on multiple operating systems, including Unix, Linux and Mac OS X, to build applications with Microsoft Visual Studio Team Foundation Server.
Hi, AJAX web applications bring a variety of rich user experiences to the web, but often those experiences require downloading a lot of code. The result is applications that are frustratingly slow to load and taxing to web servers. Today we are...
Hi, Microsoft Announces the preview release of Ajax Library 6. This update includes a bunch of new capabilities and improvements to our client-side AJAX library, and can be used with any version of ASP.NET (including ASP.NET 2.0, 3.5 and 4.0),...