Apex是由Salesforce.com開(kāi)發(fā)的專有語(yǔ)言。 根據(jù)官方定義,Apex是一種強(qiáng)類型,面向?qū)ο蟮木幊陶Z(yǔ)言,允許開(kāi)發(fā)人員在Force.com平臺(tái)服務(wù)器上執(zhí)行流量和事務(wù)控制語(yǔ)句,同時(shí)調(diào)用Force.com API。
Apex是由Salesforce.com開(kāi)發(fā)的專有語(yǔ)言。 根據(jù)官方定義,Apex是一種強(qiáng)類型,面向?qū)ο蟮木幊陶Z(yǔ)言,允許開(kāi)發(fā)人員在Force.com平臺(tái)服務(wù)器上執(zhí)行流量和事務(wù)控制語(yǔ)句,同時(shí)調(diào)用Force.com API。
集成
Apex內(nèi)置支持DML操作,如INSERT,UPDATE,DELETE以及DML異常處理。它支持內(nèi)聯(lián)SOQL和SOSL查詢處理,返回一組sObject記錄。我們將在以后的章節(jié)中詳細(xì)研究sObject,SOQL,SOSL。
Java語(yǔ)法和易于使用
Apex很容易使用,因?yàn)樗褂孟馢ava這樣的語(yǔ)法。例如,變量聲明,循環(huán)語(yǔ)法和條件語(yǔ)句。
數(shù)據(jù)高度集成
Apex數(shù)據(jù)集中和設(shè)計(jì),以一起執(zhí)行多個(gè)查詢和DML語(yǔ)句。它發(fā)出的多個(gè)數(shù)據(jù)庫(kù)事務(wù)語(yǔ)句。
強(qiáng)類型
Apex是強(qiáng)類型語(yǔ)言。它使用直接引用構(gòu)架對(duì)像,比如sObject,并且任何無(wú)效引用如果被刪除或者如果是錯(cuò)誤的數(shù)據(jù)類型,就會(huì)快速失敗。
多租戶環(huán)境
Apex在多租戶環(huán)境中運(yùn)行。因此,Apex運(yùn)行時(shí)引擎設(shè)計(jì)為密切防范失控代碼,防止其獨(dú)占共享資源。任何違反限制的代碼都會(huì)失敗,并顯示易于理解的錯(cuò)誤消息。
自動(dòng)升級(jí)
Apex作為Salesforce版本的一部分進(jìn)行升級(jí)。我們不必手動(dòng)升級(jí)。
容易測(cè)試
Apex為單元測(cè)試創(chuàng)??建和執(zhí)行提供內(nèi)置支持,包括指示覆蓋了多少代碼的測(cè)試結(jié)果,以及代碼的哪些部分可以更高效。
當(dāng)我們不能使用預(yù)構(gòu)建和現(xiàn)有的開(kāi)箱即用功能來(lái)實(shí)現(xiàn)復(fù)雜的業(yè)務(wù)功能時(shí),應(yīng)使用Apex。下面的情況下,我們需要在Salesforce配置使用Apex。
我們可以使用Apex,當(dāng)我們想:
如下圖所示(參考:Salesforce開(kāi)發(fā)人員文檔),Apex完全按需運(yùn)行Force.com平臺(tái):
操作流程:
當(dāng)開(kāi)發(fā)人員保存代碼并且最終用戶執(zhí)行調(diào)用Apex代碼的一些操作時(shí),有兩個(gè)操作序列,如下所示:
由于Apex是Salesforce.com的專有語(yǔ)言,它不支持一般編程語(yǔ)言支持的某些功能。例如,以下是Apex不支持的一些功能:
Apex代碼通常包含許多我們可能從其他編程語(yǔ)言熟悉的東西。
變量聲明:作為強(qiáng)類型語(yǔ)言,必須使用Apex中的數(shù)據(jù)類型聲明每個(gè)變量。如下面的代碼(下面的截圖)所示,lstAcc被聲明為數(shù)據(jù)類型為帳戶列表。
SOQL查詢:這將用于從Salesforce數(shù)據(jù)庫(kù)獲取數(shù)據(jù)。下面屏幕截圖中顯示的查詢是從Account對(duì)象獲取數(shù)據(jù)。
循環(huán)聲明:此循環(huán)語(yǔ)句用于迭代一個(gè)列表或迭代一段代碼指定的次數(shù)。在下面的屏幕截圖中顯示的代碼中,迭代將與lstAcc中的記錄數(shù)相同。
流控制語(yǔ)句:If語(yǔ)句用于此代碼中的流控制?;谔囟l件,決定是執(zhí)行還是停止執(zhí)行特定代碼段。例如,在下面顯示的代碼中,它檢查列表是否為空或者它包含記錄。
DML語(yǔ)句:對(duì)數(shù)據(jù)庫(kù)中的記錄執(zhí)行記錄插入,更新,上升,刪除操作。例如,以下代碼正在使用新字段值更新帳戶。
以下是Apex代碼段的外觀示例。我們將在本教程中進(jìn)一步研究所有這些Apex編程概念。
本教程是針對(duì)開(kāi)始學(xué)習(xí)的Salesforce的Apex編程。本教程將帶給你知識(shí)的中級(jí)心尖規(guī)劃覆蓋了所有的Apex的重要方面完全動(dòng)手代碼的經(jīng)驗(yàn)。
需要Salesforce的平臺(tái)和開(kāi)發(fā)的基本知識(shí)。Apex是具有到與Salesforce使用的編程語(yǔ)言。本教程假設(shè)你已經(jīng)安裝將被用來(lái)做我們的Apex編程的Salesforce實(shí)例。