Salesforce Developer -opetusohjelma: Aloita Salesforce-ohjelmoinnilla



Tässä opetusblogissa selitetään erilaiset ohjelmointikonseptit, kuten visualforce ja apex, jotka sinun on tiedettävä aloittaaksesi urasi Salesforce-kehittäjänä.

Haluatko olla ohjelmistosovellusten kehittäjä? Haluatko rakentaa oman sovelluksesi Force.com-alustalle? Jos vastauksesi näihin kysymyksiin on kyllä, sinun kannattaa ehdottomasti harkita Salesforcen kehittäjäksi tulemista.

Aikaisemmissa blogissani olen keskustellut , Salesforce-sertifikaatit ja näytti myös sinulle rakentaa mukautetun sovelluksen käyttämällä Salesforcessa käytettävissä olevia selittäviä vaihtoehtoja. Tässä blogissa keskustelen Salesforcen käytettävissä olevista ohjelmallisista vaihtoehdoista sovelluksesi kehittämiseksi.





MVC-arkkitehtuuri

Ennen kuin sukeltaa sovelluksen rakentamiseen Visualforcella ja Apexilla, keskustelen ensin Salesforce Model-View-Controller -arkkitehtuurista. Alla on kaavio, joka hahmottaa Salesforce Model-View-Controller -arkkitehtuurin yhdessä Salesforce-komponenttien kanssa.

mvc - salesforce-kehittäjä - edureka



Malli: Malli on Salesforcen dataobjektit, kentät ja suhteet. Se koostuu tavallisista (tili, mahdollisuus jne.) Ja mukautetuista kohteista (luomasi objektit).

Näytä: Näkymä edustaa tietojen esittelyä eli käyttöliittymää. Salesforcessa näkymä muodostuu Visualforce-sivuista, komponenteista, sivun asetteluista ja välilehdistä.

Ohjain: Ohjain on varsinaisen sovelluslogiikan rakennusosa. Voit suorittaa toimintoja aina, kun käyttäjä on vuorovaikutuksessa visualforcen kanssa.



Salesforce toiminnassa

Jotta voit olla Salesforce-kehittäjä, sinun on ensin tiedettävä, miten Salesforce-sovellukset toimivat. Alla on kuva joka antaa sinulle täydellisen kuvan Salesforcesta toiminnassa. Asiakas tai käyttäjä joko pyytää tai toimittaa tietoja Salesforce-sovellukselle. Tämä tehdään yleensä Visualforcella. Nämä tiedot välitetään sitten sovelluslogiikkatasolle, joka kirjoitetaan Apexiin. Tiedoista riippuen tiedot joko lisätään tai poistetaan tietokannasta. Salesforce tarjoaa myös mahdollisuuden käyttää verkkopalveluita sovelluslogiikan suoraan käyttämiseen.

Salesforce-kehittäjä voi lähestyä kehitystä joko deklaratiivisilla tai ohjelmallisilla vaihtoehdoilla. Alla on kuva, joka tarjoaa yksityiskohtaisia ​​tietoja sekä deklaratiivisista että ohjelmallisista lähestymistavoista, jotka ovat käytettävissä kussakin käyttöliittymässä, liiketoimintalogiikassa ja tietomallikerroksessa. Voit rakentaa käyttöliittymääsi joko käyttämällä deklaratiivista lähestymistapaa, joka käyttää sivun asetteluja ja tietuetyyppejä, tai ohjelmallista lähestymistapaa, kuten Visualforce-sivut ja komponentit. Yleensä sinun tulee käyttää ohjelmallista lähestymistapaa vain silloin, kun et pysty saavuttamaan tarvittavaa käyttöliittymää deklaratiivisella lähestymistavalla. Voit kehittää sovelluksesi liiketoimintalogiikan tasoa joko käyttämällä Salesforcen työnkulun, validointisääntöjen ja hyväksymisprosessien ilmoituksia tai käyttämällä ohjelmallista lähestymistapaa, kuten laukaisimia, ohjaimia ja luokkia. Voit käyttää tietomallia käyttämällä deklaratiivista lähestymistapaa käyttämällä objekteja, kenttiä ja suhteita. Voit käyttää tietomallia myös ohjelmallisesti käyttämällä metatieto-sovellusliittymää, REST-sovellusliittymää ja joukkorajapintaa.

Olemme nähneet, kuinka Salesforce-sovellukset toimivat, Salesforcen kehittämiseen käytetty MVC-arkkitehtuuri ja kaksi erilaista lähestymistapaa, jotka ovat käytettävissä Salesforce-kehittäjälle. Anna minun keskustella Visualforcesta ja Apexista.

