Advanced Apex Programming for Salesforce.com and Force.com

Beyond the Force.com documentation - 3rd edition

complex Apex Programming for Salesforce.com and Force.com is neither an educational nor a publication for novices. meant for builders who're already conversant in the Apex language, and skilled Java and C# builders who're relocating to Apex, this publication begins the place the Force.com documentation leaves off.

Instead of attempting to conceal the entire positive factors of the platform, complex Apex programming focuses totally at the Apex language and middle layout styles. You’ll actually imagine in Apex – to include limits and bulk styles. You’ll see the way to advance architectures for effective and trustworthy set off dealing with, and for asynchronous operations. You’ll observe that most sensible practices vary substantially looking on even if you're construction software program for a selected association or for a controlled package deal. And you’ll locate techniques for incorporating checking out and diagnostic code which can dramatically increase the reliability and deployment of Apex software program, and decrease your lifecycle and help costs.

Based on his event as a expert, Salesforce MVP and architect of significant AppExchange applications, Dan Appleman makes a speciality of the real-world difficulties and concerns which are confronted by way of Apex builders each day, in addition to the vague difficulties and surprises that may sneak up on you when you are unprepared.

This 3rd version includes updates via summer season 15 (API 34) besides major new content material on asynchronous layout styles, optimization and protecting Apex applications.

Show description

Preview of Advanced Apex Programming for Salesforce.com and Force.com PDF

Best Development books

Introduction to Programming Using Python plus MyProgrammingLab with Pearson eText -- Access Card

Be aware: ahead of procuring, seek advice from your teacher to make sure you choose the right kind ISBN. numerous models of Pearson's MyLab & learning items exist for every name, and registrations usually are not transferable. To check in for and use Pearson's MyLab & learning items, you may as well desire a path identification, which your teacher will offer.

Ground Control: Fear and Happiness in the Twenty-First-Century City

While the figures say crime is falling, why are we extra fearful than ever? may perhaps our cities and towns be growing worry and distrust? extra estate is being in-built Britain than at any time because the moment international struggle - yet it is owned via inner most companies, designed for revenue and watched over via CCTV.

The Dragon's Gift: The Real Story of China in Africa

Is China a rogue donor, as a few media pundits recommend? Or is China assisting the constructing international pave a pathway out of poverty, because the chinese language declare? within the previous couple of years, China's relief application has leapt out of the shadows. Media experiences approximately large reduction programs, help for pariah regimes, regiments of chinese language exertions, and the ruthless exploitation of employees and traditional assets in many of the poorest international locations on the planet sparked fierce debates.

The Coming Prosperity: How Entrepreneurs Are Transforming the Global Economy

Ours is the main dynamic period in human heritage. the advantages of 4 centuries of technological and organizational swap are ultimately achieving a formerly excluded worldwide majority. this alteration will create large-scale possibilities in richer nations just like the usa simply because it has in poorer international locations now within the ascent.

Extra info for Advanced Apex Programming for Salesforce.com and Force.com

Show sample text content

At the floor, this is often extremely simple. reflect on a state of affairs the place you must create a job while the likelihood of a chance adjustments from 10 to any greater quantity. chances are you'll enforce this performance utilizing a mode that will be referred to as in the course of an after-update set off reminiscent of the AfterUpdateOpportunityCreateTask1 technique proven the following: public static void afterUpdateOpportunityCreateTasks1( List newList, Map newMap, Map oldMap) { List newTasks = new List(); for(Opportunity op: newList) { approach. debug('old likelihood ' + oldMap. get(op. id). likelihood + ' new chance ' + op. Probability); if(oldMap. get(op. id). chance == 10 && op. likelihood > 10) { newTasks. upload( new Task(ownerId = op. OwnerID, WhatID = op. identification, ActivityDate = Date. Today(). addDays(2), Subject='Opportunity level update', Type='Other')); } } insert newTasks; } this can be a regular bulk implementation of an answer to this type of challenge. And if you happen to have been a specialist development an answer for a specific association, that will be the top of the tale. All that's left is to construct a few try equipment, one in all that is proven the following: inner most static ultimate Integer numberOfOpportunities = five; static testMethod void testTaskCount() { List ops = new List(); for(Integer x=0; x opMap = new Map(ops); List projects = [Select identity, WhatID from job the place WhatID in :opmap. keyset() And topic ='Opportunity degree update']; method. AssertEquals(numberOfOpportunities, projects. size()); } Let’s flip our awareness for a second to the workflow proven in determine 6-8. This workflow exams for a chance elevate from 10% each time a checklist is modified. A box replace then units the NextStep box to a precise price. determine 6-8 – an easy workflow may cause accidental effects What occurs to the unique answer if anyone prompts this workflow? You’ll get initiatives on each one chance, and the try out will fail with the next message: method. AssertException: statement Failed: anticipated: five, real: 10 the explanation why this occurs is refined and is proven in determine 6-9. the 1st time in the course of the set off, the previous chance price is proven as 10 and the hot worth as ninety (as laid out in the try out code). determine 6-9 – set off item fields will not be up-to-date among set off invocations Logically, chances are you'll count on that the second one time during the set off the previous price of the chance will be ninety - taking over the recent worth from the 1st time via. yet actually, the outdated set off price is still an analogous – it displays the sphere worth at the beginning of the execution context. whilst the workflow box replace explanations one other set off invocation, the code sees this as one other box switch, and creates one other activity.

Download PDF sample

Rated 5.00 of 5 – based on 22 votes