Salesforce Lightning をやってみてあれこれ

寛 吉田
寛 吉田株式会社テラスカイ - マネージャー at Terrasky
Lightning を
やってみてあれこれ
第6回 appexchange developer meeting
2015/01/19
株式会社テラスカイ
吉田 寛
自己紹介
所属:株式会社テラスカイ
製品開発部 マネージャー
吉田 寛(Hiroshi Yoshita)
@xlouder
2
Agenda
• 会社紹介、SkyVisualEditorの紹介
• Lightning とは
• Lightning 開発する上で知っておきたいこと
• 開発環境
• 外部JavaScriptライブラリの読み込み
• 複数 Lightning コンポーネントで同じJavaScript ライブラリは使える
• Lightning コンポーネント 間での情報通信
• Aura と Lightning
• 最後に
3
会社紹介
• 社名 :株式会社テラスカイ
• 所在地:東京都中央区八重洲
• 特徴
• 豊富なSalesforce導入実績
• 自社製品がある
• 多くの専門技術者
4
Drag &
Drop
Visualforce
Apex
Salesforceの画面を作成することが
できるサービス
「Visualforceページ」、「Apexクラス」
を自動生成するサービス
SkyVisualEditor紹介
5
Lighitning とは
6
Special Thanks
http://qiita.com/advent-calendar/2014/lightning
7
Lightning とは
 Lightning コンポーネントフレームワーク
コンポーネント及びエクステンションは、再利用可能なコンポーネントの開発と既存のSalesforce1アプリケーションの挙動のカスタマイズ、さらにスタンドアロンアプリケーション
の開発を可能にします
 Lightning コンポーネント
アプリケーションの自己完結型の再利用可能なユニットで、UI の再利用可能なセクションを表します
 Lightning App Builder
素早くアプリケーションを組み立てることができる新しいグラフィカルなツールです。UIの部品にはSalesforceや他の開発者が提供するコンポーネントを利用できます
 Lightning Connect (External Data Source )
Force.comアプリケーションと外部リソースを業界標準のOData規格に従って、簡単に統合する事ができるツール
 Lightning Community Builder
コミュニティページをデザインするためのビジュアルUIツール
 Lightning Process Builder
ビジネス・プロセスの自動化を可能にするビジュアルUIツール
 Lightning Schema Builder ( 旧 Schema Builder )
オブジェクトやデータの関連を確認し、データベースデザインを行えるビジュアルUIツール
8
Lightning とは、Force.comの新しいプラットフォームサービス群。
会話の中で使っている名称
 Lightning アプリケーション
 Lightning イベント
■ Lightning コンポーネント
■ Lightning アプリケーション
■ Lightning App Builder
■ Lightning イベント
クライアントサイド
アプリケーション (*.app)
Lightning とは
 Lightning アプリケーション
• パッケージ化して配布が可能。AppExchangeで公開も可能。
• Lightning コンポーネントタブとして登録できないため、Saleforce1上で動作不可。
• Lightning コンポーネントを配置したスタンドアロンアプリケーションが作成可能。
• <script>タグが使用可能。
• 修正がリアルタイムに反映される
• 作成したアプリケーションのプレビューができる
 Lightning コンポーネント
• Lightningコンポーネントフレームワークを使用して開発を行う
• Lightning コンポーネントタブに登録すれば 、Saleforce1上で単体のアプリとして
動作可能。
• Lightning App Builder でカスタムコンポーネントとして使用できる
• <script>タグを “原則” 使用することができない
• 修正がリアルタイムに反映されない
• パッケージ化して配布が可能。AppExchangeで公開も可能。
9
コンポーネント (*cmp, *.js, *.css)
コンポーネント
サーバーサイド
Apex (*.apxc)
イベント
概略図
コンポーネント
Lightning とは
10
 Lightning App Builder
• ユーザが作成したLightning コンポーネントをドラッグ & ドロップで組み合わせて利用することが出来るツール
• 現在 Pilot機能 のため利用することが不可
(Dreamforce’14で一部開放したことがある。)
 Lightning イベント
• イベント駆動型プログラミングが可能
• イベントには2種類ある
• コンポーネントイベント
• コンポーネントの中で発生したイベントのみをハンドリング
できる
• アプリケーションイベント
• アプリケーション内で発生したイベントであればどこから
でもハンドリングできる
Lightning開発をするにあたってのドキュメント
 Lightning コンポーネント開発者ガイド
https://developer.salesforce.com/docs/atlas.ja-jp.lightning.meta/lightning/
 Lightning FAQ
https://developer.salesforce.com/page/JP:Lightning_FAQ
 Salesforce1 Lightning Advent Calendar 2014
