Newsletter sign-up
View all newsletters

Sign up for our technology specific newsletters.

Enterprise Java
Email Address:

Get creative with <em>Wicked Cool Java</em>

Peek inside a Java book that presents 101 exciting and cool code bits, open source projects, and project ideas

  • Digg
  • Reddit
  • SlashDot
  • Stumble
  • del.icio.us
  • Technorati
  • dzone

Page 2 of 4

Chapter 3 is an exciting chapter to read, but Chapter 4's discussion on crawling the Semantic Web is just awesome. The Semantic Web is a step up from the current Web in that the Semantic Web links concepts to concepts, not hypertext documents to other hypertext documents, via keywords. After introducing you to the Semantic Web, the Resource Description Framework (RDF) for specifying exactly how to relate entities to each other, and RDF Site Summary (RSS) feeds for appropriately tagging documents and syndicating their content, this chapter introduces the open source projects N3 and Jena. N3 is a notation for representing relationships and Jena is an API for working with RDF graphs and converting them to N3 and other kinds of documents. See Resources for an excerpt from Chapter 3.

Chapter 4 also introduces you to Lojban, an artificial spoken and written language based on predicate logic, and shows you how it fits with RDF; introduces Brian's Jorne project that defines standards for combining Lojban with the Semantic Web; and introduces Informa for publishing, aggregating, polling, and filtering RSS feeds.

In its early years, Java acquired the reputation of having no good mathematics and science libraries. This is no longer the case, as Chapter 5 proves. In this chapter, you learn about:

  • Functors—in the context of the Generic Algorithms for Java (JGA) API—and their usefulness
  • Colt's BitVector and BitMatrix classes for modeling logic functions and creating truth tables (respectively)
  • JScience for scientific and mathematics processing
  • JGraphT for modeling graphs
  • Joone for building neural networks
  • JGAP for working with genetic algorithms
  • Jade for building intelligent agents
  • JWordNet for discovering word meanings and relationships among words

Chapter 6 is one of my favorite chapters. This chapter focuses on graphics and data visualization. The chapter begins by looking at SwiXML, an open source Swing layout engine. With this tool, you define your GUI layout as an XML document, and the tool automatically creates the GUI from that document. You no longer need to mess with creating GUI components and setting their properties.

This chapter next introduces you to Batik, an open source tool for rendering the contents of a Graphics2D-based canvas to a scalable vector graphics (SVG) XML file. You can also use Batik to view the contents of SVG XML files. In addition, you learn how to convert JGraphT models to JGraph models; JGraph emphasizes graph visualization, which is not the case with JGraphT.

Do you need to create a pie chart? If so, you'll appreciate Chapter 6's JFreeChart example. The chapter also shows you how to create reports with JasperReports and how to build 2D structured graphics with Piccolo. Although coverage of open source tools dominates Chapter 6, you also examine two graphics and data visualization techniques built into the core Java API—the affine transform is one example.

Chapter 7, another favorite chapter, explores multimedia and synchronization. You learn how to use:

  • Digg
  • Reddit
  • SlashDot
  • Stumble
  • del.icio.us
  • Technorati
  • dzone
Comment
Login
Forgot your account info?
Add comment
Anonymous comments subject to approval. Register here for member benefits.
Have a JavaWorld account? Log in here. Register now for a free account.
Resources