- Implements ... -- Interfaces make composition easier
- Indirection -- Makes testing easier
- IllegalArgumentException? in constructors -- Better not to create an object than to create one that is unusable
- Small methods (Less than one screen) -- Easier to read easier == easier to understand
- Thinking of good names -- With good names you don't need comments
- Indenting +1 level at a time not a random factor --
private void exampleMethod( ExampleObject? object ){ System.out.println("Yo this is ok!"); } not private void exampleMethod( ExampleObject? object ){ System.out.println("Erk this is foul!"); }
- Standards -- Prevents arguments over trivial things. NB: you don't have to agree with the standards, just to use them ;-)
- Automation -- If you can't repeat it it didn't happen
- Deleting Code -- If it's not needed throw it away before it gets in the way.
- Disagreement (For a short time) -- If questionable ideas aren't challenged then better ideas never surface
- Asking -- Never happens enough (don't be embarassed)
- Sharing -- If it's good then pass it on (ideas, code, sandwiches...)
- Pessimism -- If it works first time it's probably wrong
- Big Whiteboards -- Express yourself!!!
- Constants -- Let your compiler check your spelling
- throws ... -- I want to tell you the problems you will have to handle
- Seperation of concerns -- One thing is responsible for doing one thing
- Un-expected behaviour -- A lot of people seem to spend a lot of time doing what they think is expected rather than what is needed. e.g. Design & Documentation
- Hyperlinking -- Really easy way to turn data into information. Wikis are v good
- Going to the pub: let's HaveABeer
Please feel free to comment or add your own
See EvilThings and GoodVsEvil
Plenty of good things (albeit from pre-OO days) in "Code Complete", published by, gasp, Microsoft Press.³GoodThing ³³host³³date³June 27, 2001³agent³Mozilla/4.0 (compatible; MSIE 5.0; Windows NT; DigExt)³GoodThings
Edit this page More info... Attach file...
|
This page last changed on 27-Jun-2001 10:12:21 BST by unknown. |
|