Please log in to watch this conference skillscast.
In his book, Agile Design Patterns (Pearson, 2002), Robert C. Martin introduces the SOLID design principals as cornerstones for the construction of software that amenable to change.
Part of a larger set of design principals, the SOLID principals are closely associated with object oriented languages like C++, Java, C#, and more recently Ruby. And although they span different eras, all these languages share the same class structured, inheritance based foundations.
Go is one of a set of new languages that eschew inheritance, instead preferring the mantra of composition. Does this mean that Go programs do not follow the SOLID design principals, or even that Go is not an object oriented language?
In this talk I will explore the five core SOLID design patterns, discuss their applicability to Go programmers, and explain that while Go programs are not inheritance or class based, they adhere strongly to Martin’s principals. The audience will learn how well structured Go applications naturally follow the SOLID principals, leading to code which is loosely coupled, highly reusable, and inherently maintainable.
YOU MAY ALSO LIKE:
- Lessons learned building Kubernetes controllers (SkillsCast recorded in December 2018)
- Bazel eXchange: Watch Party (in London on 21st June 2022)
- Bazel eXchange (Online Conference on 21st - 22nd June 2022)
- LDN Talks May 2022 - Quickwit Takeover (in London on 30th May 2022)
- Rust in 2024 (SkillsCast recorded in May 2022)
- Rust's Unique Ownership Concept: Practical Examples and Why It's Important (SkillsCast recorded in May 2022)