Visualforce

Rakentaaksesi sovelluksia Salesforce-alustalle, sinun on tiedettävä, kuinka kehittää käyttöliittymä ja kirjoittaa sovelluslogiikka. Salesforce-kehittäjänä voit kehittää käyttöliittymän Visualforcen avulla. Visualforce on Force.com-alustan käyttöliittymäkehys. Aivan kuten voit käyttää javascript Angular-JS -kehystä rakentaaksesi käyttöliittymiä verkkosivustoillesi, voit Visualforcen avulla suunnitella ja rakentaa käyttöliittymiä Salesforce-sovelluksillesi.

mikä on * neliömetrissä

Voit käyttää visualisointia aina, kun haluat rakentaa mukautettuja sivuja. Harvat esimerkit tilanteista, joissa voit käyttää Visualforcea, ovat:

  • Sähköpostimallien luominen
  • Kehittää mobiilikäyttöliittymää
  • Voit luoda PDF-tiedostoja Salesforceen tallennetuista tiedoista
  • Voit upottaa ne tavallisiin sivuasetteluihisi
  • Tavallisen Salesforce-sivun ohittaminen
  • Voit kehittää sovelluksellesi mukautettuja välilehtiä

Visualforce-sivu koostuu kahdesta pääelementistä:

  • Visualforce-merkintä - Visualforce-merkintä sisältää Visualforce-tagit, HTML: n, JavaScriptin tai minkä tahansa muun verkkokoodin.
  • Visualforce-ohjain - Visualforce-ohjain sisältää ohjeet, jotka määrittävät, mitä tapahtuu, kun käyttäjä on vuorovaikutuksessa komponentin kanssa. Visualforce-ohjain kirjoitetaan Apex-ohjelmointikielellä.

Voit tarkastella yksinkertaista Visualforce-sivukoodia sekä alla olevia komponentteja:

Alla olen osoittanut sinulle vaiheet yksinkertaisen visualforce-sivun kirjoittamiseksi maiden ja niiden valuutta-arvojen näyttämiseksi:

Vaihe 1: Kirjoita Asennus-kohdassa Visualforce-sivut Pikahaku-ruutuun, valitse sitten Visualforce-sivut ja napsauta Uusi.

Vaihe 2: Lisää editorissa seuraava koodi näyttääksesi maan ja sen valuutta-arvon:

Kärki

Kun olet kehittänyt käyttöliittymän, sinun on tiedettävä, kuinka voit lisätä mukautetun logiikan sovellukseesi Salesforce-kehittäjänä. Voit kirjoittaa ohjainkoodin ja lisätä mukautettua logiikkaa sovellukseesi Apex-ohjelmointikielellä. Apex on olio-ohjelmointikieli, jonka avulla voit suorittaa vuon ja tapahtumien hallinnan lauseita Force.com-alustalla. Jos olet käyttänyt Java-ohjelmointikieltä aiemmin, voit oppia Apexin helposti. Apex-syntakse on 70% samanlainen kuin Java.

Voit käyttää Apexia aina, kun haluat lisätä mukautetun logiikan sovellukseesi. Muutama esimerkki tilanteista, joissa voit käyttää Apexia, ovat:

  • Kun haluat lisätä verkko- ja sähköpostipalveluja sovellukseesi
  • Kun haluat suorittaa monimutkaisia ​​liiketoimintaprosesseja
  • Kun haluat lisätä monimutkaisia ​​vahvistussääntöjä sovellukseesi
  • Kun haluat lisätä mukautetun logiikan toimintoihin, kuten tietueen tallentamiseen

Alla on kuvakaappaus Apex-koodista ja sen eri komponenteista, kuten looping-lause, control-flow-lause ja SOQL-kysely:

Nyt kun olemme ymmärtäneet mikä Apex on ja milloin sitä käytetään, anna minun sukeltaa syvälle Apex-ohjelmointiin.

Ohjelmointi Apexissa

Jos olet ymmärtänyt yllä kuvatut käsitteet, olet matkasi puolivälissä tullessasi Salesforce-kehittäjäksi. Tässä osiossa aion sukeltaa syvemmälle Apexiin tarjoamalla sinulle tietoa erilaisista tietotyypeistä ja muuttujista, erilaisista tavoista hakea tietoja tietokannasta ja näyttää kuinka kirjoittaa luokka ja menetelmä.

Tietotyypit ja muuttujat

Salesforce tarjoaa sinulle 4 erilaista tietotyyppiä ja muuttujaa. Alla olevassa taulukossa on tietoja kustakin 4 tietotyypistä:

