0
0

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?

これからSalesforceを入門する皆さんへ

Last updated at Posted at 2025-10-24

1. はじめに

こんにちは!この記事をご覧いただきありがとうございます。devKuma と申します。主にWeb系のサービスを担当するエンジニアとして、これまで十数年ほど働いてきました。

そこで、実は、私も最近Salesforceの学習を始めたばかりの入門者です。

入門者でありながら、Salesforceと早く仲良くなりたい! という気持ちで日々学んでいます。そして、学習をより深めるために、「自分が学んだことや経験したことを他の人に説明する」という、最も効果的な学習方法を実践してみようと思いました。そこで、みんさんが多く愛用されているQiitaを通じて、同じようにSalesforceを学ぶ皆さんと一緒に成長していけたらと思っています。

私の場合、Salesforceについて調べ始めると、慣れている言葉は多いけど、Salesforceはその上に“独自の概念”が多いということです。例えば、「オブジェクト」「Apex」「Lightning」「Flow」など、似たような用語でも指している意味や仕組みが全く異なり、最初は「結局どこから触ればいいの?」と戸惑う場面が多々ありました。

そのため、この記事は、何かを“教える”ためのものではなく、私自身が「最初にこれを知っておけばよかった!」と感じたことを、入門者の目線で整理・共有するために書いています。

この記事が、同じようにSalesforceを学び始めた皆さん、
そして私自身にとっても、少しでも学習の道しるべとなれば嬉しいです。

この記事で一緒に確認したいこと

  • Salesforceって結局なにがすごいの?
  • 難しそうな「基本用語」の私なりの理解
  • 私も実践中!おすすめの学習ステップ
  • 「管理者」と「開発者」ってどう違うの?

2. Salesforceとは? 〜私たちが学ぼうとしているもの〜

まず、「Salesforceって何?」というところからですが、調べてみると「世界No.1のCRM(顧客関係管理)プラットフォーム」と説明されています。

CRM(顧客関係管理)って何?

これは、企業がお客様との関係(営業活動、問い合わせ履歴など)を管理するための考え方やツールのことのようです。
「A社にいつ訪問したか」「Bさんからどんな問い合わせがあったか」といった情報を一元管理して、お客様に最適な対応をするために使われます。

Salesforceの主要な製品(クラウド)

Salesforceは、このCRMを実現するために、いろんな部門向けの製品(クラウド)を提供しているようです。

  • Sales Cloud(営業支援)
  • Service Cloud(カスタマーサービス)
  • Marketing Cloud(マーケティング)

これらがメインのようですが、他にもたくさんあるみたいです。(正直、まだ全部覚えきれていません…!)

Salesforceの強み:PaaSとしての側面

学習を進める中で「Salesforceのすごさはここか!」と感じたのは、単なるSaaS(完成品のアプリ)ではなく、PaaS(開発・実行環境の基盤)でもある、という点です。

これはつまり、自社の業務に合わせて、機能をカスタマイズできるということで、私は開発者として、こちら関連の仕事をやることになるんだなと思いました。

  • 高いカスタマイズ性
    • 会社のルールに合わせて入力項目を増やしたり、承認プロセスを自動化したりできる。
  • AppExchange
    • Salesforce版のApp Storeのようなもの。便利なアプリ(名刺管理とか)を追加できる。
  • 強力な学習システム
    • これが一番心強いのですが、Trailheadという素晴らしい無料学習環境があり、世界中に学習仲間や先輩がたくさんいます。

3. まずはこれだけ!Salesforceの重要基本用語

開発者のビューで、まず押さえるべきは、Salesforceのデータ構造と一般的なRDB(リレーショナルデータベース)との用語の違いです。

Salesforceは独自のデータベースを持っており、その呼び方が独特です。私も最初は戸惑いましたが、以下のようにRDB用語と対比させると理解しやすかったです。

1. オブジェクト (Object)

  • RDBでいう「テーブル (Table)」です。

  • データを格納する「型」や「定義」そのものを指します。

  • 開発者がコード(ApexやSOQL)で扱う際は、このオブジェクトの**「API参照名」**を使います。

  • 標準オブジェクト (Standard Object)

    • Salesforceが標準で用意しているテーブル。
    • API参照名(コードで使う名前)はそのままです。
    • 例: Account (取引先), Contact (取引先責任者), Opportunity (商談), User (ユーザ)
  • カスタムオブジェクト (Custom Object)

    • 開発者が独自に作成するテーブル。
    • API参照名には必ずサフィックスとして __c が付きます。(c は Custom の略です)
    • 例: Project__c (プロジェクト管理), Employee__c (社員名簿)

2. 項目 (Field)

  • RDBでいう「カラム (Column)」です。

  • オブジェクト(テーブル)が持つデータ項目を定義します。

  • 項目には厳密なデータ型(Text, Number, Date, Checkbox, Picklist, Lookup など)が定義されています。

  • 標準項目 (Standard Field)

    • 標準オブジェクトに最初からあるカラム。
    • 例: Id (全レコードに付与される一意のキー), Name, CreatedDate, OwnerId (所有者ID)
  • カスタム項目 (Custom Field)

    • 開発者が独自に追加するカラム。
    • こちらもAPI参照名には __c が付きます。
    • 例: ProjectCode__c, StartDate__c, Status__c (選択リスト)

3. レコード (Record)

  • RDBでいう「行 (Row)」です。
  • オブジェクトに格納される実データ1件1件を指します。
  • Apex開発では、このレコード1件を SObject 型(例: Account 型や Project__c 型の変数)としてインスタンス化して扱います。

SOQLで理解する3つの関係

この3つの用語の関係は、Salesforceのクエリ言語である SOQL (Salesforce Object Query Language) を見ると一目瞭然です。

