 |
The beef is with ...
Posted by gvix on January 18, 2006 at 04:12 PM | Comments (7)
*started this as a comment in response to Dependency hell*
-- the fact that I know I could do the same project two years back with Struts and a handful of Commons libraries.
-- the fact that a newbie to Java will recoil with horror at the number of concepts he has to learn to do anything meaningful. Where would you start a newbie on a project like this? (Don't tell me that you won't hire a newbie to join this project. All of us don't have the luxury or the money to hire seasoned professionals)
-- the fact that there are 21 major dependencies, but when I count the total number of actual jars that figure is actually 102. That's 102 libraries not including the JVM and definitely not including the actual project libraries. So before I start the project, I must know how 102 different things work, how they interface in my project, what parts of these 102 libraries are most useful to me. Surely, there is something wrong here? Surely, my project, before it starts, does not hog 26 MB of disk space?
-- the fact that I wasn't actually complaining about joining this project because of the dependencies, but surprised that dependencies in Java have taken over any meaningful project development because of lack of support in the actual Java language (See second last line in the previous entry)
Well on with the project. So where should I start first? I know Struts. So should I carry on to Spring and learn IOC? or should I understand Hibernate first and see how that will apply to my project? Umm.. maybe Velocity because presentation is important. No wait.. I am a bit scratchy on Axis..Darn, what about the actual business cases and the project? Hey who's coding that?
Bookmark blog post: del.icio.us Digg DZone Furl Reddit
Comments
Comments are listed in date ascending order (oldest first) | Post Comment
-
So what you suggest is that the Java The Platform should support dependency natively? (I can't see how Java The Language would be able to support dependencies).
Isn't something being done already in this area for Java 7?
Posted by: vhi on January 19, 2006 at 04:34 AM
-
The truth is we don't deliver these Jars, Libraries as true components so you do end up with tons of extranous classes. I bet you are using 20-30% of the actual code in all the libraries combined. If it's a true problem of complexity to other junior developers we typically hide the complete library so developers just call our slimmed down interfaces.
Posted by: smartinumcp on January 19, 2006 at 09:03 AM
-
Hum... Spring is basically trasparent infrastructure. I've used it to manage transactions, hibernate and remoting, and worked just fine. I set up the configuration files for coworkers that didn't even read the docs and they didn't called me back for more explainations, so I guess you just need one developer who knows how to set it up.
Velocity is usually pretty easy if you keep logic inside java classes.
Hibernate is another story. There's no way you can teach a newby how to use it, since most people get out of school knowing how to manage records, but often with poor OO skills. Or, if they have them, they never managed to put them togherer with a relational database.
That said, the above libraries target skilled developers and fast learnears. I see them used in small teams made up of talented people. If you need to employ newbies and the like, yes, it's better to start with something similar to .NET -> jsp and rowsets (and a little Spring to manage the JDBC boilerplate, believe me, it helps so much you won't regret it).
At the same time, it's a bit hard to think about building a big project with these tools, unless you also have lots of people (which is not the case in many places, I've never been involved in a project with more than 6 developers, yet I've never developed projects with less than 30.000 loc of java sources in the last three years).
Using Spring and Hibernate reduce the number of lines of code you have to write, but yes, you have to know how to use these tools.
So, I don't really care about having 100 jars in my project, as long as they save me the development of tens of thousands of locs and let me concentrate on the problem at hand.
Posted by: aaime on January 19, 2006 at 12:47 PM
-
博澳 流水线以丰富的经验和先进的计算机辅助设计 生产线来满足客户的要求,设计出合理的 工业流水线.
Posted by: sunhuanjun on November 18, 2007 at 11:04 PM
|