http://qiita.com/advent-calendar/2014/lightning
11
Lightning 開発する上で知っておきたいこと
12
開発環境
□ 開発者コンソール
13
□ Sublime Text3 + sublime-lightning
開発環境
「開発者コンソール」,「Sublime Text」使用のメリット/デメリット
開発者コンソール
• 標準搭載されている。直ぐに利用可能。
• 右サイドバーのリンク集がある
• タブ表示されているエディタの移動ができない
Sublime Text + sublime-lightning
• 環境構築が必要
• 非常に軽量
• 独自設定可能、補完機能追加可能
• 他ツール(バージョン管理)との連携が可能
14
✕
<リンク集>
<タブ移動>
開発環境
• 開発時の調査(デバッグ)の方法
• 主にJavaScriptでの開発のため、通常のJavaScript開発と同様にWebブラウザのデベ
ロッパーツールを使用
• $A.log() メソッドを使用してログメッセージをJavaScript コンソールに出力する
• ⇛Winter’15 環境では出力されず…..
15
[参照] Lightning コンポーネント開発者ガイド:デバッグ
https://developer.salesforce.com/docs/atlas.ja-jp.lightning.meta/lightning/debug_intro.htm
外部JavaScriptライブラリの読み込み
• 静的リソースに格納する必要がある
• Visualforceページのように外部から直接読み込みは不可
• $Resourceは使えない
• アプリケーションに読み込み処理を記述
• コンポーネントには “基本的には” 定義できない
• 複数の外部JavaScriptライブラリを読み込む場合は読み込み順を意
識する
• <script>タグの記述順に読み込む保証がされていない
• 「RequireJSライブラリ」もしくは「Loader component」を使用して対応可能
16
<script src="/resource/js/JSLibrary.js"/>
複数 Lightning コンポーネント で同じ
JavaScript ライブラリは使えるか
• コンポーネントで<script>タグを記述することができない
• アプリケーションで定義したものを全コンポーネントで共有…?
 アプリケーション全体の設計ができているスクラッチ開発では問題なし
 現時点では、様々な人が作ったコンポーネントを利用することが出来ない
 Lightining App Builder に期待
17
Lightning コンポーネント 間での情報通信
• イベントを定義することで、コンポーネント間の通信が可能。
18
Aura と Lightning
19
Aura と Lightning
 Auraとは
• デスクトップとモバイルデバイスの両方のための動的なWebアプリケーションを
開発するためのUIフレームワーク
• Lumen -> Aura -> Lightning
• Salesforce Touch、Salesforce1、ページレイアウトはAuraで作られた
• GitHubで公開されているオープンソース
https://github.com/forcedotcom/aura
• Java EE サーバー上で動作可能
20
デモ:Aura Note
Aura と Lightning
 リファレンス
• Aura
http://documentation.auraframework.org/auradocs#reference?descriptor=ui:abstractDataGrid&defType=component
• Lightning
• Lightning Component Cheat Sheet
https://developer.salesforce.com/resource/pdfs/Lightening_Components_Cheatsheet.pdf
• Spring’15 Release Notes
http://releasenotes.docs.salesforce.com/spring15/spring15/release-notes/rn_lightning_components.htm
 UIタグの比較
• Aura :約130
• Lightning (Winter’15) : 15+26 (Spring’15)
• Visualforce (Winter’15): 146
• Lightningに存在しないAuraタグは使えない
• UnknownException が発生。JavaScriptエラーが発生してもエラー内容が表示されない
• Auraのレスポンシブ系、レイアウト系のタグも使えず
• エラーになってしまう
• Lightning App Builderに期待?
21
最後に
22
試してみて気付いたこと
 Lightning には inputField は存在しない。
• inputField の機能 (Validationチェック、reference項目、etc) を実装する必要がある。
• 因みに、Aura にも inputField は存在しない。
 Lightning コンポーネントは レスポンシブなUI ではない。
• Lightning App Builder はレスポンシブUIに対応している (はず) だが、コンポーネントの
集合体 (アプリケーションやコンポーネントのネスト) の中では自動的にレイアウトを変
更する機能はない。
 ステートメントの保持はサーバサイド(Apex)ではなくクライアントサイド
で行う必要がある
 HTML5 <template>タグが使えない
• HTMLタグについてもLightning フレームワークで制御している
23
疑問
 Lightning コンポーネントは内部非公開で配布可能?
• “コンポーネントはカプセル化され、内部は非公開に保たれます” とあるが…
 Salesforceが利用可能JavaScriptライブラリを定義する?
• 現在 Lightning コンポーネントでは外部JavaScriptライブラリを呼び出しできない
• 外部JavaScriptライブラリ(Angular, Polymer, React, Meteor)がincludeされるようになる
 今後のVisualforceはどうなる?
• Visualforceは引き続きサポートされる
• LightningコンポーネントはVisualforceページで利用可能になるもよう
24
25
以上!!
1 of 25

Recommended

Lightingコンポーネントベーシック開発 by
Lightingコンポーネントベーシック開発Lightingコンポーネントベーシック開発
Lightingコンポーネントベーシック開発Akihiro Iwaya
7.8K views82 slides
Lightning Component公開への道 ~「Multi-View Calendar」開発で分かったこと~ by
Lightning Component公開への道  ~「Multi-View Calendar」開発で分かったこと~Lightning Component公開への道  ~「Multi-View Calendar」開発で分かったこと~
Lightning Component公開への道 ~「Multi-View Calendar」開発で分かったこと~寛 吉田
2.4K views21 slides
Sf素人が2週間でアプリケーションビルダーに挑戦してみた by
Sf素人が2週間でアプリケーションビルダーに挑戦してみたSf素人が2週間でアプリケーションビルダーに挑戦してみた
Sf素人が2週間でアプリケーションビルダーに挑戦してみた政雄 金森
20.3K views18 slides
SWTT2017 - Lightningアプリケーション開発現場で 実践しているノウハウ by
SWTT2017 - Lightningアプリケーション開発現場で実践しているノウハウSWTT2017 - Lightningアプリケーション開発現場で実践しているノウハウ
SWTT2017 - Lightningアプリケーション開発現場で 実践しているノウハウ寛 吉田
680 views18 slides
VisualforceへのSalesforce Lightning Design System (SLDS) 適用はどうします? by
VisualforceへのSalesforce Lightning Design System (SLDS) 適用はどうします?VisualforceへのSalesforce Lightning Design System (SLDS) 適用はどうします?
VisualforceへのSalesforce Lightning Design System (SLDS) 適用はどうします?寛 吉田
2.6K views20 slides
Salesforce dug [tokyo] meetup 2016 新年会 by
Salesforce dug [tokyo] meetup 2016 新年会Salesforce dug [tokyo] meetup 2016 新年会
Salesforce dug [tokyo] meetup 2016 新年会Akira Kuratani
994 views19 slides