/*
 * SELECT [項目 (Field)]
 * FROM   [オブジェクト (Object)]
 * WHERE  [レコード (Record) を絞り込む条件]
 */

SELECT
    Id, Name, Industry, -- 標準項目
    CustomField__c      -- カスタム項目
FROM
    Account             -- 標準オブジェクト
WHERE
    Industry = 'Technology'
LIMIT 10

4. リレーション (Relationship)

  • RDBでいう「外部キー (Foreign Key)」によるテーブル間の関連付けです。

  • これはSalesforce開発において非常に重要な概念で、主に2つの種類があります。

  • 参照関係 (Lookup Relationship)

    • ゆるやかな 1:N の関連付け。一般的なRDBのFKに近いです。
    • 子オブジェクトの項目として、親オブジェクトの Id を保持します(これが __c で終わるリレーション項目です)。
    • 例: 「商談 (Opportunity)」が「取引先 (Account)」を参照する。
    • SOQLでは Opportunity.Account.Name のようにドット記法で親の項目を辿れるのが特徴です。
  • 主従関係 (Master-Detail Relationship)

    • 強力な 1:N の関連付け。「親(Master)」と「子(Detail)」の関係です。
    • 特徴(開発上重要):
      1. 「親」レコードが存在しないと「子」レコードは存在できません。
      2. 「親」が削除されると、「子」も自動でカスケード削除されます。
      3. 「子」の権限は「親」に連動します。
      4. ロールアップサマリー項目(子のレコードを集計(COUNT, SUMなど)した値を親に持たせる特殊な項目)が使えます。

私のような開発者は、この「オブジェクト」「項目」「リレーション」をどう設計するか(データモデリング)が、Salesforce開発の基礎であり最も重要な部分だと感じています。

4. Salesforce入門:最強の学習ステップ

SalesforceにはTrailheadという、公式の無料学習プラットフォームがあります。私も今、まさにこれで学習を進めています。

Step 1: 開発環境 (Developer Edition) を手に入れよう!

まずは、Salesforceを自由に触れる「練習環境」を手に入れる必要があります。
Salesforce Developer Edition と検索して、無料サインアップしましょう。私もこれで自分の環境を作りました。現時点では以下のリンクのようです。

Step 2: Trailhead を始めよう!

次に Trailhead と検索し、アカウントを作成します。
Trailheadは、学習サイトというよりゲームに近いです。

  • モジュール(単元)をクリアすると「バッジ」がもらえる!
  • バッジを集めると「ポイント」が貯まり、ランクが上がる!(モチベーションになります)
  • 知識を学ぶだけでなく、実際に手を動かしながら学べる「ハンズオンChallenge」があるのが最高です。

Step 3: おすすめの入門モジュール

私もここから始めました。まずは以下のモジュールから挑戦してみるのがおすすめです。

5. あなたはどっち?「管理者」と「開発者」

Salesforce利用やプロジェクトにあたり多くの役割があると思いますが、まずは大きくこの二つになるかと思います。私は開発者の方ではありますが、管理者面もあわせで学習しています。

1. 管理者 (Administrator)

  • 役割コードを書かずに、クリック操作(「宣言的開発」と呼ぶそうです)でSalesforceを使いやすく設定・運用する人。
  • 現場の「こうしたい」を機能に落とし込む、頼れる存在のようです。
  • 学ぶこと:標準機能、オブジェクト設計、フローという自動化ツール、権限設定など。
  • ポイント開発者を目指す場合でも、まずはこの「管理者」の知識が必須と言われています。私もまずはここの勉強から集中しています。

2. 開発者 (Developer)

  • 役割コードを書いて、管理者機能だけでは実現できない、より複雑な要件や外部連携を実現する人。
  • 学ぶこと
    • Apex:Javaに似たSalesforce独自のプログラミング言語。
    • LWC (Lightning Web Components):モダンなUI(画面)を作る技術(JavaScript, HTML, CSSベース)。

6. (エンジニア向け)Salesforce開発の勘所

もし(私のように)開発経験がある方がSalesforce開発を学ぶ場合、いくつか「独特だな」と感じる点がありました。

  • 「コードを書かない開発(宣言的開発)」が第一
    • 他の開発だとすぐコードを書きがちですが、Salesforceではまず「フローでできないか?」を考える文化が強いようです。
  • ガバナ制限
    • Salesforceはマルチテナント環境なので、1回の処理で使えるリソース(DBアクセス回数など)に厳しい制限があるとのこと。これは慣れるまで大変そうです…。
  • SOQL (Salesforce Object Query Language)
    • SQLに似た独自のクエリ言語。SELECT * が使えなかったり、JOINの書き方が独特だったりして、最初は戸惑いました。

7. 情報収集とコミュニティ

一人で学んでいると不安になりますが、Salesforceはコミュニティがとても活発なのが心強いです。

  • Trailblazer Community
  • Qiita / Zenn
    • まさにこの記事があるQiitaやZenn!「Salesforce」タグには、私のような入門者向けの記事から、マニアックな技術記事までたくさんあります。
    • Qiita - Salesforce
    • Zenn - Salesforce

8. おわりに

Salesforce、学び始めると本当に奥が深くて「できること」がめちゃくちゃ多いプラットフォームだと感じています。(正直、まだ全体像の入り口に立ったばかりですが…)

もし皆さんも私と同じように「どこからやろう…」と迷っていたら、まずは一緒に無料のDeveloper Editionを手に入れ、Trailheadで最初のバッジを1つ取ってみることから始めてみませんか?

私もまだまだ学習中です。この記事が少しでもお役に立てば嬉しいですし、ぜひ一緒に学習を頑張っていきましょう!ではみなさんこれからもよろしくお願いいたします!

以上devKumaでした。

0
0
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
0
0

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?