Distributed Java Programming - Setting up a Java Development

aniseedsplashSoftware and s/w Development

Aug 15, 2012 (4 years and 10 months ago)

297 views

Distributed Java Programming
107
-
198

Distributed Java Programming




Setting up a Java Development
Environment

Distributed Java Programming
107
-
198

What is the big deal about a
Java Development
Environment?


Writing software is more than just
about writing code.


It is about being able to write high
-
quality code in a repeatable fashion.


“Good software ultimately comes


from good process.”



Distributed Java Programming
107
-
198

What are some of the Important
Parts of a Software Development
Process?



OOD using UML


Design first, then code


Define use cases, map out architecture to suit


Development standards


Code documentation


Architectural design patterns


Source Control


Code review and check in processes


Integration with the build process.


Build Management


Repeatable builds on demand


Training of development team


Automated Unit Testing


Integration with build management


Enables fearless refactoring, regression testing

Distributed Java Programming
107
-
198

Tools to support these Software
Development Processes


UML


TogetherSoft (Borland)


Rational (IBM)


ArgoUML / Poseidon (open source)


Development standards


JBuilder


Eclipse


NetBeans


Source Control


Visual Sourcesafe


Concurrent Version System (CVS)


Build Management


ANT


Automated Unit Testing


JUnit

Distributed Java Programming
107
-
198

NetBeans


NetBeans originally started life as Forte,
a Sun Microsystems development tool.


Sun decided to take the project
commercial and split NetBeans off as
an Open
-
Source project.


NetBeans is a full blown Java
development environment with a
number of powerful features.


NetBeans offers tight integration with
Poseidon (UML), Ant, CVS (source
control) & JUnit (unit testing).

Distributed Java Programming
107
-
198

Source Control


Source control is the heart and soul of
development effort.


You can not have a repeatable
software development process without
using source control.


There is a readily available open
-
source version control system that
most Java IDEs integrate with: CVS.


CVS is available at http://cvshome.org


Distributed Java Programming
107
-
198

Build Management


A repeatable build management
process allows you to integrate the
development efforts of your team often
and early.


Traditionally build management has
been a combination of manual steps
with hard to follow shell scripts.


Because of the cumbersome nature of
performing builds, most development
teams do not practice any build
management.



Distributed Java Programming
107
-
198

Typical Build Process for a
Java Project


Apply a label to all of the source code for the
application.


Checkout all source code by that label.


Perform a complete compilation of all Java
source files.


Run unit test cases to ensure that all codes do
not fail.


Build a JAR, WAR or EAR deployment file the
contains all application configuration and class
files.


Copy the deployment file to a central location.


Notify the development team that a new build
has been successfully completed.

Distributed Java Programming
107
-
198

What is Ant?


ANT is a Java build utility.


Since ANT is Java
-
based it is platform
independent.


ANT is an XML
-
based tool for automating
the various tasks associated with doing a
build. These tasks include:


Automated checking out of source code


Incremental compilation of Java source code


File manipulation


Creation of JAR, WAR and EAR files for
application deployment


Automated running of unit tests


Launching of various processes needed during
build


Generation of Javadocs