You are currently browsing the category archive for the ‘Metodology’ category.
Tonci Jukic have a nice post that confirms many of my thinking (never told to anyone). Beside others, the first:
Trying to decide how to design your application is really a headache if you are going to follow some guidelines and patterns like DDD, TDD, BDD, RP, IoC… and in the same time try to figure out how to pull the best from all the worlds.
My personal headache is: “How to make my customer pay for an application developed with that metodology?” The problem is that the patterns needs, correctly, long time to prepare and to manage, but I have no this time, just because the customer does not pay me for that long time. I work as a freelance developer for little companies (1-50 users) that don’t understand. Stop. But it is possible to live looking elsewhere.
NHibernate is the most mature, but is heavily dependent on XML configuration that gets tedious to maintain with time
I have no experience, just an exercise give to one of my students: this was also my impression. I feel that CSDL, MSL and SSDL from Entity Framework are more simple and linear.
What relates these two observations with title of this post? I’m trying to simplify, clean, make more logical every part of my applications (written in C#) to be scripted in a second step with the brand (quasi) new DLR. Why create a model with many parameters thinking about all the possibilities a customer can ask BEFORE the customer ask? A script can act as a configuration that can be made on site, without opening Visual Studio.
So the convention are some rules I follow:
- an object model in the application so it can be scripted via DLR
- make different parts in the application structurally similar, so using extensively “copy & paste”
- Transform “copy & paste” in a T4 template as soon as possible
- all generated classes must be “partial” so that can be extended as you need (but until now I don’t know what is better, between “partial classes” and “extension methods”)
I don’t know if this can be a rule for everyone, an “enterprise class” rule, but it’s the best for me. I don’t need the best API, but the simplest one, that solve the principal noisy problems (for me, Table Adapters in Dataset was the biggest one). And the obvious best integration with Visual Studio.
So NHibernate can be the best OR/M in the world (and it is!) but for me EF is the most productive at the moment.
Last (but not least): we are programmers and we were able to transform our “hobby” in a real work that allow us living (I have a wife and two children). But I cannot program without love: I need to spend some time more, if I like it!
Marco
