Practical
Embedded Java

Coding Standards


A practical engineering approach to using embedded Java in real-world applications.


...



How I learned to love coding standards:

Programmers tend to be independent. Some programmers, especially neophytes (with little exposure to team programming efforts or little experience using other people's code), tend to see coding standards as a strait-jacket which imposes evil, creativity-crushing restrictions on their spontaneity and inventiveness. Not so. Architects and carpenters agree on units of measure, blueprint conventions, reasonable building codes, and dimensional lumber standards without inhibiting creativity. I don't want to live in a house built by someone who thought they had no need to conform to accepted standards for safety and usability, and you probably don't either. The same goes for using other people's software and hardware designs. Properly applied, reasonable standards make everyone's job easier and even more fun.


Some Code Standards Documents
CodingStandardsDraft2.pdf (150 KBytes)

We are currently working on defining our coding standards at Systronix, here's the current draft.

Sample code generation templates XML file for Eclipse
codetemplatesDec02.xml 2003 Dec 01
Screen capture showing importing the code templates
Here are the code generation templates we use at Systronix. We're still refining these, with the goal of making them as clear as the Sun Javadocs, but also with feaures to support our use of CVS, our code release guidelines, etc. Download and save the template file. To import it into Eclipse, use the Window>Preferences>Java>Code Generation menu, then click on "Code and Comments", click the Import button, then browse to the template file and select it. Click on the screen capture for an idea of what this all looks like.
screen captuer of file header
Here's a screen capture of a file header which uses our coding standards and Eclipse templates.
pdf icon CodeStandardsRubric.pdf (20 KBytes) This is the rubric used in grading code quality in the University of Utah CE4710 class fall 2003.

 
Systronix® 939 Edison St, Salt Lake City, Utah, USA 84111
Tel +1-801-534-1017, Fax +1-801-534-1019
contact us     Time Zone: MDT (UTC-6)
 

Java and all Java-based marks are trademarks or registered trademarks of Sun Microsystems, Inc. in the U.S. and other countries.
Systronix is independent of Sun Microsystems, Inc.
TStik, JStik, JCX, JStamp, JSimm, JDroid, and JRealTime are trademarks of Systronix, Inc.
1-Wire, iButton and TINI are trademarks of Dallas Semiconductor
Simmstick is a trademark of Dontronics
LEGO® is a trademark of Lego A/S, Denmark