Tietotyypit ja muuttujat Kuvaus Esimerkki
PrimitiivinenSalesforcen primitiiviset tietotyypit sisältävät loogisen arvon, päivämäärän, kokonaisluvun, objektin, merkkijonon ja ajan.Boolen isSunny = tosi

Kokonaisluku I = 1

String myString = “Hei maailma”

kohteetsObject viittaa mihin tahansa objektiin, joka voidaan tallentaa tietokantaan.Tili a = uusi tili ()

MyCustomObj__c obj = uusi MyCustomObj__c ()

KokoelmatApexilla on seuraavan tyyppisiä kokoelmia:

  • Luettelot
  • Kartat
  • Sarjat
Lista var_lst = uusi Lista ()

Set setOne = uusi sarja ()

Kartta var_map = uusi kartta ()

EnumsEnumit ovat abstrakteja tietotyyppejä, joiden arvot saavat rajallisen joukon tunnisteita.Julkinen lukumäärä vuodenaikoja {talvi, kevät, kesä, syksy}


SOQL ja SOSL

Ohjelmistosovellusten kehittäminen edellyttää, että osaat lisätä ja hakea tietoja tietokannoista. Salesforcessa voit hakea tietoja tietokannoista SOQL: n ja SOSL: n avulla. Jos haluat olla Salesforce-kehittäjä, sinun on tiedettävä molemmat kyselykielet. Olen toimittanut sinulle yksityiskohtaisen selityksen näistä kielistä alla:

  • SOQL on lyhenne sanoista Salesforce Object Query Language. SOQL-käskyjä käyttämällä voit hakea tietoja tietokannasta sObjektien luettelona, ​​yksittäisenä sObjektina tai Integer for count -menetelmänä. Voit ajatella SOQL: ää vastaavana SELECT SOQL -kyselyyn. Olen antanut alla olevan esimerkin SOQL-kyselystä:

Lista accList = [VALITSE tunnus, Nimi tililtä WHERE Nimi = ”Nimesi”]

  • SOSL on lyhenne sanoista Salesforce Object Search Language. SOSL-käskyjen avulla voit hakea luettelon sObjekteista, joissa kukin luettelo sisältää tietyn sObject-tyypin hakutulokset. Voit ajatella SOSL: ää vastaavaksi tietokannan hakukyselyyn. Olen antanut alla olevan esimerkin SOSL-kyselystä:

ListasearchList = [ETSI 'kartta *' KAIKKIEN ALUEIDEN PALAUTTAMISESSA Tili (tunnus, nimi), yhteyshenkilö, mahdollisuus, liidi]

Voit käyttää SOQL: ää, kun tiedät missä objektissa data on, ja käyttää SOSL: ää, kun et tiedä objektin nimeä, jossa tiedot ovat.

Luokat ja menetelmät

Kuten kaikilla muilla olio-ohjelmointikielillä, voit kehittää luokkia ja menetelmiä Apexin avulla. Voit ajatella luokkaa suunnitelmana, jonka avulla yksittäiset objektit luodaan ja niitä käytetään. Voit ajatella menetelmää alaohjelmana, joka toimii tietojen perusteella ja palauttaa arvon. Olen toimittanut sinulle syntaksin luokan ja menetelmän kirjoittamiseen alla:

Näytän sinulle nyt, kuinka luokka ja menetelmä lisätään Apexiin:

Vaihe 1: Kirjoita asennuksen jälkeen Apex-luokat QuickFind-ruutuun, valitse sitten Apex-luokat ja napsauta Uusi.

Vaihe 2: Lisää editoriin seuraava luokan määritelmä:

Julkinen luokka HelloWorld {

}

Vaihe 3: Lisää menetelmän määritelmä luokan avaus- ja sulkumerkkien väliin:

Julkinen staattinen void helloWorldMethod (Country__c [] maat) {

Mille (Maa__c-maa: maat) {

maa.valuutta_arvo__c * = 1,5

}

}

lajittelualgoritmi c ++

Vaihe 4: Napsauta Tallenna ja sinulla pitäisi olla koko luokkasi:

