Codename Jasper: Rails or Django for .NET?
by John Osborn
Like Rails, Django and similar frameworks, Jasper models databases using information derived from their schema. But as Julia points out in her article, rather than relying directly on those schema, Jasper works from an Entity Data Model that is generated by Microsoft's new Entity Framework, providing an additional layer of abstraction that developers can exploit to create more program-friendly models. In her words:
Jasper's use of the Entity Data Model instead of connecting directly to the database means that there will be fewer anomalies to manually code around. For example, if the database was normalized so that contact details are spread across a number of tables (contacts, emails, telephones, and addresses) you could customize a model so that all of this information is contained in one entity. Then when you create a dynamic application, a detailed contact record will be created automatically and not require custom code. Much more of the application can be truly dynamic.
Is this an advantage that resonates with developers? Read the article and tell us what you think.
This sounds a bit like the seperation betwen the ORM layer and SQL Expression layer in SQLAlchemy, so that your object models can be built on top of SQL queries or views rather than just individual tables.
|Hey Simon. I'm not familiar with SQLAlchemy, but I did take a quick look at their site. The Entity Framework that Jasper relies on actually has one more layer of separation from the database than what I believe SQLAlchemy's ORM does. And this is similar to comparing it to something like ROR which also works directly against the database. I have definitely not spent a lot of time in the Rails space. It will be interesting to see how Jasper gets fleshed out and where the similarities and differences will lie.|
|I put up a little rails v.s. django voting app up at: http://railsordjango.com|