After getting a head of gray hairs and a quickly receding hairline, I have
learned that the simplest solutions are often the best. Having worked with
Java since 1995 and various software development lifecycle methodologies over
the years, I have seen things grow complex in these areas. Thanks to some new
lighter-weight Java tools and agile methods, I can provide a fresh
perspective on developing Java applications in an agile manner.
This article is different from typical Java articles for two reasons. First,
instead of providing in-depth details on some API or cool tool, it provides a
roadmap for building enterprise-class Java applications using agile methods
and plain old Java objects (POJOs). Second, it covers a lot of ground, from
conceptualization through deployment, so for the sake of brevity, there are
minimal code excerpts; however, there's a completely functi... (more)
Last month's issue (JDJ, Vol. 3, Issue 12) covered the basic concepts of
programming with Java's I/O streams, such as the difference between byte and
character streams, the various stream classes, the concept of stream chaining
and more. We'll conclude the subject this month by looking at some practical
uses of these streams.
There are so many uses of streams in Java apps that it's almost impossible to
imagine all the ways they can be applied. Nevertheless, I'm going to show you
several miniature programs that demonstrate some of the ways that Java API
streams can be used. We'll ... (more)
Most programs use data in one form or another - as input, output or both. The
sources of input and output can vary from a local file to a socket on the
network, a database, in memory or another program. Even the type of data can
vary from objects and characters to multimedia and more.
The APIs Java provides for reading and writing streams of data have been part
of the core Java Development Kit since version 1.0, but they're often
overshadowed by the better known JavaBeans, JFC, RMI, JDBC and others.
However, input and output streams are the backbone of the Java APIs, and
understa... (more)
This presentation provides software developers, architects, and technical
leads, a fresh perspective on how to develop enterprise-class Java
applications rapidly, using Agile methods, plain-old Java objects (POJOs),
the Spring Framework, Hibernate, and Eclipse. Also, Extreme Programming (XP),
Agile Model Driven Development (AMDD) and refactoring are methods that can
expedite the software development projects by reducing the amount of up front
requirements and design; hence these methods are also covered with just
enough details and examples to improve the understanding of the lis... (more)
In the previous two parts of this three-part article (JDJ Vol. 3, Issue 12
and JDJ Vol. 4, Issue 1), we looked at the fundamentals of programming with
Java I/O streams and the various APIs they can be used with. This month we'll
conclude this article by discussing the concept of writing custom (or,
specialized) stream classes that can process (or, filter) data in a special
fashion.
Overview
The JDK provides several specialized stream classes, the majority of which
exist in the java.io package. These classes provide a variety of
functionality and usually come in pairs - that is - ... (more)