VÄLTIGE KÕRVALMÕJUSID - Funktsioon, mis on definitsiooni (nime) järgi read- only, ei tohi muuta olekut KOMMENTAARID ON PAHAD · Kommentaarid valetavad: Neid ei saa koodiga siduda, Neid ei saa automaatselt muuta, Neid ei saa testida, Nad jäävad "ajast maha" · Tõde on ainult koodis! · Ära kasuta kommentaari, kui sa saaksid kasutada funkstiooni või muutujat MILLAL KOMMENTAARE KASUTADA? · Legal comments · Warning of consequences · TODO comments · Amplification · javadocs in public APIs THE BOY SCOUT RULE - Leave the campground cleaner than you found it Objektorienteeritud disain ABSTRACT CLASSES - Kirjelda tegevuste järjekord, jäta vabaks implementatsioon DEPENDENCY INJECTION, INVERSION OF CONTROL · Klass ei lähe ise "otsima" omale vajalike ressursse vaid need antakse talle ette. · Selgem disain · Lihtsam testida COMPOSITION OVER INHERITANCE · Inheritance is for "is-a" relationships:
• Warning of consequences vahel on oluline panna kommentaar, et miks midagi on tehtud. Nt open source tarkvara kasutamise tõttu tehtud workaround open source tarkvara bugi tõttu ja selle pärast peab rea koodi juurde lisama. Nt kui mõni meetod on väga ressursimahukas, täitmine võtab kaua aega siis väljakutsuja teab, et mida ta välja kutsub ja mis tagajärjed on. • TODO comments • Amplification • javadocs in public APIs avalikult välja antud, ei saa suhelda ja kommentaarid on vajalikud KEEP YOUR CODE CLEAN! THE BOY SCOUT RULE Leave the campground cleaner than you found it. Can you imagine working on a project where code simply got better as time passed? Do you believe that any other option is professional? See on professionaalne suhtumine. 165. Objektorienteeritud disain