Dynamic Languagesare
The Future
Copyright © 2010 by Robert C. MartinAll Rights Reserved.
Robert C. MartinObject Mentor Inc.
Tuesday, March 9, 2010
Static Languages Rule.
Tuesday, March 9, 2010
1980: C vs. Pascal
Tuesday, March 9, 2010
1986: C++, A “Better” C
Tuesday, March 9, 2010
1990s: C++ vs SmalltalkProductivity vs. Safety
Tuesday, March 9, 2010
Why are Dynamic Languages more Productive?
OO.
Tuesday, March 9, 2010
Dependency ManagementandDIP
Tuesday, March 9, 2010
Dependency Inversion
Source code dependencies oppose the flow of control
Interface
Callee
Caller
Flow of C
ontrol
Tuesday, March 9, 2010
The Ultimate Problem of Static Typing.
Tuesday, March 9, 2010
Dynamically Typed Solution
All dependencies are run-time only. Dashed lines don’t know type. Solid lines know type.
Application
Square Circle
make_squaremake_circle
Shape Factory
Tuesday, March 9, 2010
Fewer lines. More Flexible.Productive.
Tuesday, March 9, 2010
Productivity of Languages.
http://barnesc.blogspot.com/2006/05/programming-language-productivity.html
Tuesday, March 9, 2010
Productivity of Languages.
http://wwwipd.ira.uka.de/~prechelt/Biblio/jccpprtTR.pdf
Tuesday, March 9, 2010
But, in the end, safety won.
Tuesday, March 9, 2010
1999: TDD
Tuesday, March 9, 2010
The Three Laws
Tuesday, March 9, 2010
The Litany of Benefits.
Tuesday, March 9, 2010
Professionalism and TDD
Tuesday, March 9, 2010
TDD safety replaces Static safety?
Tuesday, March 9, 2010
fin• unclebob @ objectmentor.com• fitnesse.org• cleancodeproject.com
Tuesday, March 9, 2010
“Too easy to make a mess” -- Ward Cunningham
Tuesday, March 9, 2010
20 years wandering in the wilderness.
Tuesday, March 9, 2010