This presentation was recorded at YOW! 2017. #GOTOcon #YOW https://yowcon.com Dave Cheney - Principal Software Engineer at Atlassian RESOURCES https://dave.cheney.net https://bsky.app/profile/dave.cheney.net https://www.linkedin.com/in/davecheney https://github.com/davecheney https://x.com/davecheney ABSTRACT In his book, Agile Design Patterns, Robert C. Martin introduces the #SOLID #DesignPrincipals as cornerstones for the construction of software that amenable to change. Part of a larger set of design principals1, 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. RECOMMENDED BOOKS Teiva Harsanyi • 100 Go Mistakes and How to Avoid Them • https://amzn.to/3P0R4cQ William Kennedy, Brian Ketelsen & Erik St. Martin • Go in Action • https://amzn.to/4iy8Npv Michael Stack • Event-Driven Architecture in Golang • https://amzn.to/3G5e8ST Jon Bodner • Learning Go • https://amzn.to/41GOxvJ https://bsky.app/profile/gotocon.com https://twitter.com/GOTOcon https://www.linkedin.com/company/goto- https://www.instagram.com/goto_con https://www.facebook.com/GOTOConferences #Golang #SoftwareEngineering #Programming #KenScambler #SoftwareDevelopment #YOWcon CHANNEL MEMBERSHIP BONUS Join this channel to get early access to videos & other perks: https://www.youtube.com/channel/UCs_tLP3AiwYKwdUHpltJPuA/join Looking for a unique learning experience? Attend the next GOTO conference near you! Get your ticket at https://gotopia.tech Sign up for updates and specials at https://gotopia.tech/newsletter SUBSCRIBE TO OUR CHANNEL - new videos posted almost daily. https://www.youtube.com/user/GotoConferences/?sub_confirmation=1
Get notified about new features and conference additions.