Výukový program pro vývojáře Salesforce: Začínáme s programováním Salesforce



V tomto výukovém blogu jsou vysvětleny různé koncepty programování, jako jsou Visualforce a Apex, které musíte znát, abyste mohli zahájit svou kariéru jako vývojář Salesforce.

Toužíte být vývojářem softwarových aplikací? Chcete si vytvořit vlastní aplikaci na platformě Force.com? Pokud je vaše odpověď na tyto otázky ano, pak byste určitě měli zvážit možnost stát se vývojářem Salesforce.

V mých předchozích blogech jsem diskutoval o , Certifikace Salesforce a také vám ukázal vytvořit vlastní aplikaci pomocí deklarativních možností dostupných v Salesforce. V tomto blogu budu diskutovat o programových možnostech pro vývoj vaší aplikace dostupných v Salesforce.





Architektura MVC

Než se ponořím do budování aplikace pomocí Visualforce a Apex, nejprve proberu architekturu Salesforce Model-View-Controller. Níže je uveden diagram, který nastiňuje architekturu Salesforce Model-View-Controller spolu s různými komponentami Salesforce.

mvc - vývojář salesforce - edureka



Modelka: Modelem jsou vaše datové objekty, pole a vztahy Salesforce. Představuje standardní (účet, příležitost atd.) A vlastní objekty (objekty, které vytvoříte).

Pohled: Pohled představuje prezentaci dat, tj. Uživatelské rozhraní. V Salesforce zobrazení tvoří stránky, komponenty, rozvržení stránek a karty Visualforce.

Ovladač: Řadič je stavebním kamenem skutečné logiky aplikace. Akce můžete provádět pokaždé, když uživatel interaguje s Visualforce.



Salesforce v akci

Chcete-li být vývojářem Salesforce, musíte nejprve vědět, jak aplikace Salesforce fungují. Níže je obrázek což vám poskytne ucelený obraz o Salesforce v akci. Klient nebo uživatel buď požaduje, nebo poskytuje informace aplikaci Salesforce. To se obvykle provádí pomocí Visualforce. Tyto informace jsou poté předány aplikační logické vrstvě napsané v Apexu. V závislosti na informacích jsou data buď vkládána, nebo odebírána z databáze. Salesforce vám také poskytuje možnost použití webových služeb pro přímý přístup k logice aplikace.

Vývojář Salesforce může přistupovat k vývoji buď pomocí deklarativních, nebo programových možností. Níže je obrázek, který vám poskytne podrobnosti o deklarativních i programových přístupech dostupných v každé vrstvě uživatelského rozhraní, obchodní logiky a datového modelu. Chcete-li vytvořit uživatelské rozhraní, můžete buď použít deklarativní přístup, který používá rozložení a typy stránek, nebo použít programový přístup, jako jsou stránky a komponenty Visualforce. Obecně byste měli programový přístup používat pouze tehdy, když pomocí deklarativního přístupu nemůžete dosáhnout potřebného uživatelského rozhraní. Chcete-li vytvořit vrstvu obchodní logiky vaší aplikace, můžete buď použít deklarativní možnosti pracovního toku Salesforce, pravidla ověřování a schvalovací procesy, nebo použít programový přístup, jako jsou spouštěče, řadiče a třídy. Pro přístup k datovému modelu můžete použít deklarativní přístup pomocí objektů, polí a vztahů. K datovému modelu můžete přistupovat také programově pomocí rozhraní API metadat, rozhraní REST API a hromadného rozhraní API.

Viděli jsme, jak fungují aplikace Salesforce, architektura MVC použitá pro vývoj v Salesforce a dva různé přístupy, které jsou k dispozici pro vývojáře Salesforce. Nyní mi dovolte diskutovat o Visualforce a Apex.

Visualforce

Chcete-li vytvářet aplikace na platformě Salesforce, musíte vědět, jak vyvíjet uživatelské rozhraní a psát logiku aplikace. Jako vývojář Salesforce můžete vyvíjet uživatelské rozhraní pomocí Visualforce. Visualforce je rámec uživatelského rozhraní pro platformu Force.com. Stejně jako můžete použít rámec javascript Angular-JS k vytváření uživatelských rozhraní pro vaše webové stránky, můžete použít Visualforce k navrhování a vytváření uživatelských rozhraní pro vaše aplikace Salesforce.

Visualforce můžete použít, kdykoli potřebujete vytvořit vlastní stránky. Několik příkladů situací, kdy můžete použít Visualforce, je:

  • Vytváření e-mailových šablon
  • Vývoj mobilního uživatelského rozhraní
  • Generovat soubory PDF dat uložených ve službě Salesforce
  • Chcete-li je vložit do standardního rozvržení stránky
  • Přepsat standardní stránku Salesforce
  • Vývoj vlastních karet pro vaši aplikaci

