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 :).
Main Points
- – 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
Links
- SoC – Andy’s blog
- SoC TrailHead Modules
- Fflib
- 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!
Timestamps:
- 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
Contact Me
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 :)!