Javability (Java, Zaurus, Linux, Live) by Jean-Marc Autexier, Saarland/Germany
cat /dev/www | egrep 'Java|Linux|Zaurus|ITnews|Live' > blog

26.9.04 14:17 (Java) Quality recomendations ( , , , )

Here are several (unsorted) tips to improve the quality of your applications:

  • Code convention: important when you develop software in a team, use different IDE's or/and use a version control system. All IDE's support code convention templates, so use them.
  • Testing: write as many test cases as you can and add them to your project. Use JUnit (http://www.junit.org/index.htm) and JUnit IDE support. Write tests before you start implementing (define how you app/procedure should work to find out what you need, and then write it).
  • Comment your code: at least each class/method, but also inside method if ever you do something someone might not understand without your background
  • Document your application: not only inside code, but also write documents (plain text preferred) which explain the architecture of your application. Store documentation with/near your application and in your version control system.
  • Code review: do code reviews, use tools (see below)
  • Code quality check: before or while code review use Java code analyzers. They will help identifying common coding errors (naming conventions, imports, modifiers, duplicate code, … see findbugs bug descriptions):

  • Profiling: from time to time (at least before releases), do long time tests of your application in a Profiler. It will help you to identify bottlenecks and memory problems (Eclipse Profiler)
  • Daily builds: helps to identifiy errors quick after they have been implemented (team) and fix them while developer still know what he did and not days or weeks later
  • Debug: use debuggers to find errors instead of System.out-try-and-error

posted by Jean-Marc Autexier | 0 comments | Permalink | Send to Friends | Google it!
Subscribe

Locations of visitors to this page
selected blogs
ressources
Security
Unsorted
Fun
Free&Open Software
archives
This is a personal web page. Things said here do not represent the position of my employer.
RSS icons by: FastIcon.com