Μερικοί κανόνες (Kernighan και Plauger 1976, Davis 1995) που πρέπει να ακολουθούμε κατά την κωδικοποίηση είναι οι παρακάτω:
Μη βιαστείτε να αρχίσετε
Τεκμηριώστε πριν αρχίσετε να γράφετε τον κώδικα
Αυτοματοποιήστε όσα στοιχεία της διεργασίας μπορείτε
Χρησιμοποιείτε έτοιμες βιβλιοθήκες
Βάζετε παρενθέσεις για να κάνετε τον κώδικα πιο σαφή
Να εκφράζετε περίπλοκες δομές ελέγχου ως δεδομένα
static final int[][] monthDays = {{31,28,31,30,31,30,31,31,30,31,30,31},{31,29,31,30,31,30,31,31,30,31,30,31}};
days = monthDays[isLeap(year)][month -1];