Clean Code Development talk at the #netug

image 
Thanks everyone for attending. I enjoyed last night… Special Thanks to Giordano Scalzo's whose slide I used as a base for my talk, and with who I had interesting conversations about ideas and slides…
Make sure to check the list of "good code attributes" at the end of the post. That's the list that we came up with, during the user group…

Content

  1. What
    1. Why Code matters!
    2. What is Bad?
    3. What is Good?
  2. Why
    1. The Broken Window Theory
    2. The Grand Redesign in the Sky
    3. The Sushi Chef Rule (would be nice - NA)
    4. The Hotel Room Rule (would be nice - NA)
    5. The Boy Scout Rule
  3. How
    1. OOP Patterns and Principles
    2. SOLID Principles
  4. How to measure clean code?
    Tools

 

 

PS
If you are able to apply the "Hotel Room Rule" in your projects let me know!


image
Figure: Hotel Room Rule: "Let someone else clean up your code every day"

 

 

References

Books

 

Links

http://www.clean-code-developer.de/

Translated with Google Translate
http://translate.google.com/translate?js=n&prev=_t&hl=en&ie=UTF-8&layout=2&eotf=1&sl=de&tl=en&u=http://www.clean-code-developer.de/

VS2010 Code Metrics
http://bit.ly/bda4T1

JB Rainsberger The Four Elements of Simple Design
http://www.jbrains.ca/permalink/the-four-elements-of-simple-design

How to hire a programmer? Have people fix up some smelly code
http://codebetter.com/blogs/karlseguin/archive/2006/12/01/How-to-hire-a-programmer-_2D00_-Part-2-_2D00_-Improve-this-code.aspx

Object Oriented Principles
http://www.objectmentor.com/omSolutions/oops_what.html

The refactoring catalogue
http://www.refactoring.com/

Let someone else try to refactor your code
http://refactormycode.com/

Giordano Scalzo's blog + presentations
http://giordano.scalzo.biz/
http://www.slideshare.net/giordano/presentations

 

Tools

VS2010
http://msdn.microsoft.com/en-us/vstudio/

Nitriq & Atomiq
http://nimblepros.com/products.aspx

SourceMonitor
http://www.campwoodsw.com/sourcemonitor.html

Ndepend
http://www.ndepend.com/

 

What is clean code?

Our list (Sydney .NET user group - 2010-11-17)

  • User friendly
  • Enjoyable
  • Testable
  • Verifiable
  • Does what the client wants, not what i tell it <-- WOW!
  • Self documented (easy to understand)
  • Consistent - standards, naming
  • Maintainable
  • Fail safe - robust
  • Re usable
  • Auto recovery
  • Portable - device Language independent
  • Customizable
  • Flexible
  • Self optimizing
  • Performant
  • Scalable
  • Cost (Cheap)
  • Secure
  • Responsive
  •  
  •  
  •  
  • ….
  • Meet requirements and client needs
  • Easy to deploy and run

Clean Code Development Slides on SlideShare

Latest Posts

Popular Posts

 
Google Analytics Alternative