Separation of Concerns is a principle that all software engineer needs to learn. In his book, Force.com Enterprise Architecture, Andy Fawcett talks a lot about this principle and illustrates how to use it in the Salesforce solution. Hopefully it is useful for you to listen to our discussion :).
- – Andy’s introduction
- – When to and when not to use SoC
- – What is SoC and examples in the physical world
- – SoC original pattern from Martin Fowler and SoC ported into Salesforce
- – Fflib open source project and Andy’s book – Force.com Enterprise Architecture
- – SoC at different abstracted layers
- – Being a solution oriented programmer
- SoC – Andy’s blog
- SoC TrailHead Modules
- When to use SoC
- Patterns of Enterprise Application Architecture – Martin Fowler
- Force.com Enterprise Architecture – Andy Fawcett
Xi’s presentation on Separation of Concerns
This is a presentation that I made in Helsinki Developer Group Meetup before recording this episode with Andy. But I think it still adds value to people who need some examples to better grab this principle.
Hope you enjoy it!
- 0:00 Opening
- 1:15 What is good code in Salesforce – Audiences’ input
- 4:43 Code review reflects code quality
- 5:09 IMO, what is good code in Salesforce
- 7:18 Code design books in 80’s and 90’s
- 10:10 Separation of Concerns (SoC) Principle in Salesforce
- 14:20 SoC sample code demo and explanation
- 22:09 Open sourced fflib library and its features
- 31:55 Review if SoC helps us writing good code
- 34:55 How to adopt SoC for new and existing code base
- 36:10 The company I am working in, my Salesforce dev podcast and our clean code community
- 37:12 (Q&A) Justify business value and convince management to use SoC
- 40:15 (Q&A) Refactoring existing code base and adopt SoC
If you enjoy this podcast, please reach me out to let me know your thoughts or simply say Hello. My (Xi’s) contact info:
Take care, until next time :)!