Slashdot is powered by your submissions, so send in your scoop

 



Forgot your password?
typodupeerror
×
Java Programming

Java Add-On Development Kits? 7

Wombchimp asks: "For all of us who program in Java, the development kit is vital to do the slightest piece of coding. But I seriously doubt that there is one person who has not made some custom utility class to fill a void in the JDK. Why is there no real widely known organisation to collate and develop an add-on development kit which could fill this void and collect a database of useful utility classes? Most sites seem to offer full blown applications, but the odds are it took some useful assistant classes to build it. The closest I've managed to find is the Giant Java Tree, which isn't really organised enough to see if what you want has already been coded, and Gnu's Java Library, which doesn't really have enough. What do you think? Is there some site already filling this gap? Or is this idea a waste of time? "
This discussion has been archived. No new comments can be posted.

Java Add-On Development Kits?

Comments Filter:
  • sohp wrote:

    Of course in Perl, XML::Writer and XML::Path don't share any data -- visibilty in package namespaces doesn't work that way, so they can't share data just by virtue of having the same first element in their package name.

    Thanks for clarifying that - if I had thought more about what I was writing in my original post, I would have realized I was blowing swamp gas... I guess I had trouble making the context switch from Java to Perl (and back again?).

  • CPAN [perl.com], the Comprehensive Perl Archive Network, was modeled after CTAN [tex.ac.uk] (the Comprehensive TeX Archive Network), and is highly successful. I think that CPAN is one of the primary reasons that Perl itself is so successful. It would be a good thing for Java to have something that is modeled after CPAN.

    One of CPAN's key features is that its structure encourages collaboration - there is a group that ensures new modules are put into appropriate namespaces, so if a bunch of people want to work on stuff about XML, this group will make sure they choose an appropriate namespace (probably XML::something).

    Java, on the other hand, has a naming convention that I feel discourages cooperation. For example, on CPAN, take two modules such as XML::XPath and XML::Writer. It's clear that these packages were meant to work together, and in theory, they could share some package-specific data (maybe they do, maybe they don't - the point is, they could, if it was necessary to fulfill the mission of the XML:: package).

    If these same authors had written these modules for Java, and if they had followed the Java naming conventions, the modules would be called org.sergeant.xml.XPath and com.megginson.xml.Writer. This makes it difficult for them to share package-scoped data, and also makes it less clear that they are meant to work together.
  • Ah, but you could instead put them both under (to extend your example) org.perl.xml (or org.java or whatever) and solve that problem. That simply entails changing a few lines around. Of course in Perl, XML::Writer and XML::Path don't share any data -- visibilty in package namespaces doesn't work that way, so they can't share data just by virtue of having the same first element in their package name.

    Having said that, this reduces the issue down to the simple matter of users knowing that two perl modules are related because they have similar names, while two java classes in the org.java.xml package do have shared visibility.

    On the constructive side, take a look at JFA Projects [javalobby.org] and The Open Source Java Web Ring [tripod.com]

  • Perl and Python are the only languages I can think of that have centralized distribution of a large portion of their add-on libraries and code. And both of these languages have the property that there is only one implementation for them (ie centralized development and distribution)

    OTOH, for Java, C, C++, and other such languages, there really isn't much of a centralized force (maybe Sun in the case of Java but I'm more thinking about user community). So maybe that discourages the sort of thing you're looking for. I've certainly never seen a site devoted to collecting and sorting C++ class libraries (though such a thing _would be useful).

    But hey, if you want it, set it up! [Maybe VA or Redhat or someone would be interested in supporting it?] I suspect there would be quite a bit of interest for such a thing among Java programmers (though I'm not much of one myself).
  • There's no reason such a scheme couldn't be added to the current Java scheme. The advantage of the scheme is that you can structure your own code without fear of name conflicts and without talking to anyone. This is entirely appropriate if you're writing code that for one reason or another is not likely to leave the organisation.
  • I haven't looked at it in a long while, but Gamelan [earthweb.com] used to be a pretty comprehensive archive. It only had one major flaw - it mixed in commercial stuff and "freeware" together, and it was hard to find just open source or whatever.

    Another archive was JARS [jars.com]. Again, I don't think they really made much differentiation between stuff you could buy and stuff whose source code you could look at.


    --
    A "freaking free-loading Canadian" stealing jobs from good honest hard working Americans since 1997.
  • I think it's a great idea, and not well served at the moment - just recently I was looking for a simple Java FTP client that I could call programatically, and had to look all over the place to find a decent one.

"If I do not want others to quote me, I do not speak." -- Phil Wayne

Working...