Robert C. Martin
   HOME

TheInfoList



OR:

Robert Cecil Martin (born 5 December 1952), colloquially called "Uncle Bob", is an American
software engineer Software engineering is a systematic engineering approach to software development. A software engineer is a person who applies the principles of software engineering to design, develop, maintain, test, and evaluate computer software. The term ''p ...
, instructor, and best-selling author. He is most recognized for developing many software design principles and for being a founder of the influential
Agile Manifesto In software development, agile (sometimes written Agile) practices include requirements discovery and solutions improvement through the collaborative effort of self-organizing and cross-functional teams with their customer(s)/ end user(s), ...
. Martin has authored many books and magazine articles. He was the editor-in-chief of '' C++ Report'' magazine and served as the first chairman of the Agile Alliance.


Companies

In 1991, Martin founded Object Mentor, now defunct, which provided instructor-led training on the
extreme programming Extreme programming (XP) is a software development methodology intended to improve software quality and responsiveness to changing customer requirements. As a type of agile software development,"Human Centred Technology Workshop 2006 ", 2006, P ...
methodology. , he operated two companies: *Uncle Bob Consulting – provides consulting and training services *Clean Coders – which provides training videos


Software principles and advocacy

Five of Martin's principles have become known collectively as the ''
SOLID Solid is one of the four fundamental states of matter (the others being liquid, gas, and plasma). The molecules in a solid are closely packed together and contain the least amount of kinetic energy. A solid is characterized by structur ...
principles''. Though he invented most of the principles he promotes, the
Liskov substitution principle The Liskov substitution principle (LSP) is a particular definition of a subtyping relation, called strong behavioral subtyping, that was initially introduced by Barbara Liskov in a 1988 conference keynote address titled ''Data abstraction and ...
was invented by
Barbara Liskov Barbara Liskov (born November 7, 1939 as Barbara Jane Huberman) is an American computer scientist who has made pioneering contributions to programming languages and distributed computing. Her notable work includes the development of the Liskov su ...
, while the open–closed principle was invented by Bertrand Meyer. Martin is a proponent of software craftsmanship,
agile software development In software development, agile (sometimes written Agile) practices include requirements discovery and solutions improvement through the collaborative effort of self-organizing and cross-functional teams with their customer(s)/ end user(s), ...
, and test-driven development.


Publications

* 1995. ''Designing Object-Oriented C++ Applications Using the Booch Method''. Prentice Hall. . * 2002. ''Agile Software Development, Principles, Patterns, and Practices''. Pearson. . * 2009. ''Clean Code: A Handbook of Agile Software Craftsmanship''. Prentice Hall. . * 2011. ''The Clean Coder: A Code Of Conduct For Professional Programmers''. Prentice Hall. . * 2017. ''Clean Architecture: A Craftsman's Guide to Software Structure and Design''. Prentice Hall. . * 2019. ''Clean Agile: Back to Basics''. Prentice Hall. . * 2021. ''Clean Craftsmanship: Disciplines, Standards, and Ethics''. Addison-Wesley Professional.


References

{{DEFAULTSORT:Martin, Robert Cecil Living people American software engineers 1952 births Agile software development Software design patterns