GANG Meeting July 20, 2011: Steve Bohlen presents Refactoring to a S.O.L.I.D. Foundation

When

From: July 20, 2011 06:00 PM

To: July 20, 2011 09:00 PM

Publication date: February 17, 2011 12:00 AM

Where
Street: 1000 Towne Center Dr, suite 1930
City: Southfield
State: Michigan
Country: USA

What

Title: Refactoring to a S.O.L.I.D. Foundation

In this session we take a small, functional but tightly-coupled, software solution and improve its design using each of Robert C. Martin's S.O.L.I.D. principles as follows:

SRP: Single Responsibility Principle
OCP: Open-Close Principle
LSP: Liskov Substitution Principle
ISP: Interface Segregation Principle
DIP: Dependency Inversion Principle

Each principle is applied in sequence to the existing solution, making it possible for the attendee to observe the principle in relative isolation first while also evolving an understanding of how the principles all collaboratively reinforce each other when applied together.

Before each principle is applied and the solution is refactored to introduce it, the attendee is presented with one or two simple PowerPoint slides to introduce the concept and provide some abstract understanding of its goals and benefits to OO programming. The principle is then applied to the existing solution, demonstrating the practical application of the principle to working software.

At each step along the way, the existing solution (a simple console application) is re-executed, demonstrating that the overall behavior of the software solution has not been negatively impacted by the various refactorings.

Speaker: Steve Bohlen

Currently a Senior Software Engineer for SpringSource where he is the Technical Lead and Community Evangelist for the Spring.NET Framework, Stephen brings his varied 18-year-plus experience in software and technology to the design and delivery of Software Engineering Solutions and Frameworks for other Software Engineers. In addition to his work on Spring.NET, Stephen is also an active contributor to several other .NET Open-Source Software projects including NHibernate, NDbUnit, and others as well having developed a number of Visual Studio productivity add-ins.

Active in the software development community, Stephen speaks publicly, blogs (semi-)regularly, and is the author of several popular screencast series focused on Agile and ALT.NET concepts and technologies including the widely-praised 15-part Summer of NHibernate video series introducing viewers to the popular open-source O/RM tool. Stephen is also a founding/organizing member of the NYC ALT.NET user group which meets monthly to discuss Agile-focused techniques and technologies in the world of Microsoft software development and beyond.

Blog: http://blog.unhandled-exceptions.com/

Meeting Slides
Contact
David
Email: president@migang.org
Phone:
Cell:
Website:
Category
GANG Meetings