Slashdot Mirror


Object-Relation Mapping without the Container

Justin Powell writes "If you follow the latest developer buzz then you've likely heard of IOC (Inversion of Control) containers and AOP (aspect-oriented programming). Like many developers, however, you may not see where these technologies fit into your development efforts. Learn where they can fit with a hands-on introduction to using Hibernate and Spring to build a transactional persistence tier for your enterprise applications."

8 of 49 comments (clear)

  1. Re:aspect-oriented programming by Anonymous Coward · · Score: 4, Insightful

    It is proof that no one paradigm can solve all problems easily. AOP solves some problems easier than OOP, but some prblems it does not.

    AOP has the small problem that it is patented. It was, at the time of creation, genuinly new, so it is only right the the creators should be able to patent it. But doing so has limited the ability of OSS tools to support AOP properly.

  2. Re:Yeehoo, more tools....... by tigersha · · Score: 3, Insightful

    Lord knows why Slashdot is so anti Java.

    Even Microsoft copied it with .NET. And while everyone here freaks out about Inferno and so on they tend to forget that Inferno is a VM based system just like Java.

    And so, I might like to add is Perl, in which /. is written. In fact, the Perl people are building a new VM just for the job (Parrot).

    Java does have complexities, but a lot of that is solved in 1.5. The API's are complicated but then, so is the real world. They are also complete. And I really do not think that the few (standardized by Sun) API's are worse than the hordes of modules you get for Perl on CPAN.

    --
    The dangers of excessive individualism are nothing compared to the oppressiveness of excessive collectivism
  3. Re:Yeehoo, more tools....... by haystor · · Score: 5, Insightful

    Java the language has been drawn into the hatred here by its association with other things:

    The billions of dollars of advertising that got managers and HR people to take Java classes because it was the way of the future.

    All the things that don't live up to their billing: AWT, Swing, keep trying.

    Anyone else feel like the "write once run anywhere" philosophy just reduced java to the lowest common denominator of functionality?

    Sun has spent a lot of money promising Java will do a lot of things it hasn't done.

    Then there are all the fanboys of java that drive some of us nuts on a daily basis. Just trying to explain to them that even though Java is compiled, it is still interpreted (in the same fashion as Perl or Python) falls on deaf ears.

    Other languages popular here are popular because they bend to the programmers will. With Java it is the programmer who must bend.

    Java is and has been all about marketing. Marketing isn't well liked here.

    To me, java is like ms-windows. It is usable, but only after you go out and get someone else's add-ons that should have been included in the first place.

    Oh, and I hate java because it isn't LISP.

    --
    t
  4. Why is this insightful? by amarodeeps · · Score: 3, Insightful
    'Transactional' is a buzzword? 'Persistence' is a buzzword? As far as I understand it, those have well-defined meanings within software design methodology. There is a big freaking difference between a persistent object and a non-persistent object. And I think you'll find that 'transactional' can occasionally be used in a technical, practical way. Go figure.

    I mean, what exactly were the buzzwords here? 'Tier?' 'Enterprise?' 'Build?' 'Introduction?' Do tell!

    So, what was +5 insightful about this comment, other than its pandering to a the Slashdot contingent that doesn't bother reading or thinking very hard about the issues at hand?

  5. Re:A lament to Java. by Anonymous Coward · · Score: 1, Insightful

    Whatever happened to plain Java?

    It died like 5 years ago, sorry you didn't get the news. "The Framework" is now J2EE.

    Besides, why do I need yet another framework? What was wrong with the old one?

    A lot of things, starting with cost and complexity. Sure if you've already spent the $100K to rollout WebLogic, this isn't for you. But for smaller projects and non-banks, having something lighter-weight than J2EE would be a godsend. Especially since the basic functionality is "free" with .NET and doesn't require a pricy app server system. (and yes i know about the free J2EE servers out there, they're still expensive to support.)

  6. Re:A lament to clue by tigeba · · Score: 5, Insightful

    "Whatever happened to plain Java?"

    We got tired of reinventing the wheel. These API's exist because the solve problems. By not having to deal with these problems, you can focus on your specific business needs.

    Have fun writing everything in C++ (no STL mind you) and no linking to external libraries. Let me know how it goes talking to the database, or parsing that XML file some vendor just sent you.

    I can't tell you how many times someone has said to me "Gee if we just had our own implementation of platform and vendor neutral database connectivity API it would solve a critical business need!".

  7. Re:A lament to Java. by bay43270 · · Score: 2, Insightful

    So you're bitching that Java got too complex, and it's going to collapse under its own weight. You say it should be simpler. THAT'S WHAT SPRING IS ALL ABOUT!

    J2EE is the result of monster corporations fighting over huge unmanageable solutions. The compromise usually involves using *everyone's* solution (example - both session beans and entity beans exist because IBM and Oracle couldn't agree on a strategy for persistence). Spring is simply the open source community's response: Smaller, lighter, pluggable frameworks. When J2EE collapses under its own weight, those who stick around (ie. don't switch to .NET) will watch frameworks like Spring rise from its ashes to take its place.

  8. Re:Yeehoo, more tools....... by Anonymous Coward · · Score: 3, Insightful
    Then there are all the fanboys of java that drive some of us nuts on a daily basis. Just trying to explain to them that even though Java is compiled, it is still interpreted (in the same fashion as Perl or Python) falls on deaf ears.

    ... and you are both right and wrong. In the end, much of the code is actually really compiled by a JIT-compiler to machine code. Same can and is done with other VMs. And exactly why do you feel compelled to explain that out to fanboys?

    Other languages popular here are popular because they bend to the programmers will. With Java it is the programmer who must bend.

    How and why? Why does programmer need to bend more or less than with, say, Perl, Python or Lisp? Lisp has its own extensive runtime environment (even more complete than JVM); and simple yet rather unintuitive syntax. Python has its "whitespace matters" attitude, for people with acquired taste. And perl... oh boy. It's the duct tape of programming; useful, sure, but programmer really has to wrap his or her brains around that beast too.

    Java is and has been all about marketing. Marketing isn't well liked here.

    Java has had its share of hype. But it's NEVER been just hype or marketing. It's a solid platform suitable for many programming tasks. Just because you don't grok it doesn't mean "it's all marketing". In fact, Java is like C in many ways: paving the way for other languages to come; to serve as THE example of a modern programming language.

    To me, java is like ms-windows. It is usable, but only after you go out and get someone else's add-ons that should have been included in the first place.

    And this is just Plain Stupid. I can understand people who claim Java has all and kitchen sink in its API. But to claim it doesn't have enough is just absurd. Name things you are missing that other languages come equipped with, out of the box; otherwise you just sound like a whiny baby.

    Plus, regarding Windows; as little as I care about that platform (I don't own any Windows-box, don't really need one), it's also patently childish to claim it's not useful without add-ons.