Learning Salesforce Development with Apex  
Learn to Code, Run and Deploy Apex Programs for Complex Business Process and Critical Business Logic - 2nd Edition
Author(s): Paul Battisson
Published by BPB Publications
Publication Date:  Available in all formats
ISBN: 9789355510273
Pages: 302

EBOOK (EPUB)

ISBN: 9789355510273 Price: INR 1099.00
Add to cart Buy Now
Acquiring knowledge of Apex has proved to be a valuable skill for developers eager to add business logic, as well as to execute flow and transaction control statements on Salesforce server. In this updated and expanded second edition, Author Paul Battisson places a significant emphasis on the scalability, security, and deployment capabilities of Salesforce applications. The nine-time Salesforce MVP took another shot at teaching Apex programming and getting people to start developing Salesforce applications with complete confidence. Some of the most notable features of this newer edition are: -Setting up the Salesforce development environment and improving code storage and execution techniques. -Writing secure Apex code and different ways to enforce security while scaling applications. -Multiple ways to put your Apex code into production. -Acquire working knowledge of declaring variables in Apex. -Recognize Apex's collection-based functionality. -Use Apex's different control statements to manage the flow of a program. -Get familiar with Apex's built-in testing tools. -Acquire proficiency in interacting with third-party applications and data. -A quick rundown on successfully operating and managing CI/CD and DevOps. -Expert-run approaches and best practices to write robust codes and avoid major mistakes. The book contains updates on several sections of this book, including but not limited to programming principles, the use of REST APIs, code testing, and simple examples to assist you in developing dynamic solutions and creating a platform to build.
Rating
Description
Acquiring knowledge of Apex has proved to be a valuable skill for developers eager to add business logic, as well as to execute flow and transaction control statements on Salesforce server. In this updated and expanded second edition, Author Paul Battisson places a significant emphasis on the scalability, security, and deployment capabilities of Salesforce applications. The nine-time Salesforce MVP took another shot at teaching Apex programming and getting people to start developing Salesforce applications with complete confidence. Some of the most notable features of this newer edition are: -Setting up the Salesforce development environment and improving code storage and execution techniques. -Writing secure Apex code and different ways to enforce security while scaling applications. -Multiple ways to put your Apex code into production. -Acquire working knowledge of declaring variables in Apex. -Recognize Apex's collection-based functionality. -Use Apex's different control statements to manage the flow of a program. -Get familiar with Apex's built-in testing tools. -Acquire proficiency in interacting with third-party applications and data. -A quick rundown on successfully operating and managing CI/CD and DevOps. -Expert-run approaches and best practices to write robust codes and avoid major mistakes. The book contains updates on several sections of this book, including but not limited to programming principles, the use of REST APIs, code testing, and simple examples to assist you in developing dynamic solutions and creating a platform to build.
Table of contents
  • Cover Page
  • Title Page
  • Copyright Page
  • Dedication Page
  • About the Author
  • Acknowledgement
  • Preface
  • Errata
  • Table of Contents
  • 1. An Introduction to the Salesforce Platform
    • Structure
    • Objectives
    • The birth of the cloud
    • Multi-tenancy
    • The Salesforce database
    • Objects and fields
    • Permissions and sharing
    • From clicks to code
      • Workflow Rules
      • Process Builder
      • Flow
    • Choose the right tool at the right time
    • Conclusion
    • Questions
  • 2. What is Apex?
    • Structure
    • Objectives
    • A definition of Apex
      • Strong and weak typing
      • Object-oriented programming
    • Apex and other languages
    • Executing Apex
      • Anonymous blocks
      • Triggers
      • Controllers - Visualforce, Lightning, and JavaScript Remoting
      • Asynchronous Apex
      • Web Services
      • Email Services
    • Saving and compiling Apex
    • Governor Limits
    • The Developer Console and debug logs
    • Conclusion
  • 3. Variables in Apex
    • Structure
    • Objectives
    • Primitives
      • Blob
      • Boolean
      • Date
      • Datetime
      • Decimal
      • Double
      • Id
      • Integer
      • Long
      • Object
      • String
      • Time
    • Nulls
    • Constants
    • sObject, sObjects, and sObject instances
    • DML
      • Insert
      • Update
      • Upsert
      • Delete
      • Undelete
      • Merge
    • Enums
    • Conclusion
    • Questions
  • 4. Collections
    • Structure
    • Objectives
    • The importance of collections
    • Lists
    • Sets
    • Maps
    • Conclusion
    • Questions
  • 5. Control Statements and Operators
    • Structure
    • Objectives
    • Operators
      • Comparison operators
        • Equality ==
        • Inequality !=
        • Greater Than >
        • Greater Than or Equal To >=
        • Less Than <
        • Less Than or Equal To
      • Logical operators
        • AND operator &&
        • OR operator
        • Not operator ! (logical complement)
      • Assignment operators
      • Addition assignment +=
        • Subtraction assignment -=
        • Multiplicative assignment *=
        • Divisive assignment /=
      • Action operators
        • Addition operator +
        • Subtraction operator -
        • Multiplication operator *
        • Division operator /
        • Increment operator++
        • Decrement operator --
        • Unary Negation operator -
    • The if and if-else statements
      • Ternary-if
    • Switch statements
    • The do-while loops
    • The while loop
    • For loops
    • Conclusion
    • Questions
  • 6. Apex Triggers
    • Structure
    • Objectives
    • What is an Apex trigger?
      • Triggers vs. Flow
    • Types of Apex Trigger
    • The save order of execution
    • When to use each trigger type
      • Before insert
      • After insert
      • Before update
      • After update
      • Before delete
      • After delete
      • After undelete
    • Trigger context variables
    • Our first trigger
    • Bulkification of triggers
      • An un-bulkified trigger
      • Bulkifying our trigger
      • Bulkification for success
    • Conclusion
    • Questions
  • 7. SOQL
    • Structure
    • Objectives
    • What is SOQL?
    • The Force.com Query Optimizer
    • SOQL statement structure
    • Executing SOQL in Apex
    • Using binding variables
    • Aggregate functions and grouping
      • Aggregate functions
      • Grouping
    • An updated trigger example
    • Querying relationships
      • Data from parent records
      • Data from child records
    • Dynamic queries
    • Conclusion
    • Questions
  • 8. SOSL
    • Structure
    • Objectives
    • SOSL structure
    • Conclusion
    • Questions
  • 9. Apex Classes
    • Structure
    • Objectives
    • Defining an Apex class
      • Global
      • Public
      • Private
    • Defining variables
    • Defining properties
      • Why do we need properties?
    • Defining methods
      • Don't Repeat Yourself (DRY)
    • Class constructors
      • this keyword
    • Overloading methods
    • Static methods, variables, and blocks
      • final variables
    • Inner classes
      • Keeping code DRY
      • Selection wrappers
      • Deserialization
    • A detailed example
    • Conclusion
    • Questions
  • 10. Apex Class Inheritance
    • Structure
    • Objectives
    • Interfaces
      • Defining an interface
    • Implementing an interface
    • Abstract classes
    • Abstract methods
    • Virtual methods
    • Virtual classes
    • Updated trigger handler
    • The super keyword
    • Conclusion
    • Questions
  • 11. Enforcing Security in Apex
    • Structure
    • Objective
    • Security on the Salesforce Platform
      • Permissions in Salesforce
      • Sharing and Visibility in Salesforce
      • The Combined Security Model
    • Apex and the System Execution Context
      • An Overview of System Context
        • Enforcing Security on SOQL Queries
        • Using the Security.stripInaccessible Method
        • Manually Enforcing Permissions
    • Sharing in Apex
      • With sharing, without sharing and inherited sharing
    • Conclusion
    • Questions
  • 12. Testing Apex
    • Structure
    • Objectives
    • What is unit testing?
    • Code coverage
    • Defining a Unit Test
    • What happens in a test?
    • Writing our test
    • Exception handling and testing exceptions
      • Standard exceptions
      • Custom exceptions
    • Creating test data
    • Using @TestSetup
    • Test.startTest and Test.stopTest
    • Conclusion
    • Questions
  • 13. Callouts in Apex
    • Structure
    • Overview
    • REST vs. SOAP
    • A brief overview of REST
    • Calling our webservice
    • Defining our inner class
    • Posting data to the site
    • Testing web services
      • StaticResourceCalloutMock
      • Custom HttpCalloutMock implementation
    • Security and authentication
    • Conclusion
    • Questions
  • 14. Deploying Your Apex Code
    • Structure
    • Objective
    • The Software Development Lifecycle (SDLC)
    • Salesforce Environment Types and Management
    • Deploying Apex Code into Production
      • Apex Triggers
      • Apex Classes
      • Coverage Requirements
    • An Overview of the Metadata and Tooling APIs
      • The Metadata API
      • The Tooling API
    • Deployment Using Change Sets
    • The Ant Migration Tool
    • The Salesforce Developer Experience (SFDX)
    • Packages and Package Types
    • A Primer on CI, CD, and DevOps
    • Summary
    • Questions
  • 15. Apex Best Practices
    • Structure
    • Objectives
    • Bulkify Your Code
      • Triggers
      • Queries
    • One Trigger per Object and Trigger Frameworks
    • Check for Null Pointers
    • Check for and Log Exceptions
      • Useful Error Messages
      • Logging Exceptions
    • Test Your Code Thoroughly
      • Testing Outcomes
      • Asserting
      • Bulk Tests
    • Avoid Hardcoding References
    • Custom Settings and Custom Metadata
    • Using Custom Labels
    • Summary
    • Questions
  • 16. Conclusion
    • Addendum for the Second Edition
  • Index
User Reviews
Rating