Frameworks in the most case feel like straightjackets, so I understand why developers feel the need to abandon some of the magic and build bits that are actually simple robust and supportable, but it can become hell for subsequent developers.
Frameworks in the most case feel like straightjackets, so I understand why developers feel the need to abandon some of the magic and build bits that are actually simple robust and supportable, but it can become hell for subsequent developers.
Since then I have used:
- Turbo Vision - C++ as well
- Object Windows Library in Turbo Pascal and C++
- Microsoft Foundation Classes in C++
- An in-house framework done in TCL and C
- An in-house framework done in C
- An in-house framework done in a mixture of Perl, C++ and CORBA
- J2EE in Java
- An in-house framework in Java for web development
- ... (lost count of all remaining ones)
The desire for frameworks is something that runs deep with enterprise architects.
How many corporations tend to have architects that take a nice framework and always have to put their own layer on top of it as well.
I can understand the frustration with Java, though. The first time I started reading through "web.xml", I thought it was a bit much. Then I read the EJB specs...
Struts, at least the older versions I've had to maintain, is a nightmare. RoR seemed to have a lot less BS to do the same thing.
And when you do, the ones to blame are the programmers who wrote the app, not the framework.
> Frameworks in the most case feel like straightjackets
You mean "bad frameworks" feel like straightjackets.
Using the right framework for the right reason is a productivity boost.
Using the right framework for the right reason is a productivity boost.
I agree. The difficulty with this is in the long term. Things change: new opportunities, new technologies, new developers, new functionality. Even if you were 100% certain of your choice on day one, it's difficult to measure the precise point beyond which your framework is no longer the "right" framework. I'm interested in solutions to this problem.A possible solution is to keep your business logic framework agnostic, and write thin wrappers to plug into the framework where required. In theory it should be possible to change frameworks without incurring a major rewrite. This is easier said than done of course.