Selected Publications:
Pattern Languages of Program Design 3
Edited by Robert C. Martin, Frank Buschmann, Dirk Riehle,
Addison Wesley, 1997, ISBN 0201310112
Designing Object Oriented C++ Applications using the Booch Method
Robert C. Martin,
Prentice Hall, 1995, ISBN 0132038374
More C++ Gems
Edited by Robert C. Martin,
Cambridge Press, 1999, ISBN 0521786185
Agile Software Development: Principles, Patterns, and Practices
Robert C. Martin,
Prentice Hall, 2002
Extreme Programming in Practice
James Newkirk and Robert C. Martin,
Addison Wesley, 2001, ISBN 0201709376
UML for Java Programmers
Robert C. Martin,
Prentice Hall (2003)
Bob Martin
Test Driven Design
Robert C. Martin (Uncle Bob) has been a software professional since
1970 and is founder and president of Object Mentor Inc., in Gurnee,
Illinois. Object Mentor, Inc., is an international firm of highly
experienced software developers and managers who specialize in helping
companies get their projects done. Object Mentor offers process
improvement consulting, object-oriented software design consulting,
training, and skill development services to major corporations
worldwide.
Mr. Martin has published dozens of articles in various trade journals,
and is a regular speaker at international conferences and trade shows.
Mr. Martin has authored and edited many books including:
- Designing Object Oriented C++ Applications using the Booch Method
- Patterns Langauages of Program Design 3
- More C++ Gems
- Extreme Programming in Practice
- Agile Software Development: Principles, Patterns, and Practices.
-
-
A leader in the industry of software development, Mr. Martin served
three years as the editor-in-chief of the C++ Report, and he served as
the first chairman of the Agile Alliance.
Bob's Platform:
Professionalism and TDD
In 2008 it is impossible to call yourself a professional unless you
practice Test Driven Development.
- The jury is in. TDD works and works well.
- The Three laws of TDD:
- You cannot write a line of production code unless you have first written a failing unit test.
- You cannot write more of a unit test than is sufficient to fail (and not compiling is failing).
- You cannot write more production code than is sufficient to make the currently failing test pass.
- If you follow these three laws:
- You will be able to continuously improve your design and code because your test coverage will be close to 100%.
- Having a suite of high coverage tests makes code an order of magnitude more flexible and maintainable than a good architecture.
- The tests provide the best kind of detailed documentation
- The tests force you to decouple your design
These disciplines have been proven, time and again, to increase the
flexibility, reliability, maintainability, and understandability of
systems. To follow any other course is irresponsible.