More Related Content

What's hot

Force.com Canvas アプリケーション by
Force.com Canvas アプリケーションForce.com Canvas アプリケーション
Force.com Canvas アプリケーションSalesforce Developers Japan
3.6K views19 slides
絶対使いたくなるAppexchangeアプリとそのアーキテクチャー by
絶対使いたくなるAppexchangeアプリとそのアーキテクチャー絶対使いたくなるAppexchangeアプリとそのアーキテクチャー
絶対使いたくなるAppexchangeアプリとそのアーキテクチャーKazuki Nakajima
2K views11 slides
キャンバス個人用アプリ 速習ガイド by
キャンバス個人用アプリ 速習ガイドキャンバス個人用アプリ 速習ガイド
キャンバス個人用アプリ 速習ガイドKazuki Nakajima
30.3K views12 slides
Lightning componentとlightning design system by
Lightning componentとlightning design systemLightning componentとlightning design system
Lightning componentとlightning design systemNoriko Iwai
1.1K views18 slides
Salesforce DUG meetup #10 MiniHack完全制覇の旅 by
Salesforce DUG meetup #10 MiniHack完全制覇の旅Salesforce DUG meetup #10 MiniHack完全制覇の旅
Salesforce DUG meetup #10 MiniHack完全制覇の旅Akira Kuratani
857 views12 slides
今さらきけない環境ハブ by
今さらきけない環境ハブ今さらきけない環境ハブ
今さらきけない環境ハブKazuki Nakajima
30.5K views8 slides

What's hot(20)

