A Framework for MVC and NHibernate - frameworks

I was currently looking at S#arp Architecture. It seems to be still too young to develop anything on top of it.
Is there any alternative to S#arp that include support for NHibernate (fluent a plus), testing and MVC?

I would strongly advice you to just pick up ASP.NET MVC and use fluent nhibernate as your repository. Though Sharp architecture is pretty cool as well.

Related

Is it necessary to learn Zend Framework before learning Magento?

i am newbie in Magento and wants to learn Magento effectively. i know Maegnto is based on zendframe work. i have not worked in Zend framework before.
Is it necessary to learn Zend Framework before learning Magento ??
It is not necessarily required to learn the Zend Framework before.
But it sure helps if you understand the general paradigm of Model View Controller (MVC) to get a better grasp of the system.
While Magento relies heavily on the Zend Framework, it does things its own way in many aspects, so if you want to learn Magento, I would recommend diving right into learning Magento and learning Zend framework on the way where appropriate.
Good in depth tutorials to get started as a developer are:
http://www.magentocommerce.com/knowledge-base/entry/magento-for-dev-part-1-introduction-to-magento
No.
While it would be helpful, I've practically learnt Magento from not knowing anything beyond Python and C#. Programming knowledge and HTML/CSS knowledge is useful, but you don't need to know the in's and out's of the framework to be able to use it.

Microsoft Entity Framework - In the real world

I have been developing an inherited a product for the past couple of months that employs Microsoft Entity framework using the persistence ignorant POCO approach. I use a T4 templates to generate my POCOs which include Fixup methods.
My problem is that is just keep running into too many problems that I believe are inherent flaws in the design of Entity Framework. When I fix one thing another issue pops up.
My question is from a truly professional point of view where teams are writing medium to large scale revenue generating applications for desktop and web what are peoples experience and do people actually use Entity Framework in the "real world".
I realize this is a bit of an open question however I would like to survey peoples view to determine if I am fundamentally missing some core concept of EF.
Which version of EF? I'm using 4.1 and it's working just fine. You don't mention exactly what you're running into, but If you list specific issues, perhaps we (collectively) can help.

Plinqo 4 vs EF 4

Does anyone has experience with plinqo 4?
what are the benefits vs EF 4?
A good answer to this is on the PLINQO site itself
http://www.plinqo.com/why-plinqo.ashx
I looked at EF, NHibernate and Subsonic and finally rested with PLINQO as it seems to have the best bits of all the ORMS without too much of the bloat. Plus sitting on top of LINQ2SQL its pretty fast.
You can only really judge this by trying it yourself but I would save yourself some time and try PLINQO before EF.
Yes, we use PLINQ, it's Extremley good and provides out of the box support for ADO.NET Data Services and WCF Data Contracts.
PLINQO has better serialization across the wire options as well.

Has Entity Framework reached critical mass?

I've been rolling my own object mapping system for over ten years and my current .NET version is pretty stable and I understand it. I've always kept a watchful eye on commercial developments in this area such a Hibernate but I've stuck with what I know.
However, I keep hearing more about Entity Framework and wondered whether it's time to investigate with a view to replacing my own home-grown system with Entity Framework. Microsoft has had a bit of a checkered history in this field with ObjectSpaces getting cancelled. I assume that project has become Entity Framework. Why did they cancel ObjectSpaces and have they got around the problems in Entity Framework? Is Entity Framework "better" than Hibernate?
Cheers, Rob.
I saw a demo of the entity framework ver 4.0 that will be released with Visual Studio 2010. Looked like it would make you very productive. I think this version will make it main stream for .net developers. More info here.
NHibernate has been around a lot longer and i think that if any .NET mapping library has reached critical mass, nHibernate would be it. Have you checked it out?
P.S. NHibernate is also a port from Hibernate which is THE mapping library for Java. That's a petty good pedigree.

Lazy Loading, TDD, Data-First Approach: Are those killer bullets in the heart of Entity Framework?

EDIT: Guys, sure I meant Entity Framework not ASP.NET MVC, it was a typo most probably!
Yesterday I came a cross this article that lists some of the bad stuff with Entity Framework. And after doing some google stuff I found this one which basically is the defender here. These two posts discussed some major issues of entity framework such as:
EF is not a failure because it doesn’t fit TDD development
EF is not a failure because business logic goes into partial classes
EF is not a failure because it treats data as an important part of biz objects
EF is not a failure because it accepts that most people do data first development
EF is not a failure because lazy loading is hard – lazy loading can destroy performance
EF is not a failure because its design tools are 1.0 level
EF is not a failure because it has a poor strategy for merging into source control
Now the points that really concern me in the above list are TDD fitness, Lazy Loading leak, and Source Control issues.
And here are my questions:
Can't I unit test my application methods good enough if I used EF?
What does it mean Lazy loading is hard? Is it unsupported at all by EF?
What does it mean that EF does have a poor strategy for merging into source control? aren't all the files gets checked-in and out like any normal file in the solution?
Hope this clears what I'm trying to ask here, and thank you guys for your assistance! Appreciate it!
Thanks for removing the typo from the question. Now I can make my answer a bit shorter too :-)
The Entity framework did not really offer support for the style of programming preferred by the TDD / SOLID / Alt.Net crowd. This is what the vote of no confidence is about. EF forces you to design your business logic around the persistence framework making it harder to test and maintain your business logic. On the positive side because of all the tooling around entity framework it allows you to get an object model and persistence layer up and running very quickly.
In newer version of EF this has gotten better. I don't know if EF 4 allows for persistance ignorant object models yet, this was the most important shortcoming. But in my opinion this does not really change the fact that EF was built for a different style of programming than the what the writers of the vote of no confidence want. EF leans heavily on tooling and steers you in a database centric way of building your software. The default way of building software is still create a database and generate your object model from that.
I don't think most of the issues surrounding EF are about what's possible. You can always abstract away the EF part from your business logic and build your application test driven. The issues are about what style of programming is made easier. I think you should use the right tool for the right job. If you're building enterprise software in a team that's comfortable with a data-driven style of development you should use EF. If you're building software where persistence is less important than business logic and you're working in a team that's familliar with TDD DDD, BDD, SOLID and all that stuff you're better off using something like nHibernate.
Developers had many grievances with Entity Framework 1.0 (.NET 3.5 SP1). The current release for EF 4.0 (Version 2 but so called because it's released as part of .NET 4.0) addresses most of these complaints. You can already download EF 4 Beta 1 if you are MSDN subscriber.
The Entity Framework Design team and the ADO.NET Team blog have a recent series of posts which talk about the various scenarios supports in EF 4.0 the biggest of which are Persistence Ignorance and POCO support, N-Tier support, T4 templates to name a few. TDD and Data/Model/Entities First are also supported by way of the aforementioned changes. Lazy loading is also there.
Regarding EF things are about to change to THE BETTER! :) EF4 is just around the corner and even though some voices still complain I don't see why they bother. EF has finally become maybe not mature it's only been in the works for a couple of years but at least a reliable and flexible framework.