Upload
hiroyuki-endoh
View
486
Download
1
Embed Size (px)
Citation preview
空き会議室を増やす!
矢野 貴明株式会社co-meeting COO
動画・説明記事作成
遠藤 裕之株式会社co-meeting CPO
開発(AngularJS, Twilio,
Apex)
木村 篤彦株式会社co-meeting CEO
開発(AngularJS)・デザイン
Force.comPCブラウザ ・ SF1
VisualforcePage
Force.comREST API
ユーザ
AITA
JSforce
Apex Scheduler
ローカルで開発 アプリをデプロイ
ローカルプロキシサーバー
ローカルWebサーバー
Force.comブラウザ
②HTML
AngularJS
HTML
Force.comREST API
⑤API呼び出し
⑦JSON
ユーザ
③ユーザ操作
⑧ユーザ操作
⑨ビジネスロジック
④ビジネスロジック
⑥API呼び出し
• 認証はOAuthで行い、取得したトークンをAPI呼び出しで取得• クロスドメイン、プロキシサーバー経由でREST APIを呼ぶ
ローカルPC
アプリケーション
JSforce
①ページリクエスト
Force.comブラウザ
②HTML
①ページリクエスト
AngularJS
Visualforceページ
Force.com REST API⑤API呼び出し
⑥JSON
ユーザ
③ユーザ操作
⑦ユーザ操作
⑧ビジネスロジック
④ビジネスロジックア
プリケーション
JSforce
認証はVisualforceページの$API.Session_Id
npm版ビルドツールJavaのMavenRubyのRake
豊富なプラグイン
1. CoffeeScript, SCSSのコンパイル、最小化
2. Force.comアプリケーションへの変換
3. Force.com Migration Toolでアップロード
CoffeeScript, SCSSはプレーンなJavascript,CSSに変換
CoffeeScript to Javascript
Force.comメタ情報
AngularJSアプリ JS/CSSライブラリ コンパイル・圧縮したJS/CSS(中間生成物)
コンパイル・結合・圧縮
コンパイル・結合・圧縮
コピー
apexタグの付加・置換
Force.comアプリ形式に変換
Index.html
CoffeeScriptSCSS画像
ZIP圧縮
ZIP圧縮
Force.comメタ情報
AngularJSアプリ JS/CSSライブラリ コンパイル・圧縮したJS/CSS(中間生成物)
コンパイル・結合・圧縮
コンパイル・結合・圧縮
コピー
apexタグの付加・置換
Force.comアプリ形式に変換
Index.html
CoffeeScriptSCSS画像
1. JS, CSSを最小化・結合してZip圧縮
2. AngularJSのViewはapexタグを付加・置
換してVisualforceページとして変換
apex:pageタグの付加
apex:stylesheetタグ、apex:includeScriptタ
グへの置換
OAuth使用から$API.Session_Idを利用する
よう置換
3. タブ/アプリケーションなどのForce.comメタ
情報は事前に用意したものをコピー
Gruntプラグイン grunt-ant-sfdcを利用しコマンドでForce.comにデプロイ
$ grunt deploy
./dist_sfdc
$ git clone [email protected]:comeeting/angularforce.git
AngularForce をクローン
AngularForceは、Yoeman angular-generatorで作成したプロジェクトにForce.com用の設定を追加したプロジェクト
$ bower install
{"dependencies": {"angular-ui-bootstrap-bower": "~0.11.0","jsforce": "git://github.com/jsforce/jsforce.git","font-awesome": "~4.2.0","angular-translate": "~2.2.0","toastr": "~2.0.3"
}, …}
Bower.jsonに追加している主なパッケージ
依存するJSライブラリのインストール
$ npm install
{"devDependencies": {"grunt-angular-templates": "^0.5.7","grunt-ant-sfdc": "^0.2.6","grunt-contrib-coffee": "^0.10.1","grunt-contrib-compass": "^0.7.2”,…
}, …}
package.jsonに追加している主なパッケージ
Gruntプラグインのインストール
$ git submodule init$ git submodule update$ cd jsforce-ajax-proxy$ npm install
jsforce-ajax-proxyを取得
[submodule "jsforce-ajax-proxy"]path = jsforce-ajax-proxyurl = [email protected]:jsforce/jsforce-ajax-proxy.git
.gitmodules
{"user": "admin@<アプリケーション名>.co-meeting.com","pass": "<パスワード>","token": "<メールで送られてきたセキュリティトークン>"
}
sfdc_credential.json
OAuth および デプロイ用のForce.com設定
sfdc_credentail.jsonはgrunt-ant-sfdcのパラメータとして渡される
antdeploy: {options: {
root: 'dist_sfdc/',…
},dist: {
options: require('./sfdc_credential.json'),pkg: { … }
},},
Gruntfile.js
$ grunt serve
$ grunt deploy
圧縮して一つにまとめられるため静的リソースの管理が楽に
クライアントサイドもCIをまわせる
モダンなWeb技術の恩恵を受け易い
開発プロセスが標準化しやすい
Happy Work! Happy Life!
株式会社co-meetingは、法人向けソフトウェアの開発、販売に10年以上携わってきた4人のメンバーによって創業されたITベンチャー企業。
人生において大きな時間を占める「仕事をしている時間」。co-meetingは、世界中の「仕事をしている」人に向けて、仕事時間を充実させ、人生を豊かにするWebサービスを提供していきます。
社名 株式会社co-meeting
住所 〒160-0023東京都新宿区西新宿8-15-15 カトルセゾン304
設立 2011年3月14日
代表 代表取締役CEO 木村 篤彦
資本金 669万円(2014年8月現在)
事業 企業向けソフトウェアサービスの開発・販売システム開発に関するコンサルティングや技術支援
丸ノ内線西新宿駅 徒歩 2分
弊社内で調査したエンタープライズサービスを随時ご紹介するブログ
現在はSalesforce関連を中心に非定期で更新しています。
http://www.enterpriseappsnow.com
週3正社員時短勤務
早朝・深夜勤務OK
プロダクトを一緒に作ってくれる方募集中!
在宅ワークOK
副業OK ゆっくり出勤
柔軟な勤務形態に対応可能です
結婚・子育てなどで惜しまれながらも退社された凄腕エンジニアをぜひご紹介ください!