IT・情報処理 / Salesforce認定

Salesforce認定 Platform デベロッパーの例題・出題範囲・重要用語

Apex・Visualforceを使ったプログラム開発の基礎スキルを証明する資格。60問 / 110分 / 合格スコア65% / 前提条件なし

出題範囲

  • 開発者の基本事項
  • プロセスの自動化とロジック
  • ユーザーインターフェース
  • テスト、デバッグ、リリース

例題に挑戦

スキルサートのAIが生成した演習問題のサンプルです。アプリでは毎週新しい問題が追加されます。

例題1

開発者が1,000件のレコードを一括更新する際に、一部のレコードでエラーが発生しても、成功したレコードはデータベースに保存されるようにする必要があります。この要件を満たすために使用すべきコードはどれですか。

  1. upsert records;
  2. try { update records; } catch (Exception e) {}
  3. update records;
  4. Database.update(records, false);
  5. Database.update(records, true);
解答と解説を見る

正解: Database.update(records, false);

正解は「Database.update(records, false);」です。Salesforceにおいて、通常のDMLステートメント(例:update records;)は「All-or-None」方式であり、1件でもエラーが発生すると全レコードの処理がロールバックされます。一方、Databaseクラスのメソッド(Database.updateなど)で第2引数(allOrNone)にfalseを指定すると、部分的なコミットが許可されます。これにより、エラーが発生したレコードのみが除外され、有効なレコードは正常に保存されます。処理結果を個別に確認するには、戻り値として返されるDatabase.SaveResultオブジェクトをループ処理して確認することが一般的です。

例題2

Salesforceの保存順序(Order of Execution)において、ワークフロールールによってフィールドが更新された直後に実行される処理はどれですか。

  1. 重複ルールの実行
  2. BeforeトリガーとAfterトリガーの再実行
  3. 入力規則の再実行
  4. 承認プロセスの開始
  5. 積み上げ集計項目の計算
解答と解説を見る

正解: BeforeトリガーとAfterトリガーの再実行

正解は「BeforeトリガーとAfterトリガーの再実行」です。ワークフロールールによってフィールド更新が実行されると、Salesforceは標準の入力規則や重複ルールなどは再実行しませんが、Before UpdateトリガーとAfter Updateトリガーをもう一度(1回だけ)実行します。この際、カスタム入力規則やフローなどは再実行されない点に注意が必要です。ただし、この再実行プロセスの後、さらに積み上げ集計項目の更新などが続く一連の順序があります。プラットフォーム開発者試験では、この「ワークフローによる再帰的なトリガー実行」がガバナ制限やロジックの重複に与える影響がよく問われます。

重要用語

Lightning Web Components (LWC)
Web標準の最新技術を活用して構築されるSalesforceのUIフレームワークです。パフォーマンスに優れ、HTMLやモダンなJavaScriptを使用して開発します。再利用可能なカスタム要素を作成でき、セキュリティ機能であるLightning Web Securityによって保護されています。開発効率が高く、現在のSalesforce開発における主流の選択肢となっています。
Auraコンポーネント
LWC以前から提供されているコンポーネントベースのフレームワークです。双方向データバインディングや独自のイベントシステムを特徴とします。LWCと共存可能で、LWCを子として呼び出すことができますが、新規開発ではLWCが推奨されます。動的なUI構築が可能であり、既存の多くのアプリケーションで利用されている重要な技術です。
Visualforce
HTMLに近いタグベースのマークアップ言語を使用する、ページベースの開発フレームワークです。主にサーバーサイドで処理が行われ、PDF生成やClassic環境のカスタマイズ、複雑なビジネスロジックを含むページの構築に適しています。Apexコントローラと密接に連携し、標準機能の拡張や独自のユーザーインターフェースを柔軟に作成できます。
Lightning Data Service (LDS)
JavaScriptコードを最小限に抑え、Salesforceのレコードデータを取得、作成、更新、削除するための仕組みです。データのキャッシュ管理や共有ルールの適用を自動で行い、パフォーマンスを最適化します。複数のコンポーネントが同じレコードを表示している場合、一箇所の変更を即座に他へ反映させる同期機能も備えています。
Lightning Message Service (LMS)
LWC、Aura、Visualforceといった異なるフレームワーク間や、DOM階層が異なるコンポーネント間で通信を行うための仕組みです。パブリッシュ/サブスクライブモデルを採用しており、メッセージチャネルを通じてデータをやり取りします。これにより、ページ内の独立したセクション間でのシームレスな連携が可能になります。
カスタムイベント
LWCにおいて、子コンポーネントから親コンポーネントへ情報を伝達するために使用される標準的なJavaScriptイベントの仕組みです。dispatch()メソッドを使用してイベントを発火させ、親コンポーネントでそれを検知します。コンポーネント間の疎結合を保ちながら、ユーザーの操作に基づいた動的な処理やデータの受け渡しを実現します。
標準コントローラ
Visualforceにおいて、Apexコードを記述することなく標準オブジェクトやカスタムオブジェクトの基本操作(表示、保存、削除など)を提供する機能です。レコードのコンテキストを自動的に保持し、Salesforceの標準的な動作とセキュリティ設定を継承します。開発時間を短縮し、シンプルかつ安全にデータ操作を行うための強力なツールです。
コントローラ拡張
標準コントローラやカスタムコントローラの機能を補完・拡張するために使用されるApexクラスです。既存の標準機能を維持したまま、特定のページ専用のカスタムロジックや追加の計算処理を実装したい場合に利用されます。複数の拡張クラスを一つのページに関連付けることができ、柔軟なビジネス要件の実現を可能にします。

Salesforce認定 Platform デベロッパーの対策はアプリで

AIが毎週生成する新作問題・ランクマッチ・週次ランキング・AI診断で「続けられる」資格学習を。無料で始められます。

IT・情報処理の他の資格