進行状況の追跡を始めよう
Trailhead のホーム
Trailhead のホーム

コーディング不要の開発

学習の目的

この単元を完了すると、次のことができるようになります。
  • メタデータ駆動型の開発モデルの利点について説明する。
  • ノーコードおよびローコード開発アプローチとは何かを定義し、その例を挙げる。

メタデータの機能

「Salesforce Platform の基礎」モジュールを修了した方は、Salesforce の用語に関する説明を思い出してください。具体的には、3 つの重要な用語の オブジェクト項目レコードが定義されていました。その定義をもう 1 歩進めましょう。

Salesforce でデータを見ているとき、普通のリレーショナルデータベースの上にユーザインターフェースがあり、それが表示されていると思っている方もいるかもしれません。実際に見ているのは、プラットフォームのメタデータ対応アーキテクチャで駆動されるデータベースの抽象化なのです。

この抽象化では、オブジェクトはデータベーステーブルです。それらのオブジェクトの項目はデータベースの列であり、レコードはデータベースの行です。この比喩は、デフォルトで Salesforce に付属する標準オブジェクトとユーザが作成するカスタムオブジェクトの両方に当てはまります。

実際のメタデータは、レコード詳細ページで確認できます。取引先の場合、この詳細ページには、種別、取引先番号、Web サイトのような項目名が表示されます。これらは、アプリケーションの構造を定義するメタデータです。これらの各項目の値は実際のデータであり、データモデルの観点では、これらには特に関連性はありません。

取引先ページ。

つまり、メタデータは組織の構造を形成します。定義するのが項目、ビジネスプロセス、またはもっと複雑なものでも、メタデータには設定が保持されます。プラットフォームは、ユーザインターフェースのアプリケーションのメタデータを関連付けられたデータと一緒に表示します。

このメタデータ駆動型開発モデルは、Salesforce Platform 上での開発と Salesforce 以外での開発の主要な違いの 1 つです。Salesforce Platform はメタデータに対応しているため、ユーザ環境の重要な部分をユーザに代わって自動生成できます。ダイアログ、レコードリスト、詳細ビュー、フォームのような、通常なら自分で開発する必要があるものが標準で提供されます。データベースのカスタムオブジェクトレコードを作成、参照、更新、削除 (愛称は CRUD) する機能すべても用意されています。

こうした事前作成済み機能によって開発時間が解放され、より高度なカスタム機能に取り組めるようになります。次は、メタデータ駆動型開発アプローチが実際にどう機能するかを見てみましょう。

DreamHouse の内部

DreamHouse アプリケーションは、通常、社内従業員生産性アプリケーションと呼ばれるアプリケーションの例です。Salesforce Platform のさまざまな部分を使用して作成されています。次の図は、DreamHouse アプリケーションセットのシステム環境の概要です。Heroku サービスや他の接続デバイスが含まれていますが、しばらくはコアプラットフォーム部分にのみ集中しましょう。

プラットフォーム部分が強調された、DreamHoues のテクノロジの図

DreamHouse の場合、アプリケーションのコア機能をサポートする 3 つのカスタムオブジェクトが作成されました。

  • Broker (ブローカー): パートナーブローカーに関する情報
  • Properties (物件): 売りに出ている物件の写真と情報
  • Favorites (お気に入り): 顧客がお気に入りに追加した物件
DreamHouse データモデルが実際にはどのようなものか見てみましょう。Salesforce Platform にはスキーマビルダーという便利なツールがあるため、実際のリレーションモデル全体を表示できます。
  1. [設定] から、[クイック検索] でスキーマビルダーを検索してクリックします。初めてスキーマビルダーを開くと、組織のすべてのカスタムオブジェクトと標準オブジェクトが表示されます。
  2. 現在の選択をすべてクリアします。[選択元] メニューから、[カスタムオブジェクト] を選択し、すべてを選択します。表示は次のようになります。
    スキーマビルダーインターフェース。

画期的ですよね? スキーマビルダーは、コーダーかどうかに関係なく、アプリケーションのデータモデルを簡単に視覚化して設定できる手段を提供します。ここではデータモデリングについて詳しい説明はしません。詳細は、Trailhead の「データモデリング」モジュールを参照してください。

ノーコードおよびローコード開発

意外かもしれませんが、Salesforce Platform ではコードを最小限にするように促されます。それは、私たちがコーディングを嫌いだからではありません。Salesforce Platform のメタデータ駆動型アーキテクチャでは、1 行もコードを書かずに基本的な開発作業を完了できるからです。

Salesforce には、充実したポイント & クリック (宣言型) 開発ツールが揃っています。こうしたツールの多くでは、開発原則の理解はほとんど必要がなく、コーディングも不要です。JSON が Jason のスペルミスだと思うような人でも、堅牢で複雑なデータモデルを構築できます。Cron と聞いてどこかの SF 映画を思い出す人も一括処理ジョブをスケジュールできます。

実際、コーディングの知識がゼロの人でも、Salesforce では事前成済みコンポーネントとポイント & クリックツールを使用して完全なアプリケーションを開発できます。以下は、DreamHouse アプリケーションの各部分を作成するのに使用した、Lightning アプリケーションビルダーの例です。

Lightning アプリケーションビルダーインターフェース

入力規則や、UI 要素を含むフックアップコンポーネントの記述のような開発作業はローコードと見なされます。つまり、ローコード開発には基本的なプログラムの知識が要求されますが、プログラム開発の場合ほど厳しくはありません。たとえば、ロジック、条件、および CRUD 操作について少し知識があれば、プロセスビルダーでできることが増えます。

プロセスビルダーインターフェース。

Salesforce Platform が提供するノーコードおよびローコード開発機能によって、開発者はすばやい対応が可能になります。あなたが社内で唯一の Salesforce 開発者である場合は、Salesforce Platform の豊富な宣言型ツールを使用してより多くの機能をより少ない時間で開発できます。コーダーではないメンバーとチームで作業をする場合は、宣言型開発作業をそれらのメンバーに任せ、あなたは多くのコーディングを必要とするプロジェクトに取り組むことができます。