Winter '26 で認定 Platform デベロッパー資格を更新する
学習の目的
この単元を完了すると、次のことができるようになります。
- ポインターを使用して大規模な外部サービスコールアウトを実装することで、Apex のヒープ制限を避ける。
- 抽象メソッドと上書きメソッドにアクセス修飾子を適切に適用することで、コンパイルエラーを防止する。
- LWS 信頼済みモードを設定して、Lightning Web コンポーネントでサードパーティスクリプトを安全に実行する。
- ユーザーレベルのセキュリティコントロールを使用できる新しい lightning/graphql モジュールを使用してデータを照会する。
- LWC ローカルアクションを使用して画面フローを強化することで、インタラクティビティとパフォーマンスを向上させる。
認定資格を最新の状態に維持する
Salesforce 認定資格は、最新の状態に維持することで最大限の価値が発揮されます。Platform デベロッパー資格を最新の状態に維持するために、このモジュールを期限までに修了してください。
認定資格にご興味がございましたら、 Platform デベロッパー認定資格試験を参照してください。
Salesforce 認定資格プログラムに参加する場合は、「Salesforce 認定資格プログラム同意書」に同意いただく必要があります。先に進む前に、同意書の受験ポリシーと、「Salesforce 認定資格プログラム同意書および行動規範」記事を確認してください。
認定 Platform デベロッパー資格の概要
Salesforce は引き続き、Apex、Lightning Web コンポーネント (LWC)、フローを使用する開発者向けの機能を拡張していきます。このモジュールでは、アプリケーションの構築と保護に影響する主要な更新について説明します。ここでは、大規模な外部サービスペイロードを効率的に処理する方法、Apex で新しいアクセス修飾子要件を使用する方法、信頼できるサードパーティスクリプトを LWC で昇格させる方法、新しい GraphQL API モジュールでデータを取得する方法、LWC ローカルアクションを使用してフローをよりインタラクティブにする方法を学習します。
Apex のヒープ制限に達することなく大規模な外部サービスコールアウトおよびペイロードを処理する
Apex で大量のデータを使用する場合、特に、外部システムとの間でファイルやバイナリペイロードを転送する必要がある場合には、すぐにヒープサイズ制限に達してしまいます。このリリースでは、外部サービスを介する大規模なコールアウトを管理するための効率的なプロセスが導入されます。外部サービスでは、バイナリデータを Apex ヒープに直接読み込むのではなく、ContentDocument オブジェクト ID へのポインターを使用するようになりました。
これにより、ヒープ制限に達することなく最大 16 MB のバイナリファイルをアップロードまたはダウンロードでき、データ量の多いインテグレーションの信頼性を大幅に高めることができます。たとえば、Salesforce をデジタルアセット管理システムと統合している開発者は、Apex のガバナ制限に達することなく大きな画像や PDF を転送できるようになりました。また、このプロセスはストレージメカニズムとして ContentDocument を使用しているため、ファイルは Salesforce 内で監査や再処理のためにアクセス可能な状態が保たれます。
Apex でのメモリ内処理を必要としない大きなファイルを使用する必要がある場合には、このアプローチを使用します。Apex でファイルのコンテンツを解析または変換する必要がある場合には、ヒープ制限への到達を避けるために小さなチャンクで実行することを検討してください。
抽象メソッドと上書きメソッドでアクセス修飾子を使用する
API バージョン 65.0 以降、Salesforce では抽象メソッドと上書きメソッドでの明示的なアクセス修飾子の使用が適用されます。これらのメソッドは protected、public、または global として宣言する必要があります。private 修飾子は使用できません。これは実装クラスがメソッドにアクセスできなくなるためです。
この変更により、コードが明確になり、開発者が誤ってサブクラスによって実装できないメソッドを記述することを防止できます。アクセス修飾子を省略した場合や、サポートされていないアクセス修飾子を使用した場合は、コンパイルエラーが発生します。
API バージョンを 65.0 以降にアップグレードする前に Apex クラスを見直し、抽象メソッドや上書きメソッドに正しいアクセス修飾子が含まれるように更新してください。こうすることで、引き続きコードをコンパイルして想定どおりに機能させることができます。
LWS 信頼済みモードを使用してサードパーティスクリプトを昇格させる
Lightning Web セキュリティ (LWS) と Lightning Locker では、コンポーネントを分離して、グローバル名前空間への許可されていないアクセスを防ぐことで Salesforce 環境を保護しています。ただし、このようなセキュリティ対策によって、ビジネスに不可欠なサードパーティライブラリがグローバルアクセスを必要とする場合に正しく機能しないことがあります。
LWS 信頼済みモードを使用すると、開発者は信頼するコードに対してこのような制限をバイパスすることができます。コンポーネントを信頼済みとマークすることで、そのコンポーネントでは LWS または Locker の制限を適用せずにサードパーティスクリプトを実行できます。これは特に分析ライブラリや高度なビジュアライゼーションフレームワークなど、ブラウザーのグローバルコンテキストへの直接アクセスを必要とするスクリプトを統合する場合に有用です。
LWS 信頼済みモードを使用すると攻撃対象領域が広がるため、LWS 信頼済みモードは審査済みの安全なライブラリにのみ使用するようにしてください。本番で信頼済みモードを有効にする場合は、Salesforce セキュリティガイドラインと組織のガバナンスプロセスに従ってください。
新規追加および変更された LWC モジュールについて学ぶ
Salesforce は引き続き、Lightning Web コンポーネント (LWC) の機能を拡張していきます。開発者はより柔軟に高機能なアプリケーションを作成できます。このリリースで新規追加および更新されたものは次のとおりです。
新しいモジュール
- lightning/graphql – このモジュールを使用すると、GraphQL API を使用して UI API が有効なオブジェクトのデータを取得できます。実行ユーザーのオブジェクトレベルと項目レベルのセキュリティが適用され、廃止された lightning/uiGraphQLApi に代わるものです。
- 省略可能な項目と動的クエリ作成がサポートされます。
- すべての新しい GraphQL ベースのデータ取得にお勧めします。
- 省略可能な項目と動的クエリ作成がサポートされます。
- lightning/omnistudioPubsub – カスタムコンポーネントが公開/登録メカニズムを使用して FlexCard や Omniscript と通信できるようにします。
- Omnistudio ラッパーコンポーネントを組み込んでコンポーネント間のシームレスなインタラクションを可能にするのに最適です。
- Omnistudio ラッパーコンポーネントを組み込んでコンポーネント間のシームレスなインタラクションを可能にするのに最適です。
変更されたモジュール
- lightning/conversationToolkitApi – 新しいメソッドを追加します:
- inactivateConversation(recordId) – ID によって会話レコードを無効化します。
trueに解決される Promise を返します。または、エラーがある場合には却下します。
- inactivateConversation(recordId) – ID によって会話レコードを無効化します。
- lightning/uiGraphQLApi (廃止) – このモジュールとそのワイヤーアダプター、および refreshGraphQL() 関数は廃止されます。
- アクション: サポートが継続され、新機能にアクセスできるように lightning/graphql に移行してください。
- アクション: サポートが継続され、新機能にアクセスできるように lightning/graphql に移行してください。
画面フローで LWC コンポーネントを使用してローカルアクションを実現する
画面フローはユーザーにビジネスプロセスをガイドする強力なツールですが、従来はブラウザーとのやり取りが制限されていました。このリリースでは、画面フローで Lightning Web コンポーネント (LWC) ローカルアクションを使用してクライアント側の操作を実行できるようになりました。
たとえば、ユーザーが画面を送信した後にカスタムトーストメッセージを表示したり、自動的にレコードページに移動させたりといったことを、サーバーコールを実行せずに行うことができます。ローカルアクションは完全にユーザーのブラウザー内で実行されるため、より速く効率的で、サーバーリソースを消費しません。
サーバーデータを必要としない作業 (UI フィードバック、ナビゲーション、フォームのリセットなど) にはローカルアクションを使用します。Salesforce データが必要な操作には、引き続きサーバー側アクションを使用します。
まとめ
ここでは、Salesforce Platform 開発者にとって特に影響の大きい今年の更新について学習しました。Apex でヒープ制限に達することなく大きなデータを処理する機能、アクセス修飾子を適用してコードをわかりやすくする機能、信頼できるサードパーティスクリプトを昇格させる機能などの機能強化によって、アプリケーションのパフォーマンスとセキュリティの両方が向上します。
また、lightning/graphql や lightning/omnistudioPubsub などの新しい LWC モジュールを活用して、廃止される API から移行し、LWC ローカルアクションによってフローをよりインタラクティブにする方法についても学習しました。
プロジェクトにこれらの更新を適用することで、Salesforce Platform 上でより拡張性が高く、安全で、ユーザーフレンドリーなソリューションを作成できると共に、開発者スキルを最新に保ち、認定資格も良好な状態に保つことができます。単元 2 では、Apex とフローのテストを一緒に実行する方法を学習し、ハンズオン Challenge を完了して知識を試します。
リソース
- Salesforce ヘルプ: 自動フローおよび Apex テストの取得と実行の合理化
- Salesforce ヘルプ: Apex ヒープ制限に達することなく大規模な外部サービスのコールアウトとペイロードを処理する
- Salesforce ヘルプ: 抽象メソッドと上書きメソッドでのアクセス修飾子の使用
- Salesforce ヘルプ: LWS 信頼済みモードを使用したサードパーティスクリプトの昇格
- Salesforce ヘルプ: 新規追加または変更された Lightning Web コンポーネントのモジュール
- Salesforce ヘルプ: 画面フローでローカルアクションに LWC コンポーネントを使用
