Going Out of my Head
Get it right, or get it done?
Do some concepts work better in theory than practice? Everyone who develops Java is implicitly a convert to the ideas of object-oriented programming... until you need to provide some functionality to disparate objects in a way that subclassing and delegation don't really suit (logging can be like this). And then suddenly, we're going outside the box to hand responsibility over to some supposed container (the inversion-of-control pattern) or dynamic insertion of code at runtime (e.g., aspect oriented programming). Sometimes it's enough to make you wonder if the 2% of your needs that don't suit OO are going to shake the foundation of the other 98%.
Similarly, let's consider the popular maxim of don't repeat yourself coding. On its face, it makes perfect sense: if you're writing the same (or substantially similar) code in many places, then you're presumably doing something wrong. After all, isn't the point of OO to encourage code reuse? Shouldn't you be reusing code instead of repeating it?
This is the thinking behind Feature Article, the latest in our ongoing series of not-so-stupid questions. In
(Not So) Stupid Questions 17: Should Code be Clean or D.R.Y.?, we were asked to consider a case where a fancy toString() method is useful for different object hierarchies, but resists typical reuse strategies. Is it so wrong to repeat a dozen or so lines at the highest class level possible, or do we need to reorganize our class hierarchy just to better suit the custom toString()? Are there other approaches? We hope you'll join in with your thoughts on what's right and what's practical and whether they can really be the same thing.
In Java Today, the WSIT project has posted a comprehensive introduction to web services interoperability, Project Tango: An Overview (PDF, 624 KB). "This document provides an overview of Project Tango. Project Tango is an open source implementation from Sun Microsystems of the key enterprise Web services specifications, commonly known as WS-*, that provides interoperability with .NET 3.0. "
"If you've developed many applications using a Swing-based graphical user interface (GUI), you've probably solved some common problems over and over again. Those problems include managing the application life cycle, event handling, threading, localizable resources, and maybe even persistence." Ideally, these are the kinds of common concerns that can be better handled by a framework, namely the Swing Application Framework. In the SDN article Using the Swing Application Framework (JSR 296), John O'Conner introduces the project and shows how to dig into it.
Artima's Frank Sommers sets aside Steve Jobs' controversial comments about Java and asks a bigger question in What Will the iPhone Mean for Mobile Development?. Aside from raising user expectations and changing relationships between hardware vendors and mobile network providers, he notes the effect of bundling in a complete web browser and advocating Ajax web apps. "If other phone vendors follow suit and include in their devices a full-fledged Web browser, Ajax could emerge as the development platform of choice for mobile devices. That could potentially do away with many years' worth of attempts to establish mobile device-specific development platforms, such as BREW or WAP."
David Herron offers a distro-licensing update in today's Weblogs. In JDK-Distros updated for JDK6u2, he writes: "In the Operating System Distributor License for Java (DLJ) project, I've just posted the JDK 6u2 bundles. See the project page for more information. The DLJ bundles are versions of Sun's binary Java release for Solaris and Linux."
Vikram Goyal asks Why Nokia Why?, saying "Nokia N95's GPS leaves me disappointed and disgruntled."
Terrence Barr wants to know How are we doing? ... and what does Dalibor Topic think? "If you haven't had a chance to listen to the just-published podcast with Dalibor Topic I highly encourage you to do so. It's very encouraging to hear Java ME open source is on the right track and the steadily increasing participation and activity in the community seems to confirm that."
In today's Forums,
ITVGuy2000 reports
Glassfish Memory Issues.
"My SJAS server is apparently running out of memory. The memory consumed by the server continues to increase with every deploy and compile until my server no longer responds to incoming requests. If I am lucky I get an exception in the log file indicating out of space (see at bottom of post). This problem occurs on both my development laptop and server (see configuration below). In searching the net and newsgroups I have found the following bug and post..."
In a thread on extending ME classes, terrencebarr seeks to clarify whether the topic is CDC or CLDC, in
Re: About deploying extensions.
"The CLDC/MIDP stack is very different from CDC from a security perspective. On MIDP there is no way for you to add or replace classes or libraries on the system class path for security reasons. This means you cannot add a module or library (extension) to the system and make that available to multiple applications. There is also no way for you to tell the JVM to do that, again for security reasons. Only the vendor of the CLDC/MIDP stack is allowed to make such modifications or extensions."
Finally, vince kraemer wants to know What can I dynamically reconfigure? "I am looking for a list of configuration settings that can be updated dynamically... Is there a complete list of these available somewhere? I have seen this, but it really doesn't have the level of detail that I am looking for. On the flip side... is there a list of configuration settings that require a restart to take effect?"
Current and upcoming Java Events :
- July 20-22 - Research Triangle Software Symposium 2007
- July 23-27 - O'Reilly Open Source Convention 2007
- July 27-29 - Desert Southwest Software Symposium 2007
- July 27-29 - OpenSourceLive! in Denver
- August 2-4 - JustJava 2007
- August 3-5 - Central Iowa Software Symposium 2007
- August 3-5 - Northern Wisconsin Software Symposium 2007
- August 10-12 - Atlantic Northeast Software Symposium 2007
- August 17-20 - Southern Ohio Software Symposium 2007
- August 24-26 - Central Florida Software Symposium 2007
- August 29-31 - NFJS eXchange 2007: London
- September 6-8 - The Rich Web Experience 2007
- September 14-16 - New England Software Symposium 2007: Fall Edition
Registered users can submit event listings for the java.net Events Page using our events submission form. All submissions go through an editorial review before being posted to the site.
Archives and Subscriptions: This blog is delivered weekdays as the Java Today RSS feed. Also, once this page is no longer featured as the front page of java.net it will be archived along with other past issues in the java.net Archive.
Get it right, or get it done?
- Login or register to post comments
- Printer-friendly version
- editor's blog
- 428 reads