Julkinen luokka HelloWorld {

Julkinen staattinen void helloWorldMethod (Country__c [] maat) {

Mille (Maa__c-maa: maat) {

maa.valuutta_arvo__c * = 1,5

}

}

Voit käyttää yllä olevaa syntaksia ja esimerkkiä kehittäessäsi omia luokkiasi ja menetelmiäsi Salesforce-sovelluksellesi. Jotta voisit tulla Salesforce-kehittäjäksi, sinun on tiedettävä muutakin kuin vain luokkien ja menetelmien kirjoittaminen. Seuraavissa osioissa keskustelen aiheista, jotka tekevät sovellusten kehittämisestä Salesforce-alustalla yksinkertaista ja helppoa.

Liipaisimet

Jokaisen Salesforce-kehittäjän on tunnettava Salesforcen laukaisijoiden käsite. Olet ehkä aiemmin törmännyt laukaisijoihin työskennellessäsi muiden tietokantojen kanssa. Triggerit eivät ole muuta kuin tallennetut ohjelmat, joihin vedotaan, kun suoritat toimintoja ennen Salesforce-tietueiden muutoksia tai niiden jälkeen. Laukaisimet voivat esimerkiksi toimia ennen lisäystoiminnon suorittamista tai päivitysoperaation suorittamista. Liipaisimia on kahden tyyppisiä:

  • Ennen laukaisua - Voit päivittää tai vahvistaa tietueiden arvot ennen liipaisimia ennen niiden tallentamista tietokantaan.
  • Liipaisun jälkeen - Voit käyttää liipaisujen jälkeen järjestelmän asettamiin kenttäarvoihin ja vaikuttaa muiden tietueiden muutoksiin.

Triggerit suoritetaan ennen tai jälkeen seuraavien toimintojen:

  • Lisää
  • Päivittää
  • Poistaa
  • Mennä
  • Oho
  • Peruuta

Näytän sinulle, kuinka voit lisätä triggeriä kärkeen lisäämällä triggeriä Country-objektille, jonka olet nähnyt yllä olevassa luokassa:

Vaihe 1: Siirry maan objektinhallinta-asetuksista kohtaan Triggers ja napsauta New.

Vaihe 2: Lisää liipaisimen muokkausohjelmaan seuraava laukaisimen määritelmä:

Trigger HelloWorldTrigger maassa__c (ennen lisäystä) {

Maa__c maat = Trigger.uusi

HelloWorld.helloWorldMethod (maat)

}

Yllä oleva koodi päivittää maasi valuutan ennen jokaista lisäystä tietokantaan.

Kuvernöörin rajat

Saatat tietää, että Salesforce toimii usean vuokralaisen arkkitehtuurilla, mikä tarkoittaa, että resurssit jaetaan eri asiakkaiden kesken. Jotta kukaan asiakas ei hallitsisi jaettuja resursseja, Apexin ajonaikainen moottori noudattaa tiukasti pääjohtajan rajoja. Jos Apex-koodisi ylittää aina rajan, odotettu kuvernööri antaa ajonaikaisen poikkeuksen, jota ei voida käsitellä. Joten Salesforce-kehittäjänä sinun on oltava erittäin varovainen sovellustasi kehitettäessä.

Bulk Operations

Salesforcen kehittäjänä sinun on aina varmistettava, että koodisi ylläpitää pääjohtajan rajoituksia. Varmista, että Apex noudattaa kuvernöörirajoja, sinun on käytettävä joukkopuheluiden suunnittelumallia. Joukkotoiminnolla tarkoitetaan useamman kuin yhden tietueen tekemistä, kun teet DML-operaation. Ennen kuin teet DML-operaation, sinun on aina varmistettava, että lisäät rivit kokoelmaan. Alla on kuva, joka antaa sinulle täydellisen kuvauksen irtotoiminnan suunnittelumallista.

DML: t ja datatoiminnot

Olet aiemmin nähnyt, kuinka tietoja voidaan hakea tietokannasta SOQL- ja SOSL-kyselyjen avulla. Katsotaan nyt erilaisia ​​lausekkeita, joiden avulla voit lisätä tietoja Salesforce-tietokantaan. Salesforce-kehittäjän on pakko tietää, mitä nämä lauseet voivat tehdä ja miten niitä käytetään.

DML-lausunto

Kuvaus
LisääLisää yhden tai useampia aiheita organisaatiosi tietoihin
PäivittääMuokkaa yhtä tai useampaa olemassa olevaa sObject-tietuetta
OhoLuo uusia tietueita ja päivittää sObject-tietueita
PoistaaPoistaa yhden tai useamman olemassa olevan sObject-tietueen
PeruutaPalauttaa yhden tai useamman olemassa olevan sObject-tietueen
MennäYhdistää enintään kolme samaa sObject-tyyppistä tietuetta yhdeksi tietueeksi

Visualforce ja kärki

Olet saavuttanut pitkän matkan pyrkiessäsi tulemaan Salesforce-kehittäjäksi. Keskustelen seuraavaksi siitä, kuinka voit integroida Visualforce-sivusi ja huippukoodisi. Voit yhdistää Visualforce-sivusi ja huippukoodisi ohjaimilla ja laajennuksilla.

  • Mukautetut ohjaimet -Kun haluat visualforce-sivusi toimivan kokonaan järjestelmätilassa eli ilman käyttöoikeuksia ja kenttätason suojausta, käytä mukautettua ohjainta.

  • Ohjaimen laajennus -Kun haluat lisätä uusia toimintoja tai toimintoja, jotka laajentavat vakio- tai mukautetun ohjaimen toimintoja, käytä ohjaimen laajennusta.

Alla olevassa koodissa olen osoittanut, kuinka mukautettu ohjain lisätään Visualforce-sivullesi:

Alla olevassa koodissa olen osoittanut, kuinka ohjaimen laajennus sisällytetään Visualforce-sivullesi:

Poikkeusten käsittely

Jos olet kehittänyt sovelluksia aiemmin, olisit varmasti törmännyt poikkeuksiin. Poikkeuksena on erityisehto, joka muuttaa ohjelman suorituksen normaalia kulkua. Esimerkiksi jakamalla luku nollalla tai käyttämällä luetteloarvoa, joka on rajojen ulkopuolella. Jos et käsittele näitä poikkeuksia, prosessin toteutus pysähtyy ja DML: t palautetaan.

Salesforce-kehittäjänä sinun on tiedettävä, miten tarttua näihin poikkeuksiin ja mitä tehdä, kun olet saanut ne kiinni. Poikkeusten saamiseksi voit käyttää try, catch ja lopuksi rakentaa. Kun olet saanut kiinni poikkeuksesta, voit käsitellä sitä alla mainituilla tavoilla:

Poikkeus Kuinka käsitellä sitä
DMLKäytä tietueessa tai kentässä addError () -menetelmää
VisualforceKäytä ApexPages.message-luokkaa
Lähetetään sähköpostia poikkeuksestaVoit ilmoittaa kehittäjälle sähköpostitse
Kirjaudutaan mukautettuun objektiinVoit käyttää tulevaa menetelmää saadaksesi mukautetun objektin

Tähän asti tässä Salesforcen kehittäjäblogissa olet nähnyt, kuinka voit kehittää käyttöliittymääsi Visualforcen avulla, olet nähnyt kuinka kirjoittaa mukautettua logiikkaa Apexin ja erilaisten käsitteiden avulla, kuten laukaisimet, joukkotoiminnot ja poikkeusten käsittely. Viimeisenä mutta ei vähäisimpänä tarkastelemme Salesforcen testauskehystä.

Testaus

Salesforcen kehittäjänä sinun on tiedettävä, kuinka testata kirjoittamasi koodi. Testilähtöinen kehitys on hyvä tapa varmistaa ohjelmistosovelluksesi menestys pitkällä aikavälillä. Sinun on testattava sovelluksesi, jotta voit vahvistaa, että sovelluksesi toimii odotetulla tavalla. Varsinkin jos kehität sovellusta asiakkaalle, sen testaaminen ennen lopputuotteen toimittamista on erittäin tärkeää. Apex tarjoaa sinulle testauskehyksen, jonka avulla voit kirjoittaa yksikkötestejä, suorittaa testejä, tarkistaa testitulokset ja saada koodikattavuuden tuloksia.

Voit testata sovellustasi kahdella tavalla:

  1. Salesforcen käyttöliittymän kautta tämä testaustapa on tärkeä, mutta se ei tartu kaikkiin sovellustesi käyttötapauksiin
  2. Voit testata joukkotoimintoja, jopa 200 tietuetta voidaan siirtää koodisi kautta SOAP-sovellusliittymän tai Visualforce-vakiosarjan avulla

Testiluokitukset eivät sido tietoja tietokantaan ja merkitään @isTest -merkillä. Olen osoittanut, kuinka voit lisätä testiluokan lisäämällä testiluokan alla olevaan HelloWorld-luokkaan:

@isTest

yksityisluokka HelloWorldTestClass {

static testMethod void validateHelloWorld () {

Maa__c maa = uusi Maa__c (nimi = ”Intia”, valuutta_arvo__c = 50,0)

Lisää maa

maa = [VALITSE valuutta_arvo__c MISSÄ maasta WHERE Id = maa.Id]

System.assertEquals (75, maa.valuutta_arvo__c)

}

}

Toivon, että olet ymmärtänyt kaikki käsitteet, jotka sinun on tiedettävä ollaksesi Salesforce-kehittäjä. Jos haluat sukeltaa yksityiskohtiin, tarkista kassa joka tulee ohjaajan vetämän live-koulutuksen ja tosielämän projektikokemuksen kanssa. Jos sinulla on kommentteja, jätä ne alla olevaan kommenttikenttään.