絶対使いたくなるAppexchangeアプリとそのアーキテクチャー by Kazuki Nakajima
絶対使いたくなるAppexchangeアプリとそのアーキテクチャー絶対使いたくなるAppexchangeアプリとそのアーキテクチャー
絶対使いたくなるAppexchangeアプリとそのアーキテクチャー
Kazuki Nakajima2K views
キャンバス個人用アプリ 速習ガイド by Kazuki Nakajima
キャンバス個人用アプリ 速習ガイドキャンバス個人用アプリ 速習ガイド
キャンバス個人用アプリ 速習ガイド
Kazuki Nakajima30.3K views
Lightning componentとlightning design system by Noriko Iwai
Lightning componentとlightning design systemLightning componentとlightning design system
Lightning componentとlightning design system
Noriko Iwai1.1K views
Salesforce DUG meetup #10 MiniHack完全制覇の旅 by Akira Kuratani
Salesforce DUG meetup #10 MiniHack完全制覇の旅Salesforce DUG meetup #10 MiniHack完全制覇の旅
Salesforce DUG meetup #10 MiniHack完全制覇の旅
Akira Kuratani857 views
今さらきけない環境ハブ by Kazuki Nakajima
今さらきけない環境ハブ今さらきけない環境ハブ
今さらきけない環境ハブ
Kazuki Nakajima30.5K views
Cordova×業務システム:失敗しないモバイル開発の秘訣 by アシアル株式会社
Cordova×業務システム:失敗しないモバイル開発の秘訣Cordova×業務システム:失敗しないモバイル開発の秘訣
Cordova×業務システム:失敗しないモバイル開発の秘訣
19-D-5 Silverlightを利用したビジネスアプリケーション作成のポイント by nishizaki
19-D-5 Silverlightを利用したビジネスアプリケーション作成のポイント19-D-5 Silverlightを利用したビジネスアプリケーション作成のポイント
19-D-5 Silverlightを利用したビジネスアプリケーション作成のポイント
nishizaki658 views
CROSS 2015 モバイル開発環境セッション by Masahiro Tanaka
CROSS 2015 モバイル開発環境セッションCROSS 2015 モバイル開発環境セッション
CROSS 2015 モバイル開発環境セッション
Masahiro Tanaka14.7K views
Ecsとlambdaのバッチ処理 by 政雄 金森
Ecsとlambdaのバッチ処理Ecsとlambdaのバッチ処理
Ecsとlambdaのバッチ処理
政雄 金森1.9K views
Sl study 20150804-soft-layer-apibasic-shibata by Naoki Shibata
Sl study 20150804-soft-layer-apibasic-shibataSl study 20150804-soft-layer-apibasic-shibata
Sl study 20150804-soft-layer-apibasic-shibata
Naoki Shibata1.2K views
2011年マイクロソフト テクノロジー振り返り~開発編~ by Takeshi Shinmura
2011年マイクロソフト テクノロジー振り返り~開発編~2011年マイクロソフト テクノロジー振り返り~開発編~
2011年マイクロソフト テクノロジー振り返り~開発編~
Takeshi Shinmura1.2K views
Spring'15 ISV様向け新機能紹介 by Kazuki Nakajima
Spring'15 ISV様向け新機能紹介Spring'15 ISV様向け新機能紹介
Spring'15 ISV様向け新機能紹介
Kazuki Nakajima1.4K views
クロスプラットフォーム モバイルアプリ開発ツール Xamarin 概要 by Yoshito Tabuchi
クロスプラットフォーム モバイルアプリ開発ツール Xamarin 概要クロスプラットフォーム モバイルアプリ開発ツール Xamarin 概要
クロスプラットフォーム モバイルアプリ開発ツール Xamarin 概要
Yoshito Tabuchi2.3K views
HTML5ハイブリッドアプリ開発のベストプラクティス by アシアル株式会社
HTML5ハイブリッドアプリ開発のベストプラクティスHTML5ハイブリッドアプリ開発のベストプラクティス
HTML5ハイブリッドアプリ開発のベストプラクティス
【18-C-5】C# で iOS/Androidアプリ開発 - Visual Studio 2015 + Xamarin + MVVMCross - by ShinichiAoyagi
【18-C-5】C# で iOS/Androidアプリ開発 - Visual Studio 2015 + Xamarin + MVVMCross -【18-C-5】C# で iOS/Androidアプリ開発 - Visual Studio 2015 + Xamarin + MVVMCross -
【18-C-5】C# で iOS/Androidアプリ開発 - Visual Studio 2015 + Xamarin + MVVMCross -
ShinichiAoyagi3.9K views
コックピットアプリケーション by Daisuke Sugai
コックピットアプリケーションコックピットアプリケーション
コックピットアプリケーション
Daisuke Sugai978 views
Visual Studio 2019 GA ! ~ 最新情報 & これからの開発スタイル by Akira Inoue
Visual Studio 2019 GA ! ~ 最新情報 & これからの開発スタイルVisual Studio 2019 GA ! ~ 最新情報 & これからの開発スタイル
Visual Studio 2019 GA ! ~ 最新情報 & これからの開発スタイル
Akira Inoue3.9K views
SharePoint 開発入門 by Hiroaki Oikawa
SharePoint 開発入門SharePoint 開発入門
SharePoint 開発入門
Hiroaki Oikawa10.7K views
エンタープライズ要件に対応する高品質なCordovaアプリ開発のポイント by アシアル株式会社
エンタープライズ要件に対応する高品質なCordovaアプリ開発のポイントエンタープライズ要件に対応する高品質なCordovaアプリ開発のポイント
エンタープライズ要件に対応する高品質なCordovaアプリ開発のポイント

Similar to Salesforce Lightning をやってみてあれこれ

Intalio japan special cloud workshop by
Intalio japan special cloud workshopIntalio japan special cloud workshop
Intalio japan special cloud workshopDaisuke Sugai
725 views46 slides
技術選択とアーキテクトの役割 by
技術選択とアーキテクトの役割技術選択とアーキテクトの役割
技術選択とアーキテクトの役割Toru Yamaguchi
42K views90 slides
クロスプラットフォーム開発入門 by
クロスプラットフォーム開発入門クロスプラットフォーム開発入門
クロスプラットフォーム開発入門minazou67
16.7K views50 slides
DLR言語によるSilverlightプログラミング by
DLR言語によるSilverlightプログラミングDLR言語によるSilverlightプログラミング
DLR言語によるSilverlightプログラミングterurou
1.1K views63 slides
『これからの.NETアプリケーション開発』セミナー .NET用アプリケーション フレームワーク Open 棟梁 概説 by
『これからの.NETアプリケーション開発』セミナー .NET用アプリケーション フレームワーク Open 棟梁 概説『これからの.NETアプリケーション開発』セミナー .NET用アプリケーション フレームワーク Open 棟梁 概説
『これからの.NETアプリケーション開発』セミナー .NET用アプリケーション フレームワーク Open 棟梁 概説Daisuke Nishino
4.3K views44 slides
サーバーレスの今とこれから by
サーバーレスの今とこれからサーバーレスの今とこれから
サーバーレスの今とこれから真吾 吉田
35.2K views49 slides

Similar to Salesforce Lightning をやってみてあれこれ(20)

