distributed java programming 107-198 distributed java programming setting up a java development...
TRANSCRIPT
Distributed Java Programming107-198
Distributed Java Programming
Setting up a Java Development Environment
Distributed Java Programming107-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 Programming107-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 Programming107-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 Programming107-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 Programming107-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 Programming107-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 Programming107-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 Programming107-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 codeFile manipulationCreation of JAR, WAR and EAR files for application
deploymentAutomated running of unit testsLaunching of various processes needed during build Generation of Javadocs