Powered by Twitter Tools.

June 2007
M T W T F S S
« May   Jul »
 123
45678910
11121314151617
18192021222324
252627282930  

Chris Donnan : Programming - Brooklyn Style

software, trading, family, fun

Refactoring in Large Software Projects: Performing Complex Restructurings Successfully

I have been reading: Refactoring in Large Software Projects: Performing Complex Restructurings Successfully. Along with the WELC book, an excellent book for the REALITY of day to day programming. How do we continue to write testable code, have emergent architecture, manage complex software day to day…

The RLSP:PCRS book (fun with/ death by acronym) book has a GREAT listing. The original list for me was the “robert martin list”, then - core developer values, I needed to add TDA and a few others. I never put as nice and complete actual list as the book contains … the list is:

DRY - Don’t Repeat Yourself

SCP - Speaking Code Principle

OCP - Open Closed Principle

LSP - Liskov Substitution Principle

DIP -Dependency Inversion Principle

ISP - Interface Segregation Principle

REP -Reuse/ Release Equivalency Principle

CRP - Common Reuse Principle

CCP -Common Closure Principle

ADP -Acyclic Dependencies Principle

SDP - Stable Dependencies Principle

SAP - Stable Abstractions Principle

TDA - Tell Don’t Ask (LOD mentioned as well)

SOC - Separation of Concerns

Maybe I will embellish, but you can certainly google ALL of these - THESE are the code developer principles of of good OO software development IMHO.

Go - read - enjoy

-Chris

 

No Responses to “Refactoring in Large Software Projects: Performing Complex Restructurings Successfully”

  1. Chris Donnan : Programming - Brooklyn Style - NDepend, on June 12th, 2007 at 5:27 pm, said:

    [...] In my reading of Refactoring in Large Software Projects: Performing Complex Restructurings Successfully - I have been thinking about how to look at some of the dependencies we are dealing with in one of our frameworks. The framework has been widely used - and successful. It is however very monolithic in its solution structure. I will say - much of it has been well done by smart folks. That said, we still need to start to get to a model where we have a “core” and some ala carte add-ons, as opposed to a monolithic model so we can deal with some elements with different levels of volatility. In any case - that book, talks a lot about subsystem and package dependencies. Robert Martin’s writings (as well as some other folks from ObjectMentor) talk quite a bit about dependency management between parts of applications.  [...]

Comment on this post below

You must be logged in to post a comment.


You can leave a response, or trackback from your own site.