Intalio japan special cloud workshop by Daisuke Sugai
Intalio japan special cloud workshopIntalio japan special cloud workshop
Intalio japan special cloud workshop
Daisuke Sugai725 views
技術選択とアーキテクトの役割 by Toru Yamaguchi
技術選択とアーキテクトの役割技術選択とアーキテクトの役割
技術選択とアーキテクトの役割
Toru Yamaguchi42K views
クロスプラットフォーム開発入門 by minazou67
クロスプラットフォーム開発入門クロスプラットフォーム開発入門
クロスプラットフォーム開発入門
minazou6716.7K views
DLR言語によるSilverlightプログラミング by terurou
DLR言語によるSilverlightプログラミングDLR言語によるSilverlightプログラミング
DLR言語によるSilverlightプログラミング
terurou1.1K views
『これからの.NETアプリケーション開発』セミナー .NET用アプリケーション フレームワーク Open 棟梁 概説 by Daisuke Nishino
『これからの.NETアプリケーション開発』セミナー .NET用アプリケーション フレームワーク Open 棟梁 概説『これからの.NETアプリケーション開発』セミナー .NET用アプリケーション フレームワーク Open 棟梁 概説
『これからの.NETアプリケーション開発』セミナー .NET用アプリケーション フレームワーク Open 棟梁 概説
Daisuke Nishino4.3K views
サーバーレスの今とこれから by 真吾 吉田
サーバーレスの今とこれからサーバーレスの今とこれから
サーバーレスの今とこれから
真吾 吉田35.2K views
OSC2018 hiroshima session slide by OSSC by Daisuke Nishino
OSC2018 hiroshima session slide by OSSCOSC2018 hiroshima session slide by OSSC
OSC2018 hiroshima session slide by OSSC
Daisuke Nishino49.3K views
ソフトバンクにおける Java による クラウドネイティブの実現 by Shigeru Tatsuta
ソフトバンクにおける Java による クラウドネイティブの実現ソフトバンクにおける Java による クラウドネイティブの実現
ソフトバンクにおける Java による クラウドネイティブの実現
Shigeru Tatsuta799 views
Visual Studio 2012 と ASP.NET に見る、最新 Web 開発の魅力 by Akira Inoue
Visual Studio 2012 と ASP.NET に見る、最新 Web 開発の魅力Visual Studio 2012 と ASP.NET に見る、最新 Web 開発の魅力
Visual Studio 2012 と ASP.NET に見る、最新 Web 開発の魅力
Akira Inoue1.6K views
【BS13】チーム開発がこんなにも快適に!コーディングもデバッグも GitHub 上で。 GitHub Codespaces で叶えられるシームレスな開発 by 日本マイクロソフト株式会社
【BS13】チーム開発がこんなにも快適に!コーディングもデバッグも GitHub 上で。 GitHub Codespaces で叶えられるシームレスな開発【BS13】チーム開発がこんなにも快適に!コーディングもデバッグも GitHub 上で。 GitHub Codespaces で叶えられるシームレスな開発
【BS13】チーム開発がこんなにも快適に!コーディングもデバッグも GitHub 上で。 GitHub Codespaces で叶えられるシームレスな開発
AITCシニア技術者勉強会 「今さら聞けないWebサイト開発」 vol2 by 近藤 繁延
AITCシニア技術者勉強会 「今さら聞けないWebサイト開発」 vol2AITCシニア技術者勉強会 「今さら聞けないWebサイト開発」 vol2
AITCシニア技術者勉強会 「今さら聞けないWebサイト開発」 vol2
近藤 繁延335 views
A 1-1 tfs on azure で始めるイマドキのソフトウェア開発 by GoAzure
A 1-1 tfs on azure で始めるイマドキのソフトウェア開発A 1-1 tfs on azure で始めるイマドキのソフトウェア開発
A 1-1 tfs on azure で始めるイマドキのソフトウェア開発
GoAzure1.3K views
デブサミ2013【15-D-4】Opsから挑むDevOps by Developers Summit
デブサミ2013【15-D-4】Opsから挑むDevOpsデブサミ2013【15-D-4】Opsから挑むDevOps
デブサミ2013【15-D-4】Opsから挑むDevOps
Developers Summit2.8K views
Scalable Generator: Using Scala in SIer Business (ScalaMatsuri) by TIS Inc.
Scalable Generator: Using Scala in SIer Business (ScalaMatsuri)Scalable Generator: Using Scala in SIer Business (ScalaMatsuri)
Scalable Generator: Using Scala in SIer Business (ScalaMatsuri)
TIS Inc.4.8K views
はじめての Azure 開発 by Yoshitaka Seo
はじめての Azure 開発はじめての Azure 開発
はじめての Azure 開発
Yoshitaka Seo1.3K views
OSSを利用したプロジェクト管理 by Tadashi Miyazato
OSSを利用したプロジェクト管理OSSを利用したプロジェクト管理
OSSを利用したプロジェクト管理
Tadashi Miyazato556 views
2021/03/19 パブリッククラウドを活かす運用プロセス自動化 by Issei Hiraoka
2021/03/19 パブリッククラウドを活かす運用プロセス自動化2021/03/19 パブリッククラウドを活かす運用プロセス自動化
2021/03/19 パブリッククラウドを活かす運用プロセス自動化
Issei Hiraoka360 views
アプリ開発&チーム管理で 役立った拡張機能 by Masaki Suzuki
アプリ開発&チーム管理で役立った拡張機能アプリ開発&チーム管理で役立った拡張機能
アプリ開発&チーム管理で 役立った拡張機能
Masaki Suzuki2.9K views

More from 寛 吉田

