]> Java | Big Bee Consultants Ltd

JavaJava

BlockingQueues and Communicating Sequential Processes

A particularly important objective for developers producing of concurrent systems is to produce designs that always give consistent results and cannot deadlock (see The Four Horsemen on why this can be difficult).

XML Catalogs & Catalog Resolvers

XML documents typically refer to external entities, for example the public and/or system ID for the Document Type Definition. These external relationships are expressed using URIs, typically as URLs. However, if they're absolute URLs, they only work when your network can reach them. Relying on remote resources makes XML processing susceptible to both planned and unplanned network downtime. Conversely, if they're relative URLs, they're only useful in the context where the were initially created. For example, the URL "../../xml/dtd/docbookx.xml" will usually only be useful in very limited circumstances. One way to avoid these problems is to use an entity resolver (a standard part of SAX) or a URI Resolver (a standard part of JAXP).

The Single Assignment Pattern

'final' - underused or overrated?

Interfaces - no need to know exactly who you're talking to

I wrote about the Spring Framework Mission Statement earlier. This article follows it by examining the second Spring mission statement bullet, which concerns the use of interfaces in Java:

  • It's best to program to interfaces, rather than classes. Spring reduces the complexity cost of using interfaces to zero.

Everyone knows this is a Good Thing - but why is it good? 

Syndicate content