Following up on the Object-Oriented Basics post, this time we switch our attention to interfaces and abstract classes - when to use them, when to avoid them, and how to distinguish between them. Learn all about what makes an interface successful, how to consolidate logic in abstract classes, and more!| www.jamessimone.net
Flows are increasingly a part of the Salesforce automation picture, and their seamless melding with Apex through invocable Apex is part of the reason why admins and developers alike are embracing Flow. Learn how easy it is to make simple, reusable Apex invocables, taking advantage of patterns to avoid tight coupling and code duplication.| www.jamessimone.net
Identifying areas for potential code reuse is not always obvious. People learn and remember things in different ways; on a large team, and in a large project, keeping the entirety of a code base in your head is frequently an improbable proposition. Some manage. Some find themselves rewriting functions monotonously, either on a tight sprint deadline or simply because it’s easier to copy paste than it is to generalize. Refactoring is, ultimately, a luxury - but one that is worthwhile to inves...| www.jamessimone.net
Learn more about performance testing the CRUD framework, the cost of sorting, and how to implement custom sorting easily.| www.jamessimone.net
The abstract enum class in Apex can be very helpful as a class-like object, but there are a few things you should keep in mind to avoid getting bitten by the use of enums.| www.jamessimone.net
Structuring your unit tests to run fast in Salesforce's Apex programming language is crucially important when designing large systems, allowing you to quickly iterate and successfully refactor.| www.jamessimone.net
Tap into the power of the Trigger Handler pattern in Salesforce with this extremely lightweight Trigger Handler framework.| www.jamessimone.net
Dive into the philosophy behind unit testing in Apex, and why writing good tests is so important.| www.jamessimone.net