Submit Search
Upload
幅広い技術力が身につくSalesforceエンジニアのススメ〜入門編〜
•
13 likes
•
8,711 views
SFDG ROOKIES
Follow
Developer Summit2018 Salesforce Developer Group ルーキー会プレゼンツ
Read less
Read more
Education
Report
Share
Report
Share
1 of 81
Download Now
Download to read offline
Recommended
Salesforce 開発入門
Salesforce 開発入門
Salesforce Developers Japan
Salesforce integration architecture 20200529
Salesforce integration architecture 20200529
Hiroki Iida
そのアプリ開発PowerAppsでやるか否かの指針?(※個人的見解)
そのアプリ開発PowerAppsでやるか否かの指針?(※個人的見解)
Teruchika Yamada
Visualforceを使ってみよう
Visualforceを使ってみよう
Salesforce Developers Japan
認定テクニカルアーキテクト取ろうぜ
認定テクニカルアーキテクト取ろうぜ
Hiroki Sato
Lightning コンポーネント開発〜実装例から学ぶ開発のコツ
Lightning コンポーネント開発〜実装例から学ぶ開発のコツ
Salesforce Developers Japan
え!?データがオンプレにあるけどPower BI で BI したいの?
え!?データがオンプレにあるけどPower BI で BI したいの?
Yugo Shimizu
SharePoint Framework によるモダンサイトのカスタマイズ
SharePoint Framework によるモダンサイトのカスタマイズ
Hiroaki Oikawa
More Related Content
What's hot
Salesforceでの大規模データの取り扱い
Salesforceでの大規模データの取り扱い
Salesforce Developers Japan
Einstein Analyticsによるユースケース別機能、実現例のご紹介(前編)〜Winter’18 新機能紹介を交えて
Einstein Analyticsによるユースケース別機能、実現例のご紹介(前編)〜Winter’18 新機能紹介を交えて
Salesforce Developers Japan
SalesforceにおけるCDC(変更データキャプチャ)の実装・活用法について
SalesforceにおけるCDC(変更データキャプチャ)の実装・活用法について
Takashi Hatamoto
未経験者から世界と渡り合うネットワークエンジニアになるためのキャリア設計術
未経験者から世界と渡り合うネットワークエンジニアになるためのキャリア設計術
Taiji Tsuchiya
今さら聞けない人のためのCI/CD超入門
今さら聞けない人のためのCI/CD超入門
VirtualTech Japan Inc./Begi.net Inc.
Dynatrace が特別な7つの理由
Dynatrace が特別な7つの理由
Harry Hiyoshi
Stac2021 [初学者向け]ローコード開発におけるテストの考え方
Stac2021 [初学者向け]ローコード開発におけるテストの考え方
Satoshi Sakashita
はじめようLightningコンポーネント
はじめようLightningコンポーネント
Salesforce Developers Japan
Viva Connections 拡張機能入門
Viva Connections 拡張機能入門
Hiroaki Oikawa
Einstein Next Best Action を試してみよう
Einstein Next Best Action を試してみよう
Salesforce Developers Japan
【de:code 2020】 Power Platform いまさら聞けないモデル駆動型アプリケーション
【de:code 2020】 Power Platform いまさら聞けないモデル駆動型アプリケーション
日本マイクロソフト株式会社
事例から学ぶ!Power Platformガバナンス設計~CoEの話も添えて~
事例から学ぶ!Power Platformガバナンス設計~CoEの話も添えて~
Junichi Kodama
Terraformで始めるInfrastructure as Code
Terraformで始めるInfrastructure as Code
Takahisa Iwamoto
データ連携の新しいカタチ - 変更データキャプチャ/プラットフォームイベントを MuleSoft Anypoint Platform と組み合わせて試してみよう
データ連携の新しいカタチ - 変更データキャプチャ/プラットフォームイベントを MuleSoft Anypoint Platform と組み合わせて試してみよう
Salesforce Developers Japan
JDMC LT#1 - なぜモノタロウでデータマネジメントが必要になったのか
JDMC LT#1 - なぜモノタロウでデータマネジメントが必要になったのか
株式会社MonotaRO Tech Team
RDF Semantic Graph「RDF 超入門」
RDF Semantic Graph「RDF 超入門」
オラクルエンジニア通信
現状分析→価値開発→仕様化 As is
現状分析→価値開発→仕様化 As is
Zenji Kanzaki
テスト分析入門 -「ゆもつよメソッド」を例に- #wacate
テスト分析入門 -「ゆもつよメソッド」を例に- #wacate
Kinji Akemine
PowerApps をざっくりさわってみた
PowerApps をざっくりさわってみた
Hiroaki Oikawa
Apexトリガと標準自動化プロセスの違い
Apexトリガと標準自動化プロセスの違い
Yoshinari KUWAYAMA
What's hot
(20)
Salesforceでの大規模データの取り扱い
Salesforceでの大規模データの取り扱い
Einstein Analyticsによるユースケース別機能、実現例のご紹介(前編)〜Winter’18 新機能紹介を交えて
Einstein Analyticsによるユースケース別機能、実現例のご紹介(前編)〜Winter’18 新機能紹介を交えて
SalesforceにおけるCDC(変更データキャプチャ)の実装・活用法について
SalesforceにおけるCDC(変更データキャプチャ)の実装・活用法について
未経験者から世界と渡り合うネットワークエンジニアになるためのキャリア設計術
未経験者から世界と渡り合うネットワークエンジニアになるためのキャリア設計術
今さら聞けない人のためのCI/CD超入門
今さら聞けない人のためのCI/CD超入門
Dynatrace が特別な7つの理由
Dynatrace が特別な7つの理由
Stac2021 [初学者向け]ローコード開発におけるテストの考え方
Stac2021 [初学者向け]ローコード開発におけるテストの考え方
はじめようLightningコンポーネント
はじめようLightningコンポーネント
Viva Connections 拡張機能入門
Viva Connections 拡張機能入門
Einstein Next Best Action を試してみよう
Einstein Next Best Action を試してみよう
【de:code 2020】 Power Platform いまさら聞けないモデル駆動型アプリケーション
【de:code 2020】 Power Platform いまさら聞けないモデル駆動型アプリケーション
事例から学ぶ!Power Platformガバナンス設計~CoEの話も添えて~
事例から学ぶ!Power Platformガバナンス設計~CoEの話も添えて~
Terraformで始めるInfrastructure as Code
Terraformで始めるInfrastructure as Code
データ連携の新しいカタチ - 変更データキャプチャ/プラットフォームイベントを MuleSoft Anypoint Platform と組み合わせて試してみよう
データ連携の新しいカタチ - 変更データキャプチャ/プラットフォームイベントを MuleSoft Anypoint Platform と組み合わせて試してみよう
JDMC LT#1 - なぜモノタロウでデータマネジメントが必要になったのか
JDMC LT#1 - なぜモノタロウでデータマネジメントが必要になったのか
RDF Semantic Graph「RDF 超入門」
RDF Semantic Graph「RDF 超入門」
現状分析→価値開発→仕様化 As is
現状分析→価値開発→仕様化 As is
テスト分析入門 -「ゆもつよメソッド」を例に- #wacate
テスト分析入門 -「ゆもつよメソッド」を例に- #wacate
PowerApps をざっくりさわってみた
PowerApps をざっくりさわってみた
Apexトリガと標準自動化プロセスの違い
Apexトリガと標準自動化プロセスの違い
Similar to 幅広い技術力が身につくSalesforceエンジニアのススメ〜入門編〜
【Devsumi2019】開発者に贈るSalesforceプラットフォーム概論と最新動向
【Devsumi2019】開発者に贈るSalesforceプラットフォーム概論と最新動向
SFDG ROOKIES
Swtt2018 sfdgr1 Developer Group ルーキー会が教える!これから始めるSalesforce開発
Swtt2018 sfdgr1 Developer Group ルーキー会が教える!これから始めるSalesforce開発
SFDG ROOKIES
A 1-1 tfs on azure で始めるイマドキのソフトウェア開発
A 1-1 tfs on azure で始めるイマドキのソフトウェア開発
GoAzure
Go azure tfs_service
Go azure tfs_service
Kaoru NAKAMURA
Salesforce DUG meetup09 summer15
Salesforce DUG meetup09 summer15
Ikou Sanuki
Swtt2018 sfdgr2 Developer Group ルーキー会が教える!次の一歩のための開発ノウハウ
Swtt2018 sfdgr2 Developer Group ルーキー会が教える!次の一歩のための開発ノウハウ
SFDG ROOKIES
俺とHashiCorp
俺とHashiCorp
Toru Makabe
Adminとうまく共存するためのApex開発Tips
Adminとうまく共存するためのApex開発Tips
Takashi Hatamoto
Salesforce dug meetup #5
Salesforce dug meetup #5
Akira Kuratani
チーム×ツール Team Foundation Server & Service 共感しActionできる開発基盤 アルティメイタム【デブサミ 2013 ...
チーム×ツール Team Foundation Server & Service 共感しActionできる開発基盤 アルティメイタム【デブサミ 2013 ...
智治 長沢
20200617_archjapan-tokyo-05
20200617_archjapan-tokyo-05
Takahito Miyamoto
DreamTXセッションから読み解くAI活用の現状と展望
DreamTXセッションから読み解くAI活用の現状と展望
Takashi Hatamoto
セールスフォース的開発メソッドのススメ 須山洋輔
セールスフォース的開発メソッドのススメ 須山洋輔
TerraSky
20130302 わんくま勉強会大阪 tfsを使ってみよう
20130302 わんくま勉強会大阪 tfsを使ってみよう
Takuya Kawabe
Scalable Generator: Using Scala in SIer Business (ScalaMatsuri)
Scalable Generator: Using Scala in SIer Business (ScalaMatsuri)
TIS Inc.
今、おさえておきたい DevOps
今、おさえておきたい DevOps
智治 長沢
実演 AppExchange アプリケーション ライフサイクル
実演 AppExchange アプリケーション ライフサイクル
Takahiro Kawabata
三位一体の自動化で壊せ DevとOpsの壁~アラサーエンジニアの挑戦~
三位一体の自動化で壊せ DevとOpsの壁~アラサーエンジニアの挑戦~
Rakuten Group, Inc.
楽天市場で使われている技術、エンジニアに必要なコアスキルとはTechnology used in Rakuten, core skills neede...
楽天市場で使われている技術、エンジニアに必要なコアスキルとはTechnology used in Rakuten, core skills neede...
Rakuten Group, Inc.
DOO-015_Azure/Windows Server 2016 から学ぶ Windows 系インフラ エンジニアのための DevOps
DOO-015_Azure/Windows Server 2016 から学ぶ Windows 系インフラ エンジニアのための DevOps
decode2016
Similar to 幅広い技術力が身につくSalesforceエンジニアのススメ〜入門編〜
(20)
【Devsumi2019】開発者に贈るSalesforceプラットフォーム概論と最新動向
【Devsumi2019】開発者に贈るSalesforceプラットフォーム概論と最新動向
Swtt2018 sfdgr1 Developer Group ルーキー会が教える!これから始めるSalesforce開発
Swtt2018 sfdgr1 Developer Group ルーキー会が教える!これから始めるSalesforce開発
A 1-1 tfs on azure で始めるイマドキのソフトウェア開発
A 1-1 tfs on azure で始めるイマドキのソフトウェア開発
Go azure tfs_service
Go azure tfs_service
Salesforce DUG meetup09 summer15
Salesforce DUG meetup09 summer15
Swtt2018 sfdgr2 Developer Group ルーキー会が教える!次の一歩のための開発ノウハウ
Swtt2018 sfdgr2 Developer Group ルーキー会が教える!次の一歩のための開発ノウハウ
俺とHashiCorp
俺とHashiCorp
Adminとうまく共存するためのApex開発Tips
Adminとうまく共存するためのApex開発Tips
Salesforce dug meetup #5
Salesforce dug meetup #5
チーム×ツール Team Foundation Server & Service 共感しActionできる開発基盤 アルティメイタム【デブサミ 2013 ...
チーム×ツール Team Foundation Server & Service 共感しActionできる開発基盤 アルティメイタム【デブサミ 2013 ...
20200617_archjapan-tokyo-05
20200617_archjapan-tokyo-05
DreamTXセッションから読み解くAI活用の現状と展望
DreamTXセッションから読み解くAI活用の現状と展望
セールスフォース的開発メソッドのススメ 須山洋輔
セールスフォース的開発メソッドのススメ 須山洋輔
20130302 わんくま勉強会大阪 tfsを使ってみよう
20130302 わんくま勉強会大阪 tfsを使ってみよう
Scalable Generator: Using Scala in SIer Business (ScalaMatsuri)
Scalable Generator: Using Scala in SIer Business (ScalaMatsuri)
今、おさえておきたい DevOps
今、おさえておきたい DevOps
実演 AppExchange アプリケーション ライフサイクル
実演 AppExchange アプリケーション ライフサイクル
三位一体の自動化で壊せ DevとOpsの壁~アラサーエンジニアの挑戦~
三位一体の自動化で壊せ DevとOpsの壁~アラサーエンジニアの挑戦~
楽天市場で使われている技術、エンジニアに必要なコアスキルとはTechnology used in Rakuten, core skills neede...
楽天市場で使われている技術、エンジニアに必要なコアスキルとはTechnology used in Rakuten, core skills neede...
DOO-015_Azure/Windows Server 2016 から学ぶ Windows 系インフラ エンジニアのための DevOps
DOO-015_Azure/Windows Server 2016 から学ぶ Windows 系インフラ エンジニアのための DevOps
More from SFDG ROOKIES
20190731ルーキー会 × TERAKOYAFORCE
20190731ルーキー会 × TERAKOYAFORCE
SFDG ROOKIES
20190809 ルーキー会 × TERAKOYAFORCE
20190809 ルーキー会 × TERAKOYAFORCE
SFDG ROOKIES
Swtt2018 work shop_20181205
Swtt2018 work shop_20181205
SFDG ROOKIES
Sfdgr 15 20190115
Sfdgr 15 20190115
SFDG ROOKIES
Sfdgr 13 20181120_v1.0
Sfdgr 13 20181120_v1.0
SFDG ROOKIES
Sfdgr 12 20180906_v1.0
Sfdgr 12 20180906_v1.0
SFDG ROOKIES
Sfdgr 11 20180725_salesforce_summer
Sfdgr 11 20180725_salesforce_summer
SFDG ROOKIES
20180619_第10回ルーキー会資料
20180619_第10回ルーキー会資料
SFDG ROOKIES
Sfdgr 09 20180524
Sfdgr 09 20180524
SFDG ROOKIES
Salesforce Developer Group ルーキー会 #08
Salesforce Developer Group ルーキー会 #08
SFDG ROOKIES
Sfdgr 07 20180320
Sfdgr 07 20180320
SFDG ROOKIES
SFDGR 06 20180219
SFDGR 06 20180219
SFDG ROOKIES
SFDGR #5
SFDGR #5
SFDG ROOKIES
More from SFDG ROOKIES
(13)
20190731ルーキー会 × TERAKOYAFORCE
20190731ルーキー会 × TERAKOYAFORCE
20190809 ルーキー会 × TERAKOYAFORCE
20190809 ルーキー会 × TERAKOYAFORCE
Swtt2018 work shop_20181205
Swtt2018 work shop_20181205
Sfdgr 15 20190115
Sfdgr 15 20190115
Sfdgr 13 20181120_v1.0
Sfdgr 13 20181120_v1.0
Sfdgr 12 20180906_v1.0
Sfdgr 12 20180906_v1.0
Sfdgr 11 20180725_salesforce_summer
Sfdgr 11 20180725_salesforce_summer
20180619_第10回ルーキー会資料
20180619_第10回ルーキー会資料
Sfdgr 09 20180524
Sfdgr 09 20180524
Salesforce Developer Group ルーキー会 #08
Salesforce Developer Group ルーキー会 #08
Sfdgr 07 20180320
Sfdgr 07 20180320
SFDGR 06 20180219
SFDGR 06 20180219
SFDGR #5
SFDGR #5
幅広い技術力が身につくSalesforceエンジニアのススメ〜入門編〜
1.
[Developers Summit 2018] 幅広い技術力が身につく Salesforceエンジニアのススメ~入門編~ Salesforce
Developer Group ルーキー会 2018年2月15日 #devsumi #sfdg 1
2.
今日のゴール 2 Salesforceってなに? Salesforceでの開発に使う技術っ てどんなものがあるの? 疑問解決! 「やってみよう」という気持ち 次の一歩の踏み出し方 45分後
3.
3 Salesforce Developer Group
Rookies ぷれぜんつ!
4.
アジェンダ&スピーカー 4 1 Salesforceってなに? 株式会社テラスカイ 讃岐 行(@i_sanuki) Salesforce
MVP 2 どんな技術要素があるの? 株式会社フレクト システムエンジニア 齋藤 俊 プロジェクトマネージャ見習い 3 エンジニア的にどうなの? 株式会社テラスカイ 須山 洋輔(@suyaman_jp) コンサルタント兼エンジニア 4 なにからやればいいの? 株式会社日本システムデザイン 小林 亮理(@ryosuke921186) エンジニア
5.
本セッションでご理解いただきたいこと 1. 入門者向けセッションである 2. Salesforceの技術要素はいっぱいある 3.
とっかかりとしてポイントを絞って説明 5
6.
6 Salesforceってなに? どんな技術要素があるの? エンジニア的にどうなの? なにからやればいいの? さぬき
7.
Salesforceとは 7 セールスフォース社が提供しているサービスの名称
8.
8 クラウド コンピューティング
9.
Application Salesforce Platform Salesforceの仕組み 9 サービス サポート 営業支援 マーケティ ング コミュニ ティ 分析 カスタム アプリ サード パーティ アプリコマース Salesforce提供 独自
パートナー提供
10.
利用例(ユーザ視点) 10 Salesforce Platform 契約組織 営業支援 カスタム アプリ INTERNET ライセンスタイプ により利用可能 必要に応じて 個別開発 ライセンス契約login/利用
11.
INTERNET 開発例(Dev視点) 11 Salesforce Platform 契約組織 営業支援 カスタム アプリ Dev組織 サードパー ティアプリ 標準アプリを拡張 特定組織用の 独自アプリを開発 組織に依存しない 独自アプリを開発 login/開発
12.
12 ユーザからみるとアプリ 開発者からみるとプラットフォーム
13.
Platform内のレイヤー 13 Salesforce Platform 開発者向け機能 インフラ 標準カスタマイズ機能 ミドルウェア ストレージ, CPU, メモリ等 DB,
Appサーバー, VM等 気にしなくても 良い領域 コーディング無 コーディング有 実はこっちも 大事なところ Developerの 大事なところ
14.
標準カスタマイズ機能 • Low-Code系機能 – 企業向けシステムに必要となるベース機能 14 分析 ワークフロー レイアウト
コミュニ ティ わざわざコーディングで開発しないこと モバイル 認証ユーザ管理 アクセス コントロール 多言語/通貨 ロジック ・・他沢山DB テーブル操作 バックアップ 障害復旧
15.
開発者向け機能 • 主にコーディングを必要とする機能 • ClientSide,
ServerSide, Query, UnitTest, API, AI…etc • 標準カスタマイズで対応できない時に使う 15 (デブサミに来ている)皆さんが輝くところ・・!
16.
16 Salesforceってなに? どんな技術要素があるの? エンジニア的にどうなの? なにからやればいいの? さいとう
17.
17 どんな技術要素があるの? 1. サーバサイド …
Apex / Trigger 2. データベース … SOQL 3. フロントエンド … LightningComponent / Visualforce 4. テスト … Apexテストフレームワーク 5. 開発環境・ツール … 開発者コンソール / SFDX / force.com CLI 6. Webアプリ開発 … Heroku 7. ML, IoT … Einstein / IoT Cloud
18.
18 1. Apexとは?(1) 開発者が Salesforce
Platformでフローとトランザクションの 制御ステートメントを実行できるようにした、 強く型付けされたオブジェクト指向のプログラミング言語 https://trailhead.salesforce.com/ja/projects/quickstart-apex/steps/quickstart-apex-1
19.
19 1. Apexとは?(2) 開発者が Salesforce
Platformでフローとトランザクションの 制御ステートメントを実行できるようにした、 強く型付けされたオブジェクト指向のプログラミング言語 https://trailhead.salesforce.com/ja/projects/quickstart-apex/steps/quickstart-apex-1 例 1.1 取引先オブジェクトから洗い替え対象レコードを抽出し、洗い替えを行う処理
20.
20 1. Apexとは?(3) 開発者が Salesforce
Platformでフローとトランザクションの 制御ステートメントを実行できるようにした、 強く型付けされたオブジェクト指向のプログラミング言語 https://trailhead.salesforce.com/ja/projects/quickstart-apex/steps/quickstart-apex-1 技術コスト低めで初心者が学びやすい Ease of Development の頃のJavaを 少しやさしく制限をかけた感じ おまじない含めコード量は最小限 標準カスタマイズとの棲み分けが 根底にあるため、きちんと設計すれば コード量は最小限で済む 例 1.1 取引先オブジェクトから洗い替え対象レコードを抽出し、洗い替えを行う処理
21.
21 1. Apexとは?(4) • 標準カスタマイズで実現できない要件で用いる 要件 開発が 必要 標準で できる 例 •
あるオブジェクトの更新時のトリ ガーで関連オブジェクトにも一括 更新をかける • 定期バッチでAWS S3上のCSV データを取り込みして、サマリと してSalesforceへ保存する • ボタン押下により、外部基幹シス テムのWebサービスからデータを 取得し、Salesforceへ保存する
22.
22 1. Apexとは?(5) Apex
Trigger =Salesforce PlatformでのDBトリガー 古いレコードのロード 新しいレコードで古い値の 上書き システムの入力規則 Before トリガー カスタムの入力規則 レコードのDBへの保存 (未コミット) レコードのリロード After トリガー 割り当てルール 自動応答ルール ワークフロールール プロセス エスカレーションルール 積み上げ集計数式の値更新 データベースのコミット コミット後のロジック Salesforceのレコードに適用される これらのロジック群のうち、 他ロジックで実現できない、 特にクリックベースで担いにくいタ スクを実行する時に用いる https://help.salesforce.com/articleView?id=000005694&language=ja&type=1
23.
23 2. DB操作 –
SOQL(1) SOQLとは アプリケーション層のApexからデータ層へアクセスする際に使用する、SQL類似言語 例 2.1 ステータスが「完了」の商談を、「リードソース」別に集計して、商談金額の合計を表示する
24.
24 2. DB操作 –
SOQL(2) SOQLとは アプリケーション層のApexからデータ層へアクセスする際に使用する、SQL類似言語 例 2.1 ステータスが「完了」の商談を、「リードソース」別に集計して、商談金額の合計を表示する =ORマッパーを兼ねている 点に注目 オブジェクトが返ってくる 商談(Opportunity)
25.
25 2. DB操作 –
SOQL(3) 見込み顧客と取引先は別のオブジェクトだが、 オブジェクトのリレーションを経由してフィールドを取得できる 例 2.2 「見込み顧客」のうち、取引を開始して「取引先」になったレコードから、取引 先の社名と年間売上を取得
26.
26 2. DB操作 –
SOQL(3) 見込み顧客と取引先は別のオブジェクトだが、 オブジェクトのリレーションを経由してフィールドを取得できる 例 2.2 「見込み顧客」のうち、取引を開始して「取引先」になったレコードから、取引 先の社名と年間売上を取得 見込み顧客(Lead) 取引先(Account)
27.
27 2. DB操作 –
SOQL(3) 見込み顧客と取引先は別のオブジェクトだが、 オブジェクトのリレーションを経由してフィールドを取得できる 例 2.2 「見込み顧客」のうち、取引を開始して「取引先」になったレコードから、取引 先の社名と年間売上を取得 見込み顧客(Lead) 取引先(Account) 関係演算のうち、 「選択」と「射影」はそのまま だが、「結合」がSQLと異なる
28.
28 2. DB操作 –
SOQL(4) SQLとSOQLの違い レコードベース オブジェクトベース INSERT, UPDATE, DELETEなどを サポート SELECTのみ (※INSERT,UPDATEなどはDMLを使用) 多くの関係代数演算子をサポート ※和、差、交差、直積、選択、射影、 結合、商など 関係代数演算子はSQLと比べて少ない ※独自のリレーションクエリで代替 https://trailhead.salesforce.com/ja/modules/database_basics_dotnet/units/sql_to_soql 制限をあらかじめ考慮して データモデルの設計・実装を行う SQL SOQL
29.
29 3. Salesforce Lightning Salesforce
Lightning は、現行のSalesforceプラットフォームサービスの総称。 ブランドとして「Lightning」と呼ぶこともある 代表的なLightningサービス群 • Lightning Component フレームワーク(クライアント-サーバフレームワーク) • Lightning Application ビルダー(コンポーネントを組み合わせたUI構築基盤) • Lightning Experience (ユーザエクスペリエンス) 他にも Lightningブランド以前をClassicと呼び、Classicから存在する サービスや機能にLightningを冠していることもある
30.
30 3. Lightning Component
フレームワーク レコード詳細 Todos Action buttons Google Map Social 関連レコード一覧 画面を疎結合なコンポーネント単位に 切り出して構築できるようにした仕組み 画面構築例 コンポーネント 標準を利用したり、 AppExchangeで取り入れたり、 自身のコーディングで開発したり できる Lightning アプリケーションビル ダーでコンポーネントを1つの画面 にまとめることができるが、 もちろんコンポーネント単体での 再利用も可能
31.
31 3. Lightning Component
フレームワーク https://youtu.be/Lm3uB6YkwIE
32.
32 3. Lightning Component
フレームワーク UI構築はいくつかの選択肢がある ①Apex+Visualforce Servlet/JSPチックな世界 ②Visualforce + JavaScript SPAチックな世界 ③Lightningコンポーネント コンポーネント駆動な世界 ④HerokuなどのPaaS+Salesforce →プロプライエタリだが安定 緻密な権限など、堅めの要件向き →既存資産のポータビリティ重視 SFはReact, Vueを載せる箱として →今後の拡張性重視 柔軟性はあるが、安定性が課題 →Webアプリ前提なら無難にMixしたい Fargateなど本命対抗も出てきており SFとの親和性でHerokuを取るかを検討
33.
33 リリース・デプロイモデル https://trailhead.salesforce.com/ja/modules/salesforce-crm-customization-and-extension/units/innovate-faster-with-salesforce-environments-and-salesforce-dx
34.
34 4. テストフレームワーク(1) テストはSalesforceにおける扇の要 本番リリース要件 ・プロダクトコードに対するコードカバレッジが75%以上であること ・すべてのテストコードがPassしていること develop staging
production All Passed & 75% coverage
35.
35 https://s3-ap-northeast-1.amazonaws.com/salesforce-japan-marketing/SWTT2017/Breakout+Session/10-L_TerraSky-FLECT.pdf
36.
36 4. テストフレームワーク(3) プロダクトコード群 テストコード群 ステップ単位でカバーされる ショートサーキットはC1網羅 JUnitライクな記法 ファクトリなどで効率化可能
37.
37 4. テストフレームワーク(4) • CLI経由でテスト実行でき、CIツールで自動化するケースも多い •
Salesforce謹製の「開発者コンソール」ならブラウザベースで • Salesforceの開発においては以下を勘案すること – 標準カスタマイズだけでは駄目で、開発が必要か? – Apexコーディングをともなう開発か? – 今後の保守性を含めてApexコーディングを取るべきか?
38.
38 5. 開発環境・ツール IDE ★開発者コンソール ★Force.com IDE ・VSCode ・Welkin
IDE API tool ★Workbench ★API Explorer CLI ★force.com CLI ★SFDX CLI ライブラリ ・jsForce ・restforce ・simple-salesforce Data tool ★DataLoader • ほとんどSalesforceのブラウザベースで整う • 以下が手元に揃っていれば開発で困ることはない 最初にチームで使う ツールを決めるのがおすすめ
39.
39 5. 開発者コンソール ブラウザベースで開発するためのツール • コーディング •
テスト実行 – ユニット – スイート実行 – カバレッジ計測 • データベース操作 • 即席のコード片実行 • クエリオプティマイザ • デバッグログ出力
40.
40 6. Heroku 2007年創業、2010年よりSalesforceに属するPaaS提供企業 PaaSそのものをHerokuと呼ぶ Heroku Einstein Marketing Cloud フロントに置いてBtoCのエンドユーザ向けに機動力のあるアプリを展開して、 価値の高い顧客データはSalesforceで、というのが王道パターンの1つ エンドユーザ向け
企業内部向け Analytics
41.
41 7. Salesforce Einstein ひとことで言えば、CRM
用の人工知能 (AI) Salesforceが展開する機械学習/AI(人工知能)関連のサービスを総称していくもの http://itpro.nikkeibp.co.jp/atcl/news/16/092002725 企業名 サービス内容 発表時期 BeyondCore データディスカバリー 2016年8月 Coolan データセンター向けデータ分析 2016年7月 EdgeSpring データ分析 2013年6月 Implisit 営業担当者向けBI(Business Intelligence) 2016年5月 MetaMind ディープラーニングベースの画像認識など 2016年4月 MinHash 質問応答システム用の検索エンジン 2015年12月 PredictionIO 機械学習プラットフォーム 2016年2月 RelateIQ 企業と顧客との関係分析 2014年7月 Tempo AIがスケジュールを調整するカレンダー 2015年6月 Salesforceが2013年以降、買収してきたML/AI企業の一覧。
42.
42 7. Salesforce Einstein リードの予測スコアリングや、成立する可能性の高い商談を示唆したり、 https://trailhead.salesforce.com/ja/trails/get_smart_einstein/modules/get_smart_einstein_feat/units/get_smart_einstein_feat_tour
43.
43 7. Salesforce Einstein リコメンドやコンバージョンの分析に使ったり、 https://trailhead.salesforce.com/ja/trails/get_smart_einstein/modules/get_smart_einstein_feat/units/get_smart_einstein_feat_tour
44.
44 7. Salesforce Einstein Langで言語解析したり、Visionで画像解析したり https://trailhead.salesforce.com/ja/trails/get_smart_einstein/modules/get_smart_einstein_feat/units/get_smart_einstein_feat_tour
45.
45 8. Salesforce IoT CRMと
Connected Devices を繋げる接着剤 デバイスからのデータをCRM基盤へ { そのまま | 要約して } 取り込んで、 顧客にとって価値の高い体験を提供する
46.
46 8. Salesforce IoT ・デバイスのデータは膨大かつ単体では情報密度が少ない ・CRMのデータはそれに比べて、レコードあたりの価値が高い ETL Filter 収集
集約 可視化 device
47.
47 どんな技術要素があるの? 1. サーバサイド …
Apex / Trigger 2. データベース … SOQL 3. フロントエンド … LightningComponent / Visualforce 4. テスト … Apexテストフレームワーク 5. 開発環境・ツール … 開発者コンソール / SFDX / force.com CLI 6. Webアプリ開発 … Heroku 7. ML, IoT … Einstein / IoT Cloud
48.
48 Salesforceにおける開発 • 要件って何?標準でできることは? 要件 開発が 必要 標準で できる シンプルで完成されたCRMの 世界に加えて、ML/AI, IoT, Marketing
Automationなど 要件のカバー範囲は拡大している 開発者視点でSalesforceで できることをよく知って、 向き合い方を身につけよう
49.
49 Salesforceってなに? どんな技術要素があるの? エンジニア的にどうなの? なにからやればいいの? すやま
50.
エンジニア的にどうなの? 1. どんなエンジニアになれるのか? 2. 専門性を活かせる? 3.
Salesforceって営業支援ツールだよね? 4. スキルは証明できるの? 5. いいものが作れたんだけど? 6. スキルは陳腐化しない? 50
51.
エンジニア的にどうなの? 1. どんなエンジニアになれるのか? 2. 専門性を活かせる? 3.
Salesforceって営業支援ツールだよね? 4. スキルは証明できるの? 5. いいものが作れたんだけど? 6. スキルは陳腐化しない? 51
52.
1.どんなエンジニアになれるのか? Salesforceエンジニアは大きく2つのカテゴリーに分けられます。 • 社内開発者(Salesforce導入企業・SIer) • 独立系ソフトウェアベンダー(ISV) 52 社内アプリケーションを構築して Salesforce
をカスタマイズ 他の開発者や顧客のために アプリケーションを開発 → →
53.
エンジニア的にどうなの? 1. どんなエンジニアになれるのか? 2. 専門性を活かせる? 3.
Salesforceって営業支援ツールだよね? 4. スキルは証明できるの? 5. いいものが作れたんだけど? 6. スキルは陳腐化しない? 53
54.
インテグレーション開発者 • Salesforceとその他システム(Saas・基幹 システム)との連携はよくあるシナリオ。 WEB・UI開発者 • HTMLとCSSの知識が必要。Lightningコ ンポーネントなどにより、高度なUIを作成する 場合にはApexとJSのスキルも重要。 データベース・ロジック開発者 •
スキーマやデータ検証機能、数式、ビジネス ルール、プロセスの作成方法を理解している 必要。 モバイル開発者 • S1やネイティブのモバイルSDKを使用して ユーザーに新たなアプリケーションを提供。 専門性 2. 専門性を活かせるか? 54
55.
エンジニア的にどうなの? 1. どんなエンジニアになれるのか? 2. 専門性を活かせる? 3.
Salesforceって営業支援ツールだよね? 4. スキルは証明できるの? 5. いいものが作れたんだけど? 6. スキルは陳腐化しない? 55
56.
Application Salesforce Platform 3.Salesforceって営業支援ツールだよね? 56 サービス サポート 営業支援 マーケティ ング コミュニ ティ 分析 カスタム アプリ サード パーティ アプリコマース Salesforce提供 独自
パートナー提供 営業支援だけではなく、様々なアプリケーションが提供されています。
57.
3.Salesforceって営業支援ツールだよね? 57 サービスサポート 営業支援 マーケティング コミュニティ 分析 コマース 様々なアプリケーションは、各サービスによって提供されます。
58.
3.Salesforceって営業支援ツールだよね? 58 それらのサービスの集合体で、Salesforce が構成されています。 58 • CRM •
CTI • Knowledge • Omni-Channel • AI • Mobile App
59.
エンジニア的にどうなの? 1. どんなエンジニアになれるのか? 2. 専門性を活かせる? 3.
Salesforceって営業支援ツールだよね? 4. スキルは証明できるの? 5. いいものが作れたんだけど? 6. スキルは陳腐化しない? 59
60.
4.スキルは証明できるの? 新しいスキルを獲得して、今後のキャリアの糧とする。 60 • Salesforce認定資格やSuperbadgeを取得 適切なスキルがあることをアピールするには、認定資格の取得が効果的で す。また、TrailheadでApexスペシャリストやセキュリティスペシャリス トなどのSuperbadgeを取得することで自分のスキルを証明できます。 • コミュニティやブログで情報発信 フォーラムでの情報提供やブログの投稿、イベントでの講演などを行うと、 業界のエキスパートとして素早く名前を広めることができます。 •
キラーアプリケーションを開発 画期的なビジネスアプリケーションのアイデアをお持ちなら、Salesforce パートナーになることで報酬が飛躍的にアップします。
61.
エンジニア的にどうなの? 1. どんなエンジニアになれるのか? 2. 専門性を活かせる? 3.
Salesforceって営業支援ツールだよね? 4. スキルは証明できるの? 5. いいものが作れたんだけど? 6. スキルは陳腐化しない? 61
62.
5.いいものが作れたんだけど? 開発成果物をSalesforceエコシステムに提供するなら、AppExchange で公開するのが最善の方法です。 62 • AppExchangeって何? 世界最高水準のビジネスアプリのマーケッ トプレイスです。Salesforce用にカスタマ イズされた、ありとあらゆる業種で Salesforceの拡張を実現します。
63.
エンジニア的にどうなの? 1. どんなエンジニアになれるのか? 2. 専門性を活かせる? 3.
Salesforceって営業支援ツールだよね? 4. スキルは証明できるの? 5. いいものが作れたんだけど? 6. スキルは陳腐化しない? 63
64.
6.スキルは陳腐化しない? Salesforceは、年に3回メジャーリリースが行われ、 毎回多くの新機能が追加されます。 64 • 春、夏、冬にリリースされる • Spring’18
で55回目のメジャーリリース • 最新機能をイベントやWEBでチェック!!
65.
65 Salesforceってなに? どんな技術要素があるの? エンジニア的にどうなの? なにからやればいいの? こばやし
66.
なにからやればいいの? 66
67.
自分のスタイルに合わせて 67 もくもく 学ぶ わいわい 学ぶ
68.
もくもく学ぶならTrailhead • Salesforce社が提供している無償のオンライントレーニングサービス 68 https://trailhead.salesforce.com/ja/home
69.
学んで、お題クリアでバッジ をGET! 69 バッジを取ってランクアップ⤴
70.
Trailmix(ルーキー会プレゼンツ) • 今日の内容が学べるおすすめモジュール 70 https://trailhead.salesforce.com/ja/users/00550000007HqDdAAK/trailmixes/start-develop
71.
Developer環境を利用して理解度を深める • Developer環境とは – 無償で取得できるSalesforce組織(開発環境) –
Salesforceが提供している機能をほぼすべて使える – データストレージ、ユーザー数などに制限はある – 研究/調査/開発目的でのみ利用可能 – 取得はこちらから↓ • https://developer.salesforce.com/signup 71
72.
わいわい学ぶならコミュニティへ! 72
73.
オンラインで参加する 73 • Salesforce Developers 各種ドキュメント、リソースやディスカッションフォーラムがあります •
Trailblazer Community 熱心な顧客やパートナー、エキスパートと交流し、 わからないことを質問できます • オンラインイベント/WEBセミナー オンラインで参加できるWEBセミナーも定期的に開催されています
74.
オフラインで参加する 74 • Salesforce 開発者グループ 各地域の開発者グループのイベントへ参加しよう
75.
コミュニティ紹介 Salesforce Developer Group
ルーキー会 75 • Salesforce開発初心者向けコミュニティ • 月一回程度勉強会実施 • 同じ初心者仲間が見つかる! • connpass – https://sfdgr.connpass.com/ • Twitterアカウント – @sfdgrjp
76.
ほかにもこんなオフラインコミュニティが • Tokyo Salesforce
Developer Group • Umekita Force(関西) • Salesforce 女子部 • Northern Force(北海道) • Fukuoka Salesforce Developer Group(福岡) などなど 詳細はこちらから https://www.trailblazers.jp/group 76
77.
次回ルーキー会のお知らせ 77 • 日時 – 2018年2月19日(月)
19:00~ • 場所 – NTTテクノクロス様(品川駅から徒歩約5分) • 内容 – 3~4人のチームでモブプログラミング – お題は「LightningComponent」 • connpass申込ページ – https://sfdgr.connpass.com/event/77900/
78.
次々回ルーキー会のお知らせ 78 • 日時 – 2018年3月20日(火)
19:00~ • 場所 – アクセンチュア様(赤羽橋から徒歩約4分、麻布十番駅から徒歩約6分) • 内容 – 3~4人のチームでモブプログラミング – お題は「Visualforce」 • connpass申込ページ – 準備中
79.
まとめ ⇒クラウド上のアプリでありプラットフォーム ⇒サーバーサイド、フロントエンド、ML、IoT等色々! ⇒技術的にもキャリア的にも旨味がある?! ⇒Trailhead、コミュニティの活用(ルーキー会への参加) 79 1. Salesforceって何? 2. どんな技術要素があるの? 3.
エンジニア的にどうなの? 4. なにからやればいいの?
80.
80 まとめ 皆様のルーキー会への ご参加をお待ちしております!
81.
Thank You! 81
Download Now