[TerraSky Day 2016] エンジニアのためになる!実用的なSalesforceページデザインについて考えてみよう by
[TerraSky Day 2016] エンジニアのためになる!実用的なSalesforceページデザインについて考えてみよう[TerraSky Day 2016] エンジニアのためになる!実用的なSalesforceページデザインについて考えてみよう
[TerraSky Day 2016] エンジニアのためになる!実用的なSalesforceページデザインについて考えてみよう寛 吉田
734 views32 slides
聞いてスッキリ!Lightningの理解ポイント by
聞いてスッキリ!Lightningの理解ポイント聞いてスッキリ!Lightningの理解ポイント
聞いてスッキリ!Lightningの理解ポイント寛 吉田
1.7K views22 slides
Do you known issues ? - Practical use of known issue - by
Do you known issues ? - Practical use of known issue -Do you known issues ? - Practical use of known issue -
Do you known issues ? - Practical use of known issue -寛 吉田
1.9K views18 slides
Clickjack protection for salesforce by
Clickjack protection for salesforceClickjack protection for salesforce
Clickjack protection for salesforce寛 吉田
1.1K views13 slides
The mash-up choice by
The mash-up choiceThe mash-up choice
The mash-up choice寛 吉田
1.3K views17 slides
Performance of visualforce lt version-20121031 by
Performance of visualforce lt version-20121031Performance of visualforce lt version-20121031
Performance of visualforce lt version-20121031寛 吉田
785 views15 slides

More from 寛 吉田(9)

[TerraSky Day 2016] エンジニアのためになる!実用的なSalesforceページデザインについて考えてみよう by 寛 吉田
[TerraSky Day 2016] エンジニアのためになる!実用的なSalesforceページデザインについて考えてみよう[TerraSky Day 2016] エンジニアのためになる!実用的なSalesforceページデザインについて考えてみよう
[TerraSky Day 2016] エンジニアのためになる!実用的なSalesforceページデザインについて考えてみよう
寛 吉田734 views
聞いてスッキリ!Lightningの理解ポイント by 寛 吉田
聞いてスッキリ!Lightningの理解ポイント聞いてスッキリ!Lightningの理解ポイント
聞いてスッキリ!Lightningの理解ポイント
寛 吉田1.7K views
Do you known issues ? - Practical use of known issue - by 寛 吉田
Do you known issues ? - Practical use of known issue -Do you known issues ? - Practical use of known issue -
Do you known issues ? - Practical use of known issue -
寛 吉田1.9K views
Clickjack protection for salesforce by 寛 吉田
Clickjack protection for salesforceClickjack protection for salesforce
Clickjack protection for salesforce
寛 吉田1.1K views
The mash-up choice by 寛 吉田
The mash-up choiceThe mash-up choice
The mash-up choice
寛 吉田1.3K views
Performance of visualforce lt version-20121031 by 寛 吉田
Performance of visualforce lt version-20121031Performance of visualforce lt version-20121031
Performance of visualforce lt version-20121031
寛 吉田785 views
Performance of Visualforce by 寛 吉田
Performance of VisualforcePerformance of Visualforce
Performance of Visualforce
寛 吉田951 views
SkyVisualEditorで使ってるコードちょっとだけ教えます-PDFでの文字折返し- by 寛 吉田
SkyVisualEditorで使ってるコードちょっとだけ教えます-PDFでの文字折返し-SkyVisualEditorで使ってるコードちょっとだけ教えます-PDFでの文字折返し-
SkyVisualEditorで使ってるコードちょっとだけ教えます-PDFでの文字折返し-
寛 吉田4.2K views
AWS to Salesforce 活用例 ~SSL Termination試してみました~ by 寛 吉田
AWS to Salesforce 活用例 ~SSL Termination試してみました~AWS to Salesforce 活用例 ~SSL Termination試してみました~
AWS to Salesforce 活用例 ~SSL Termination試してみました~
寛 吉田2.4K views

Recently uploaded

Web3 Career_クレデン資料 .pdf by
Web3 Career_クレデン資料 .pdfWeb3 Career_クレデン資料 .pdf
Web3 Career_クレデン資料 .pdfnanamatsuo
14 views9 slides
JJUG CCC.pptx by
JJUG CCC.pptxJJUG CCC.pptx
JJUG CCC.pptxKanta Sasaki
6 views14 slides
速習! PostgreSQL専用HAソフトウェア: Patroni(PostgreSQL Conference Japan 2023 発表資料) by
速習! PostgreSQL専用HAソフトウェア: Patroni(PostgreSQL Conference Japan 2023 発表資料)速習! PostgreSQL専用HAソフトウェア: Patroni(PostgreSQL Conference Japan 2023 発表資料)
速習! PostgreSQL専用HAソフトウェア: Patroni(PostgreSQL Conference Japan 2023 発表資料)NTT DATA Technology & Innovation
17 views38 slides
The Things Stack説明資料 by The Things Industries by
The Things Stack説明資料 by The Things IndustriesThe Things Stack説明資料 by The Things Industries
The Things Stack説明資料 by The Things IndustriesCRI Japan, Inc.
50 views29 slides
さくらのひやおろし2023 by
さくらのひやおろし2023さくらのひやおろし2023
さくらのひやおろし2023法林浩之
94 views58 slides

Recently uploaded(11)

