Design Principles

Digging out the Draft Bucket: This isn’t really a completed post, but rather thanleave it in my Draft folder forever, I’m just going to post it. That way it’s infamywill live forever.

There’s a massive summary of design principles in the ASP.NETMVC Forums project introduction. The actual code in the project is opaque to me.I’d need to learn the framework before I’d understand how he’s working on it.

Rocky on TDD, with anexplanation on how comprehensive testing means writing more test code than real code.”No one actually does this.” “I once watched a TDD (and MVC/MVP) presentation.The speaker wrote several pages of code to build and test a presenter that did a bunchof work. Nice stuff, until you realized that all that could have been done in 1-3lines of code using data binding. I asked him why he did this rather than using databinding. The answer: you can’t test data binding. I’m afraid my jaw dropped. See,I have a wife and kids. I like to get home and spend time with them. If I can write3 lines of code, or write 3 pages of code that I need to test and debug, I’m goingto pick the 3 lines of code every time”

Authorization system inCSLA.

Polymorphic MV*.

For when I need some new article materials: ABig Hanselman Article on Code Learning Online.

Cohesionand Coupling

Articles on SOLID:

  1. SingleResponsibility Principle
  2. Open/ClosedPrinciple
  3. LiskovSubstitution Principle