January 09, 2006
Java Newsletter - January 2006Eric J. Bruno
A glance at the computer-science curriculum for some universities reveals that the use of lower-level languages such as C--never mind assembler--may be fading away, even though it's still important to know the size of the bus you're riding.
Your monthly resource for new and interesting developments in the world of Java.
A few weeks ago, a co-worker and I were reviewing some Java code. We were somewhat disturbed by the author's apparent ignorance of the memory and performance implications of his design decisions. We wondered how this could have happened. We came to the realization that perhaps Java, and the fact that it abstracts the actual bits and bytes used under the covers, can be partly to blame. This revelation came to me independent from Joel Spolsky's blog on more-or-less the same subject.
When I studied computer science in college in the late '80s, the programming courses I took mainly used C, and in some cases even assembler. Although I was lucky enough to never have had to use punch cards or batch jobs, I was still exposed to the bits, bytes, and physical memory constraints of the computer I was programming on. My opinion is that this built a sense of efficiency that has been carried through to my use of languages that don't require this level of detail. It became instinctive, or intuitive, if you will. (See http://blogs.sun.com/roller/page/tor?entry=kids_nowadays for a little humor on this subject.)
A quick glance at the computer-science curriculum for some universities reveals that the use of lower-level languages such as C, never mind assembler, is quickly fading away. I wonder how many programmers today are being born and educated with programming languages that never expose them to the bits-and-bytes details underneath, and hence the instincts required to become an efficient programmer? Are these programmers missing out on the experience of being in touch with the "soul" of the machine? On the other hand, maybe this level of detail doesn't matter as much in an age where performance and memory are plentiful? It may also provide a level of safety, as programmers are not prone to as many memory-related errors. However, the articles in February 2006 Dr. Dobb's Journal prove to me that it's still important to know the size of the bus you're riding. What do you think? Write me with your opinion and experiences at eric@ericbruno.com
Happy coding,
Java Platform, Core/Desktop
Java Platform, Enterprise/Server
Java Platform, Mobile/Wireless
Java Web Services
Tools
The New Modality API in Mustang (Java SE 6) Java version 6, code-named Mustang, introduces a new Abstract Window Toolkit (AWT) modality model. This new model lets you scope--or limit--a dialog box's modality blocking, based on the modality type that you choose. By doing so, the modality type also allows windows and dialog boxes to have a null parent, which helps to limit the scope of the windows' and dialog boxes' modality. Read more about the four types of modality, and the uses of each, at http://java.sun.com/developer/technicalArticles/J2SE/Desktop/mustang/modality.
Java EE 5 Information Sun has put together a site dedicated to the next release of J2EE, called Java Enterprise Edition (EE) 5. From here you can download the early access specification and software. The site also contains links to informative Java EE articles such as the use of JAX-WS 2.0, and enterprise application character-set conversions.
Visit the Aquarium Interested in GlassFish, Java Web Services, J2EE, SDK, tools, and more? Sun technical experts started The Aquarium which is a collective blog to aggregate server-side activities and news. The blog is dedicated to Sun's Project GlassFish, a community developed and supported open-source application server which even supports the early access version of Java EE 5. Subjects such as Java persistence, Ajax, security, performance, and so on, are covered as they apply to J2EE and Project GlassFish in particular.
Move into the J2EE Community Are you new to J2EE development? Or are you a veteran looking for other J2EE developers to share your experiences with? Visit Sun's J2EE community site to learn from, contribute to, or just be part of the large community of developers doing enterprise Java work everyday.
JBoss Preps 5.0 Platform The open-source platform, due early next year, is the first commercial product based on Enterprise Java Beans 3 and incorporates a new messaging and Web services layer, among other new features. Read about it in this InformationWeekarticle.
Display GIFs on J2ME Mobile Phones Despite their ability to connect to and surf the Web, many mobile phones, from within their own Java environment, are unable to display a Graphics Interchange Format (GIF) file. Tom Thompson builds a lightweight Java-based GIF decoder in February 2006 issue of Dr. Dobb's Journal, available at http://www.ddj.com/documents/s=9948/ddj0602h/0602h.html.
SOA Best Practices Sun has posted an interview with Mark Hapner (architect/lead of EJB, J2EE, JMS, and contributor to JBI) regarding the present and the future of SOA. Needless to say, he's earned my respect. Here is the abstract:
Service-oriented architecture (SOA) has arrived, and with it have come a faster application development process and the ability to adapt more flexibly to changing business needs. The Gartner Group predicts that "By 2008, SOA will be a prevailing software engineering practice, ending the 40-year domination of monolithic software architecture." So what is SOA? Basically, it's an IT approach in which applications rely on services available on a network such as the web to facilitate business processes. Implementing an SOA can involve developing applications that use services, making applications available as services so that other applications can use those services, or both....
Open-ESB Sun's Open-ESB is an open-source Enterprise Service Bus (ESB) that is Java Business Integration (JBI) compliant. The Open-ESB site contains an overview of the software, as well as a links to download early-access versions of the binaries and source code.
NetBeans Profiler 11 Sun Microsystems introduced NetBeans Profiler 11 for Optimized Java Application Run-Time Monitoring NetBeans Profiler Provides Tighter Control During the Development Process; Supports Java SE 5 Applications on Leading Platforms Including New Support for Mac OS X. Profiler 11 is an add-on to the upcoming open-source NetBeans IDE release 5.
Sun Java System Portal Server v7 Sun announced the release of the Sun Java System Portal Server 7. Portal Server 7 lets you build community portals populated with collaborative content including RSS feeds, blogs and wikis. Identity-based portals and community portals, when combined with Sun's leading support of Ajax (Asynchronous JavaScript and XML) portal containers, let users experience the interactive power of the Web along with the personalization and rich application interfaces traditionally associated with the desktop.
Eclipse in Motion Eclipse Foundation introduced "Eclipse in Motion," a four-city seminar series focused on using Eclipse in the enterprise. Designed to offer CIOs, IT managers and developers a practical introduction to Eclipse, the seminar will offer best practices for adopting Eclipse as a strategic integration platform, insights into open source licensing and in-depth case studies of how Eclipse and related technologies are successfully being used in enterprises today.
The "Eclipse in Motion" seminar series, sponsored by Eclipse member companies, will take place in the following locations:
Ajax and DWR: Direct Web Remoting This month's issue of Dr. Dobb's Journal contains an article on Ajax written by your's truly. Although the individual techniques and capabilities have been around for some time, the use of HTML, XML, JavaScript, and the XMLHttpRequest object to form a dynamic web-based application has more recently become known as "Asynchronous JavaScript and XML" (Ajax). This article explores the use of a toolkit called DWR which lets you use Java on the server to listen for and reply to remote requests for data from script executed in the client's browser.
CVS Spam I recently read a blog about a tool called CVSspam. This tool lets you modify the email messages that CVS sends when files are committed. It generates HTML formatted commit messages that use colors, fonts, and a nice design to make the emails you receive more useful.
Various Apache Releases There have been several Apache and Apache-Jakarta project release over the past month. Below is a list of the most popular, along with brief descriptions:
|
|
||||||||||||||||||||||||||||||
|
|
![]() |
||||
![]() |
|
|||
![]() |
||||
![]() |
||||
![]() |
|
|||
![]() |
|
|||