More Related Content Similar to SharePoint Online 開発の最初の一歩 (20) More from Yoshitaka Seo (20) SharePoint Online 開発の最初の一歩2. 自己紹介
瀬尾 佳隆 (せお よしたか)
MVP for Visual C# (Jan 2009 – Dec 2014)
SharePoint / Office 365 が好き
AKB48G が好き
技術ひろば.net やってます
http://hiroba-tech.net/
ブログやってます
http://yseosoft.wordpress.com/
3. アジェンダ
SharePoint 用アプリとは ~ 開発前の約束事
Host Web ~ 最初の一歩
App Web ~ 柔軟なアプリ構成
Remote App ~ SharePoint の壁を超える
クラウドビジネスアプリ ~ 業務アプリのクラウド化
4. 今日の題材
今日お話しする技術
SharePoint 用アプリ (Apps for SharePoint)
.NET OM
クラウドビジネスアプリ
今日の対象外の技術
サーバーサイド API
JavaScript OM
REST API
Access アプリ / napa / Project Siena
Office 365 API
※本セッションでは Office 365 API は扱いません。
Office 365 API は最後のセッションをお楽しみに。
7. SharePoint 用アプリのメリット
SharePoint 用アプリは “Web アプリ “
従来の Web 開発の技術を活用できる
REST に対応していれば言語やプラットフォームに依存しない
.NET や JavaScript のオブジェクトモデルは開発生産性を
上げてくれる
アプリ自体は SharePoint の外で動作する
Web サービス、DB などサーバーサイドの技術を利用
JavaScript などのクライアントサイドの技術を利用
ただし、いくつかの約束事と定石の理解は必要
このセッションで共有します
8. 参考) Web アプリの DB 接続
DB接続の
準備をして
DB インスタンスに
接続して
アプリが対象とする
テーブルを選択して
各レコードを読んだり
書いたりする
15. Host Web とは
利用者が普段利用する SharePoint サイトのこと
SharePoint 用アプリは別のサイトや別のサーバー上で
動作する
本体へのアクセスのための専用のコンテキストが Host Web
SharePointContextProvider.
CreateUserClientContextForSPHost()
で生成できる
20. App Web とは
各SharePoint 用アプリ専用のサイト
専用サイトのコンテキストが App Web
SharePointContextProvider.
CreateUserClientContextForSPAppWeb()
で生成できる
サイトであることには変わりはないので、アプリ専用の
リストなどを置くことができる
リスト名が重複する可能性がなくなるというメリットもある
万一、アプリに不具合があっても Host Web への
影響は最小限
26. Remote App とは
SharePoint 用アプリの本体
アプリは SharePoint ではない Web サーバー上で動
作する
“napa” で開発したアプリなど、SharePoint 上で動作する
SharePoint 用アプリもある
独立した Web サーバー上で動作しているので、
一般の Web 技術を利用できる
データを SQL Server で管理することで、
パフォーマンス向上や SharePoint の 5000件問題の
回避などのメリットが多い
27. 既存の Web アプリを変換可能
既存の Web アプリもメニュー選択だけで
SharePoint 用アプリに変換できる
もちろん使用によってはコードの追加・変更は必要
特に “認証” 周りは要修正
30. クラウドビジネスアプリとは
LightSwitch ベースの SharePoint 用アプリ
テンプレート
SQL Server、App Web のリスト、Host Web の
リストを自由に組み合わせたアプリ開発が簡単
全てのデータソースを単一のプログラミングモデルで操作
CreateContext, Load, ExecuteQuery が不要
サーバーサイド、クライアントサイドとも Web 標準の
技術で処理をカスタマイズできる
35. まとめ
CreateUserClientContext → Load →
ExecuteQuery が .NET OM の定石
SharePoint 用アプリのサーバー構成は
Host Web, App Web, Remote App
SharePoint をハブとして社内の業務アプリを
連携・統合するのが SharePoint 用アプリの本質
(だと思います)