Ready for InfoQ 3.0? Try the new design and let us know what you think!

S#arp Lite: S#arp Architecture Simplified To Its Essentials

| by Jenni Konrad Follow 0 Followers on Nov 30, 2011. Estimated reading time: 1 minute |

Billy McCafferty, one of the creators of S#arp Architecture, recently announced S#arp Lite. The new framework is an effort to scale back to just the essential parts of S#arp Architecture, and make it more accessible to all developers.

S#arp Architecture is a framework for developing ASP.NET MVC applications using NHibernate. It focuses on ease of maintenance, domain-driven design, and scalability. According to McCafferty, one of the downsides of building an application with S#arp Architecture is the steep learning curve:

To many, S#arp Architecture is simply too big of an architectural framework to easily get your head around. When I used to discuss S#arp Architecture with teams who were considering using it, I would always suggest that their developers be very experienced and well versed with topics such as dependency inversion, low-level NHibernate, and domain-driven design. The reality of business is that it's not likely that your team will be made up of all senior level developers who are all experts in these topics.

S#arp Lite reduces S#arp Architecture to its absolute essentials. It includes a project template set up to connect to a database via NHibernate, a set of reusable class libraries, a base repository, and a sample project. The base repository only includes the methods Get, GetAll (returning IQueryable, which can be further manipulated using LINQ queries), SaveOrUpdate, and Delete.

McCafferty says that one of the main goals with S#arp Lite was to stick to the architecture of the original project. However, a few things had to change in order to keep S#arp Lite as scaled-back as possible:

  • controllers have been moved from .Web.Controllers to .Web, as part of the presentation layer
  • an .Init project was added to remove initialization-related dependencies from .Web
  • the .NHibernate layer is greatly reduced (and could even potentially be replaced with EntityFrameworkProvider).

For more details on the structure of S#arp Lite, please refer to S#arp Lite: The Basics. The framework is available for download from GitHub.

Rate this Article

Adoption Stage

Hello stranger!

You need to Register an InfoQ account or or login to post comments. But there's so much more behind being registered.

Get the most out of the InfoQ experience.

Tell us what you think

Allowed html: a,b,br,blockquote,i,li,pre,u,ul,p

Email me replies to any of my messages in this thread

This was really required...!! by Ajay Jadhav

From last few months I was thinking about SharpArchitecture adoption in my organization and found that people are reluctant to use it due the steep learning curve.

I am very happy to see this version which has essential things required to just kick off my project easily.

EF 4.1 support by Ajay Jadhav

We have customized S#arp Architecture to use with EF 4.0 and with some issues I think we have successfully done it for a medium sized project which is in production now.

EF 4.1 support for S#arp Lite is a MUST TO HAVE thing now. I there are plans to do, would like to contribute whatever I can.

Thanks again for this great work.

Allowed html: a,b,br,blockquote,i,li,pre,u,ul,p

Email me replies to any of my messages in this thread

Allowed html: a,b,br,blockquote,i,li,pre,u,ul,p

Email me replies to any of my messages in this thread

2 Discuss