Robert_C._Martin

Robert C. Martin

Robert C. Martin

American software consultant


Robert Cecil Martin (born 5 December 1952), colloquially called "Uncle Bob",[2] is an American software engineer[citation needed], 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]

Quick Facts Born, Nationality ...

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

  1. Groupon OnAir (July 26, 2016). The Future of Programming with Uncle Bob Martin. YouTube.
  2. "Authors: The Agile Manifesto". Manifesto for Agile Software Development. 2001. Retrieved January 16, 2020.
  3. "Robert C. Martin". IEEE Xplore. Retrieved August 1, 2021.
  4. Sondra Ashmore; Kristin Runyan (2014). Introduction to Agile Methods. Addison-Wesley Professional. p. 10. ISBN 9780133435214.
  5. Martin, Robert C. (December 10, 2018). "Uncle Bob on X". X (formerly Twitter). Retrieved November 23, 2023.
  6. "Robert Martin (Uncle Bob) - Scrum Alliance". www.scrumalliance.org. Retrieved November 30, 2022.
  7. "Object Mentor: About | LinkedIn". LinkedIn. Retrieved November 23, 2023.
  8. "Robert Martin | LinkedIn". LinkedIn. Retrieved November 23, 2023.
  9. "Clean Coders : Level up your code". cleancoders.com. Retrieved November 23, 2023.
  10. "UBC". cleancoder.com. Retrieved November 23, 2023.
  11. Martin, Robert C. (2000) "Design Principles and Design Patterns"(PDF). objectmentor.com. Archived from the original on 2015-09-06
  12. 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)
  13. Meyer, Bertrand (1988). Object-oriented software construction. New York: Prentice Hall. p. 23. ISBN 0136290493.
  14. 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.

Share this article:

This article uses material from the Wikipedia article Robert_C._Martin, and is written by contributors. Text is available under a CC BY-SA 4.0 International License; additional terms may apply. Images, videos and audio are available under their respective licenses.