Web3 Career_クレデン資料 .pdf by nanamatsuo
Web3 Career_クレデン資料 .pdfWeb3 Career_クレデン資料 .pdf
Web3 Career_クレデン資料 .pdf
nanamatsuo14 views
速習! PostgreSQL専用HAソフトウェア: Patroni(PostgreSQL Conference Japan 2023 発表資料) by NTT DATA Technology & Innovation
速習! PostgreSQL専用HAソフトウェア: Patroni(PostgreSQL Conference Japan 2023 発表資料)速習! PostgreSQL専用HAソフトウェア: Patroni(PostgreSQL Conference Japan 2023 発表資料)
速習! PostgreSQL専用HAソフトウェア: Patroni(PostgreSQL Conference Japan 2023 発表資料)
The Things Stack説明資料 by The Things Industries by CRI Japan, Inc.
The Things Stack説明資料 by The Things IndustriesThe Things Stack説明資料 by The Things Industries
The Things Stack説明資料 by The Things Industries
CRI Japan, Inc.50 views
さくらのひやおろし2023 by 法林浩之
さくらのひやおろし2023さくらのひやおろし2023
さくらのひやおろし2023
法林浩之94 views
SSH応用編_20231129.pdf by icebreaker4
SSH応用編_20231129.pdfSSH応用編_20231129.pdf
SSH応用編_20231129.pdf
icebreaker4184 views
SNMPセキュリティ超入門 by mkoda
SNMPセキュリティ超入門SNMPセキュリティ超入門
SNMPセキュリティ超入門
mkoda188 views
今、改めて考えるPostgreSQLプラットフォーム - マルチクラウドとポータビリティ -(PostgreSQL Conference Japan 20... by NTT DATA Technology & Innovation
今、改めて考えるPostgreSQLプラットフォーム - マルチクラウドとポータビリティ -(PostgreSQL Conference Japan 20...今、改めて考えるPostgreSQLプラットフォーム - マルチクラウドとポータビリティ -(PostgreSQL Conference Japan 20...
今、改めて考えるPostgreSQLプラットフォーム - マルチクラウドとポータビリティ -(PostgreSQL Conference Japan 20...
Windows 11 information that can be used at the development site by Atomu Hidaka
Windows 11 information that can be used at the development siteWindows 11 information that can be used at the development site
Windows 11 information that can be used at the development site
Atomu Hidaka76 views

Salesforce Lightning をやってみてあれこれ

  • 1. Lightning を やってみてあれこれ 第6回 appexchange developer meeting 2015/01/19 株式会社テラスカイ 吉田 寛
  • 3. Agenda • 会社紹介、SkyVisualEditorの紹介 • Lightning とは • Lightning 開発する上で知っておきたいこと • 開発環境 • 外部JavaScriptライブラリの読み込み • 複数 Lightning コンポーネントで同じJavaScript ライブラリは使える • Lightning コンポーネント 間での情報通信 • Aura と Lightning • 最後に 3
  • 4. 会社紹介 • 社名 :株式会社テラスカイ • 所在地:東京都中央区八重洲 • 特徴 • 豊富なSalesforce導入実績 • 自社製品がある • 多くの専門技術者 4
  • 8. Lightning とは  Lightning コンポーネントフレームワーク コンポーネント及びエクステンションは、再利用可能なコンポーネントの開発と既存のSalesforce1アプリケーションの挙動のカスタマイズ、さらにスタンドアロンアプリケーション の開発を可能にします  Lightning コンポーネント アプリケーションの自己完結型の再利用可能なユニットで、UI の再利用可能なセクションを表します  Lightning App Builder 素早くアプリケーションを組み立てることができる新しいグラフィカルなツールです。UIの部品にはSalesforceや他の開発者が提供するコンポーネントを利用できます  Lightning Connect (External Data Source ) Force.comアプリケーションと外部リソースを業界標準のOData規格に従って、簡単に統合する事ができるツール  Lightning Community Builder コミュニティページをデザインするためのビジュアルUIツール  Lightning Process Builder ビジネス・プロセスの自動化を可能にするビジュアルUIツール  Lightning Schema Builder ( 旧 Schema Builder ) オブジェクトやデータの関連を確認し、データベースデザインを行えるビジュアルUIツール 8 Lightning とは、Force.comの新しいプラットフォームサービス群。 会話の中で使っている名称  Lightning アプリケーション  Lightning イベント ■ Lightning コンポーネント ■ Lightning アプリケーション ■ Lightning App Builder ■ Lightning イベント
  • 9. クライアントサイド アプリケーション (*.app) Lightning とは  Lightning アプリケーション • パッケージ化して配布が可能。AppExchangeで公開も可能。 • Lightning コンポーネントタブとして登録できないため、Saleforce1上で動作不可。 • Lightning コンポーネントを配置したスタンドアロンアプリケーションが作成可能。 • <script>タグが使用可能。 • 修正がリアルタイムに反映される • 作成したアプリケーションのプレビューができる  Lightning コンポーネント • Lightningコンポーネントフレームワークを使用して開発を行う • Lightning コンポーネントタブに登録すれば 、Saleforce1上で単体のアプリとして 動作可能。 • Lightning App Builder でカスタムコンポーネントとして使用できる • <script>タグを “原則” 使用することができない • 修正がリアルタイムに反映されない • パッケージ化して配布が可能。AppExchangeで公開も可能。 9 コンポーネント (*cmp, *.js, *.css) コンポーネント サーバーサイド Apex (*.apxc) イベント 概略図 コンポーネント
  • 10. Lightning とは 10  Lightning App Builder • ユーザが作成したLightning コンポーネントをドラッグ & ドロップで組み合わせて利用することが出来るツール • 現在 Pilot機能 のため利用することが不可 (Dreamforce’14で一部開放したことがある。)  Lightning イベント • イベント駆動型プログラミングが可能 • イベントには2種類ある • コンポーネントイベント • コンポーネントの中で発生したイベントのみをハンドリング できる • アプリケーションイベント • アプリケーション内で発生したイベントであればどこから でもハンドリングできる
  • 11. Lightning開発をするにあたってのドキュメント  Lightning コンポーネント開発者ガイド https://developer.salesforce.com/docs/atlas.ja-jp.lightning.meta/lightning/  Lightning FAQ https://developer.salesforce.com/page/JP:Lightning_FAQ  Salesforce1 Lightning Advent Calendar 2014 http://qiita.com/advent-calendar/2014/lightning 11
  • 14. 開発環境 「開発者コンソール」,「Sublime Text」使用のメリット/デメリット 開発者コンソール • 標準搭載されている。直ぐに利用可能。 • 右サイドバーのリンク集がある • タブ表示されているエディタの移動ができない Sublime Text + sublime-lightning • 環境構築が必要 • 非常に軽量 • 独自設定可能、補完機能追加可能 • 他ツール(バージョン管理)との連携が可能 14 ✕ <リンク集> <タブ移動>
  • 15. 開発環境 • 開発時の調査(デバッグ)の方法 • 主にJavaScriptでの開発のため、通常のJavaScript開発と同様にWebブラウザのデベ ロッパーツールを使用 • $A.log() メソッドを使用してログメッセージをJavaScript コンソールに出力する • ⇛Winter’15 環境では出力されず….. 15 [参照] Lightning コンポーネント開発者ガイド:デバッグ https://developer.salesforce.com/docs/atlas.ja-jp.lightning.meta/lightning/debug_intro.htm
  • 16. 外部JavaScriptライブラリの読み込み • 静的リソースに格納する必要がある • Visualforceページのように外部から直接読み込みは不可 • $Resourceは使えない • アプリケーションに読み込み処理を記述 • コンポーネントには “基本的には” 定義できない • 複数の外部JavaScriptライブラリを読み込む場合は読み込み順を意 識する • <script>タグの記述順に読み込む保証がされていない • 「RequireJSライブラリ」もしくは「Loader component」を使用して対応可能 16 <script src="/resource/js/JSLibrary.js"/>
  • 17. 複数 Lightning コンポーネント で同じ JavaScript ライブラリは使えるか • コンポーネントで<script>タグを記述することができない • アプリケーションで定義したものを全コンポーネントで共有…?  アプリケーション全体の設計ができているスクラッチ開発では問題なし  現時点では、様々な人が作ったコンポーネントを利用することが出来ない  Lightining App Builder に期待 17
  • 18. Lightning コンポーネント 間での情報通信 • イベントを定義することで、コンポーネント間の通信が可能。 18
  • 20. Aura と Lightning  Auraとは • デスクトップとモバイルデバイスの両方のための動的なWebアプリケーションを 開発するためのUIフレームワーク • Lumen -> Aura -> Lightning • Salesforce Touch、Salesforce1、ページレイアウトはAuraで作られた • GitHubで公開されているオープンソース https://github.com/forcedotcom/aura • Java EE サーバー上で動作可能 20 デモ:Aura Note
  • 21. Aura と Lightning  リファレンス • Aura http://documentation.auraframework.org/auradocs#reference?descriptor=ui:abstractDataGrid&defType=component • Lightning • Lightning Component Cheat Sheet https://developer.salesforce.com/resource/pdfs/Lightening_Components_Cheatsheet.pdf • Spring’15 Release Notes http://releasenotes.docs.salesforce.com/spring15/spring15/release-notes/rn_lightning_components.htm  UIタグの比較 • Aura :約130 • Lightning (Winter’15) : 15+26 (Spring’15) • Visualforce (Winter’15): 146 • Lightningに存在しないAuraタグは使えない • UnknownException が発生。JavaScriptエラーが発生してもエラー内容が表示されない • Auraのレスポンシブ系、レイアウト系のタグも使えず • エラーになってしまう • Lightning App Builderに期待? 21
  • 23. 試してみて気付いたこと  Lightning には inputField は存在しない。 • inputField の機能 (Validationチェック、reference項目、etc) を実装する必要がある。 • 因みに、Aura にも inputField は存在しない。  Lightning コンポーネントは レスポンシブなUI ではない。 • Lightning App Builder はレスポンシブUIに対応している (はず) だが、コンポーネントの 集合体 (アプリケーションやコンポーネントのネスト) の中では自動的にレイアウトを変 更する機能はない。  ステートメントの保持はサーバサイド(Apex)ではなくクライアントサイド で行う必要がある  HTML5 <template>タグが使えない • HTMLタグについてもLightning フレームワークで制御している 23
  • 24. 疑問  Lightning コンポーネントは内部非公開で配布可能? • “コンポーネントはカプセル化され、内部は非公開に保たれます” とあるが…  Salesforceが利用可能JavaScriptライブラリを定義する? • 現在 Lightning コンポーネントでは外部JavaScriptライブラリを呼び出しできない • 外部JavaScriptライブラリ(Angular, Polymer, React, Meteor)がincludeされるようになる  今後のVisualforceはどうなる? • Visualforceは引き続きサポートされる • LightningコンポーネントはVisualforceページで利用可能になるもよう 24