Robert C. Martin | |
---|---|
Born | Robert Cecil Martin 5 December 1952[1] |
Nationality | American |
Other names | "Uncle Bob" Martin |
Occupation(s) | Software engineer, instructor |
Known for | Agile Manifesto, SOLID principles |
Children | 4 |
Website | cleancoder |
Robert Cecil Martin (born 5 December 1952), colloquially called "Uncle Bob",[2] is an American software engineer, instructor, and author. He is most recognized for promoting many software design principles and for being an author and signatory of the influential Agile Manifesto.[3]
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.[4][5]
Martin joined the software industry at age 17 and is self-taught.[6]
Companies
In 1991, Martin founded Object Mentor,[7] now defunct, which provided instructor-led training on the extreme programming methodology.[8] As of November 2023, he operated Uncle Bob Consulting, which provides consulting and training services.[9] He is also a "Master Craftsman / Mentor" at Clean Coders, a company which is run by his son Micah Martin, and produces training videos.[10]
Software principles and advocacy
Martin is a proponent of software craftsmanship, agile software development, and test-driven development.[11]
He is credited with coining the SOLID mnemonic,[12] a collection of software principles. The principles are as follows: "Single Responsibility Principle", "Open-Closed Principle" (invented by Bertrand Meyer.[13][14]), "Liskov Substitution Principle" (invented by Barbara Liskov,[15]), "Interface Segregation Principle", and "Dependency Inversion Principle".
Publications
- 1995. Designing Object-Oriented C++ Applications Using the Booch Method. Prentice Hall. ISBN 978-0132038379.
- 2000. More C++ Gems. Cambridge University Press. ISBN 978-0521786188.
- 2002. Agile Software Development, Principles, Patterns, and Practices. Pearson. ISBN 978-0135974445.
- 2003. UML for Java Programmers. Prentice Hall. ISBN 978-0131428485.
- 2006. Agile Principles, Patterns, And Practices in C#. Pearson. ISBN 978-0131857254.
- 2009. Clean Code: A Handbook of Agile Software Craftsmanship. Prentice Hall. ISBN 978-0132350884.
- 2011. The Clean Coder: A Code Of Conduct For Professional Programmers. Prentice Hall. ISBN 978-0137081073.
- 2017. Clean Architecture: A Craftsman's Guide to Software Structure and Design. Prentice Hall. ISBN 978-0134494166.
- 2019. Clean Agile: Back to Basics. Prentice Hall. ISBN 978-0135781869.
- 2021. Clean Craftsmanship: Disciplines, Standards, and Ethics. Addison-Wesley Professional. ISBN 978-0136915805
- 2023. Functional Design: Principles, Patterns, and Practices. Addison-Wesley ISBN 978-0138176396
References
- ↑ Groupon OnAir (July 26, 2016). The Future of Programming with Uncle Bob Martin. YouTube.
- ↑ Heusser, Matthew (May 10, 2011). "Do Professional Programmers Need a Code of Conduct? An Interview with Robert C. "Uncle Bob" Martin". InformIT. Retrieved February 26, 2015.
- ↑ "Authors: The Agile Manifesto". Manifesto for Agile Software Development. 2001. Retrieved January 16, 2020.
- ↑ "Robert C. Martin". IEEE Xplore. Retrieved August 1, 2021.
- ↑ Sondra Ashmore; Kristin Runyan (2014). Introduction to Agile Methods. Addison-Wesley Professional. p. 10. ISBN 9780133435214.
- ↑ Martin, Robert C. (December 10, 2018). "Uncle Bob on X". X (formerly Twitter). Retrieved November 23, 2023.
- ↑ "Robert Martin (Uncle Bob) - Scrum Alliance". www.scrumalliance.org. Retrieved November 30, 2022.
- ↑ "Object Mentor: About | LinkedIn". LinkedIn. Retrieved November 23, 2023.
- ↑ "Robert Martin | LinkedIn". LinkedIn. Retrieved November 23, 2023.
- ↑ "Clean Coders : Level up your code". cleancoders.com. Retrieved November 23, 2023.
- ↑ "UBC". cleancoder.com. Retrieved November 23, 2023.
- ↑ Martin, Robert C. (2000) "Design Principles and Design Patterns"(PDF). objectmentor.com. Archived from the original on 2015-09-06
- ↑ Martin, Robert C. (January 1996). "The Open-Closed Principle" (PDF). C++ Report. Archived from the original on August 22, 2006.
{{cite magazine}}
: CS1 maint: unfit URL (link) - ↑ Meyer, Bertrand (1988). Object-oriented software construction. New York: Prentice Hall. p. 23. ISBN 0136290493.
- ↑ Liskov, Barbara; Wing, Jeannette (November 1, 1994). "A behavioral notion of subtyping". ACM Transactions on Programming Languages and Systems. 16 (6): 1811–1841. doi:10.1145/197320.197383. S2CID 999172.