Log In
Or create an account ->
Imperial Library
Home
About
News
Upload
Forum
Help
Login/SignUp
Index
Table of Contents
Introduction
Note to Readers of Previous Editions
Sample Code
About the Code Listings
Part I – Thinking in Apex
Beyond Syntax
1 – The Execution Context
Running Apex Code
2 – Static Variables
Maintaining Data Across Trigger Invocations
Caching Data
Controlling Program Flow
3 – Limits
The Nature of Limits
Dealing with Limits
Other Limits
Thinking of Limits
4 – Bulk Patterns
An Interesting Challenge
Building to Tests
Evaluating Worst-Case Conditions
A Common Solution
Query Optimization
Into the Future
Batch Apex
Other Approaches
Bulk Patterns and Web Services
Part II – Application Architecture and Patterns
5 – Fun With Collections
Using Maps to Obtain Sets
Grouping Objects
Case Sensitivity
Avoid Using Objects as Keys
Keeping Track of Objects to Update
6 – Triggers
One Trigger to Rule Them All
Architecture and Triggers
Controlling Program Flow
Really Controlling Program Flow
Detecting Field Changes
Additional Trigger Considerations
7 – Going Asynchronous
Setting the Stage
A Simple (but Flawed) Implementation
Industrial Strength Future Calls
Going Asynchronous with Batch Apex
Going Asynchronous with Queueable Apex
Centralized Asynchronous Processing
Going Asynchronous with Scheduled Apex
8 – Concurrency
Introduction to Concurrency
Optimistic Concurrency
Pessimistic Record Locking (For Update)
Handling DML lock errors
Part III – Testing, Debugging and Deployment
9 – Debugging and Diagnostics
Reproducing Problems
Diagnostic Data
Instrumenting Apex - I
Centralized Exception Handling
Instrumenting Apex – II
Thinking about Debugging and Diagnostics
10 – Unit Tests
Why Johnny Won’t Test
Testing in the Real World
Common Test Design Patterns
Testing in Packages
11 – Designing for Packages
Dynamic SOQL and Dynamic Apex
Person Accounts
Other Best Practices
12 – Maintaining Apex
The Nightmare Scenario
Fun with Sandboxes
Source Control
Continuous Integration
Salesforce.com Updates
Using Salesforce.com Support
Conclusion
Acknowledgements and Dedication
About the Cover
Online Courses by Dan Appleman
Full Circle Insights
Also by the Author
← Prev
Back
Next →
← Prev
Back
Next →