Stránka Visualforce se skládá ze dvou primárních prvků:

  • Značka Visualforce - Značka Visualforce zahrnuje značky Visualforce, HTML, JavaScript nebo jakýkoli jiný webový kód.
  • Řadič Visualforce - Řadič Visualforce obsahuje pokyny, které určují, co se stane, když uživatel interaguje s komponentou. Řadič Visualforce je psán pomocí programovacího jazyka Apex.

Můžete se podívat na jednoduchý kód stránky Visualforce spolu s různými níže uvedenými komponentami:

Níže jsem vám ukázal kroky k napsání jednoduché stránky Visualforce pro zobrazení zemí a jejich měnových hodnot:

Krok 1: V nastavení zadejte do pole Rychlé hledání stránky Visualforce, poté vyberte Stránky Visualforce a klikněte na Nový.

Krok 2: V editoru přidejte následující kód pro zobrazení hodnoty země a její měny:

Vrchol

Jakmile dokončíte vývoj uživatelského rozhraní, musíte jako vývojář Salesforce vědět, jak do aplikace přidat vlastní logiku. Můžete napsat kód řadiče a přidat vlastní logiku do své aplikace pomocí programovacího jazyka Apex. Apex je objektově orientovaný programovací jazyk, který vám umožňuje provádět příkazy řízení toku a transakcí na platformě Force.com. Pokud jste dříve používali programovací jazyk java, můžete se snadno naučit Apex. Apex syntaxe je ze 70% podobná syntaxi Java.

Apex můžete použít, kdykoli chcete do aplikace přidat vlastní logiku. Několik příkladů situací, kdy můžete použít Apex, je:

  • Pokud chcete do své aplikace přidat webové a e-mailové služby
  • Když chcete provádět složité obchodní procesy
  • Pokud chcete do aplikace přidat složitá ověřovací pravidla
  • Pokud chcete přidat vlastní logiku operací, jako je ukládání záznamu

Níže je snímek obrazovky kódu Apex spolu s jeho různými komponentami, jako je příkaz smyčky, příkaz control-flow a dotaz SOQL:

Nyní, když jsme pochopili, co je Apex a kdy jej použít, dovolte mi, abych se ponořil hluboko do programování Apexu.

Programování v Apexu

Pokud jste pochopili výše popsané koncepty, jste v polovině své cesty stát se vývojářem Salesforce. V této části se ponořím hlouběji do Apexu tím, že vám poskytnu informace o různých datových typech a proměnných, různých způsobech načítání dat z databáze a ukážu vám, jak napsat třídu a metodu.

Datové typy a proměnné

Salesforce vám nabízí 4 různé datové typy a proměnné. Níže uvedená tabulka poskytuje informace o každém ze 4 datových typů:

Datové typy a proměnné Popis Příklad
PrimitivníPrimitivní datové typy v Salesforce zahrnují boolean, datum, celé číslo, objekt, řetězec a čas.Boolean isSunny = true

Celé číslo I = 1

String myString = “Hello World”

objektysObject označuje jakýkoli objekt, který lze uložit do databáze.Účet a = nový účet ()

MyCustomObj__c obj = nový MyCustomObj__c ()

SbírkyApex má následující typy sbírek:

  • Seznamy
  • Mapy
  • Sady
Seznam var_lst = nový seznam ()

Set setOne = new Set ()

Mapa var_map = nová mapa ()

VýčtyVýčty jsou abstraktní datové typy s hodnotami, které přebírají konečnou sadu identifikátorů.Veřejný výčet Roční období {zima, jaro, léto, podzim}


SOQL A SOSL

Vývoj softwarových aplikací vyžaduje, abyste věděli, jak vkládat a načítat data z databází. V Salesforce můžete načíst data z databází pomocí SOQL a SOSL. Pokud chcete být vývojářem Salesforce, musíte znát oba tyto jazyky dotazů. Níže jsem vám poskytl podrobné vysvětlení těchto jazyků:

  • SOQL znamená Salesforce Object Query Language. Pomocí příkazů SOQL můžete načíst data z databáze jako seznam sObjects, jeden sObject nebo metodu Integer for count. SOQL si můžete představit jako ekvivalent dotazu SELECT SOQL. Níže jsem uvedl příklad dotazu SOQL:

Seznam accList = [VYBRAT Id, jméno FROM účtu WHERE Name = 'YourName']

  • SOSL znamená Salesforce Object Search Language. Příkazy SOSL můžete použít k načtení seznamu sObjects, kde každý seznam obsahuje výsledky hledání pro konkrétní typ sObject. SOSL můžete považovat za ekvivalent vyhledávacího dotazu v databázi. Níže jsem uvedl příklad dotazu SOSL:

SeznamsearchList = [NAJDĚTE ‚mapu * 'VE VŠECH OBLASTECH VRÁCENÍ účtu (ID, jméno), kontaktu, příležitosti, potenciálního zákazníka]

SOQL můžete použít, když víte, ve kterém objektu se data nacházejí, a použít SOSL, když neznáte název objektu, kde se data nacházejí.

Třídy a metody

Stejně jako v každém jiném objektově orientovaném programovacím jazyce můžete pomocí Apexu vyvíjet třídy a metody. Třídu si můžete představit jako plán, pomocí kterého se vytvářejí a používají jednotlivé objekty. Metodu si můžete představit jako podprogram, který pracuje s daty a vrací hodnotu. Poskytl jsem vám syntaxi pro napsání třídy a metody níže:

Nyní vám ukážu, jak přidat třídu a metodu do Apexu:

Krok 1: V nastavení zadejte Apex Classes do pole QuickFind, poté vyberte Apex Classes a klikněte na New.

Krok 2: V editoru přidejte následující definici třídy:

Veřejná třída HelloWorld {

}

Krok 3: Přidejte definici metody mezi otevírací a zavírací závorky třídy:

def __init __ (self) python

Public static void helloWorldMethod (Country__c [] země) {

Pro (Země__c země: země) {

country.currency_value__c * = 1.5

}

}

Krok 4: Klikněte na Uložit a měli byste mít celou třídu jako:

Veřejná třída HelloWorld {

Public static void helloWorldMethod (Country__c [] země) {

Pro (Země__c země: země) {

country.currency_value__c * = 1.5

}

}

Pomocí výše uvedené syntaxe a příkladu můžete vyvinout vlastní třídy a metody pro vaši aplikaci Salesforce. Abyste se mohli stát vývojářem Salesforce, potřebujete vědět víc než jen psát třídy a metody. V následujících několika částech se budu zabývat tématy, díky nimž je vývoj aplikací na platformě Salesforce jednoduchý a snadný.

Spouštěče

Každý vývojář Salesforce musí znát koncept spouštěčů Salesforce. Možná jste již dříve narazili na spouštěče při práci s jinými databázemi. Spouštěče nejsou nic jiného než uložené programy, které se vyvolají, když provádíte akce před nebo po změnách záznamů Salesforce. Spouštěče lze například spustit před provedením operace vložení nebo před provedením operace aktualizace. Existují dva typy spouštěčů:

  • Před spuštěním - Před spouštěči můžete použít k aktualizaci nebo ověření hodnot záznamu před jejich uložením do databáze.
  • Po spuštění - Po aktivačních událostech můžete použít k přístupu k hodnotám polí, které jsou nastaveny systémem, a k ovlivnění změn v dalších záznamech.

Aktivační události se provedou před nebo po následujících operacích:

  • Vložit
  • Aktualizace
  • Vymazat
  • Jít
  • Jejda
  • Obnovit

Ukážu vám, jak přidat spouštěč do vrcholu přidáním spouštěče pro objekt Země, který jste viděli ve třídě výše:

Krok 1: Z nastavení správy objektů pro zemi přejděte do Triggers a klikněte na New.

Krok 2: V editoru spouštěčů přidejte následující definici spouštěče:

Spusťte HelloWorldTrigger na Country__c (před vložením) {

Country__c countries = Trigger.new

HelloWorld.helloWorldMethod (země)

}

Výše uvedený kód aktualizuje měnu vaší země před každým vložením do databáze.

Limity guvernéra

Možná víte, že Salesforce funguje na architektuře více klientů, což znamená, že prostředky jsou sdíleny mezi různými klienty. Aby se ujistil, že žádný klient nebude monopolizovat sdílené prostředky, Apex run-time engine přísně vynucuje limity guvernéra. Pokud váš kód Apex někdy překročí limit, vydá očekávaný guvernér výjimku za běhu, kterou nelze zpracovat. Jako vývojář Salesforce tedy musíte být při vývoji aplikace velmi opatrní.

Hromadné operace

Jako vývojář Salesforce musíte vždy zajistit, aby váš kód udržoval limity guvernéra. Abyste se ujistili, že Apex dodržuje limity guvernéra, musíte použít vzor návrhu hromadných volání. Hromadná operace odkazuje na potvrzení více než jednoho záznamu, když provedete operaci DML. Než provedete operaci DML, musíte se vždy ujistit, že přidáte řádky do kolekce. Níže je obrázek, který vám poskytne úplný popis vzorového návrhu hromadné operace.

rozdíl mezi html a xml

DML a datové operace

Už jste viděli, jak načíst data z databáze pomocí dotazů SOQL a SOSL. Nyní se podívejme na různé příkazy, které můžete použít k vložení dat do databáze Salesforce. Pro vývojáře Salesforce je nutné vědět, co mohou tyto příkazy dělat a jak je používat.

Prohlášení DML

Popis
VložitPřidá jeden nebo více objektů k datům vaší organizace
AktualizaceUpravuje jeden nebo více existujících záznamů sObject
JejdaVytváří nové záznamy a aktualizuje záznamy sObject
VymazatOdstraní jeden nebo více existujících záznamů sObject
ObnovitObnoví jeden nebo více existujících záznamů sObject
JítSloučí až tři záznamy stejného typu sObject do jednoho záznamu

Vizuální síla a vrchol

Ve své snaze stát se vývojářem Salesforce jste prošli dlouhou cestu. Dále budu diskutovat o tom, jak můžete integrovat stránku Visualforce a váš vrcholový kód. Svou stránku Visualforce a svůj vrcholový kód můžete propojit pomocí řadičů a rozšíření.

  • Vlastní řadiče -Pokud chcete, aby stránka Visualforce běžela úplně v systémovém režimu, tj. Bez oprávnění a zabezpečení na úrovni pole, použijte vlastní řadič.

  • Rozšíření řadiče -Pokud chcete přidat nové akce nebo funkce, které rozšiřují funkce standardního nebo vlastního řadiče, použijte rozšíření řadiče.

V níže uvedeném kódu jsem vám ukázal, jak na stránku Visualforce zahrnout vlastní řadič:

V níže uvedeném kódu jsem vám ukázal, jak zahrnout rozšíření řadiče na stránku Visualforce:

Zpracování výjimek

Pokud jste již dříve vyvíjeli aplikace, určitě byste narazili na výjimky. Výjimkou je speciální podmínka, která mění normální tok provádění programu. Například vydělením čísla nulou nebo přístupem k hodnotě seznamu, která je mimo hranice. Pokud tyto výjimky nezpracováte, pak se spuštění procesu zastaví a DML se vrátí zpět.

Jako vývojář Salesforce potřebujete vědět, jak tyto výjimky zachytit a co dělat, jakmile je zachytíte. Chcete-li zachytit výjimky, můžete použít try, catch a nakonec konstrukci. Jakmile zachytíte výjimku, můžete ji zvládnout způsoby uvedenými níže:

Výjimka Jak s tím zacházet
DMLPoužijte metodu addError () na záznam nebo pole
VisualforcePoužijte třídu ApexPages.message
Odeslání e-mailu o výjimceVývojáře můžete upozornit e-mailem
Přihlašování vlastního objektuK zachycení vlastního objektu můžete použít budoucí metodu

Až dosud v tomto blogu vývojářů Salesforce jste viděli, jak rozvíjet své uživatelské rozhraní pomocí Visualforce, viděli jste, jak psát vlastní logiku pomocí Apex a různých konceptů, jako jsou spouštěče, hromadné operace a zpracování výjimek. V neposlední řadě se podíváme na testovací rámec Salesforce.

Testování

Jako vývojář Salesforce potřebujete vědět, jak testovat kód, který napíšete. Vývoj zaměřený na testování je dobrým způsobem, jak zajistit dlouhodobý úspěch vaší softwarové aplikace. Musíte otestovat svou aplikaci, abyste mohli ověřit, že vaše aplikace funguje podle očekávání. Zvláště pokud vyvíjíte aplikaci pro zákazníka, je velmi důležité otestovat ji před dodáním konečného produktu. Apex vám poskytuje testovací rámec, který vám umožňuje psát testy jednotek, spouštět testy, kontrolovat výsledky testů a mít výsledky pokrytí kódu.

Svou aplikaci můžete otestovat dvěma způsoby:

  1. Prostřednictvím uživatelského rozhraní Salesforce je tento způsob testování důležitý, ale nezachytí všechny případy použití vašich aplikací
  2. Můžete otestovat hromadnou funkčnost, až 200 záznamů lze předat vaším kódem pomocí SOAP API nebo řadiče standardní sady Visualforce

Testovací třídy odevzdávají do databáze žádná data a jsou opatřeny poznámkami pomocí @isTest. Ukázal jsem vám, jak přidat testovací třídu přidáním testovací třídy do níže uvedené třídy HelloWorld:

@isTest

soukromá třída HelloWorldTestClass {

static testMethod void validateHelloWorld () {

Country__c country = new Country__c (Name = ”India”, currency_value__c = 50.0)

Vložte zemi

country = [SELECT currency_value__c FROM Country WHERE Id = country.Id]

System.assertEquals (75, country.currency_value__c)

}

}

Doufám, že jste pochopili všechny koncepty, které potřebujete znát, abyste mohli být vývojářem Salesforce. Chcete-li se ponořit do dalších podrobností, podívejte se na naše který je dodáván s instruktorem vedeným živým tréninkem a zkušenostmi z reálného projektu. Pokud máte nějaké komentáře, nechte je prosím v poli pro komentáře níže.