Your SlideShare is downloading. ×
0
初めてでも大丈夫!
SharePoint
開発の第一歩
瀬尾佳隆 (@seosoft)
Microsoft MVP for Visual C#
技術ひろば.net
自己紹介
瀬尾 佳隆 (せお よしたか)
MVP for Visual C# (Jan 2009 – Dec 2014)
SharePoint / Office 365 が好き
 AKB48G が好き
技術ひろば.net やってます
...
アジェンダ
SharePoint 開発の基礎知識
プログラミングモデル
コードの基本的な流れ/コードの定石
SharePoint 用アプリ開発ツール
Access
“Napa”
ASP.NET
LightSwitch
“Pro...
SharePoint 開発の基礎知識
SharePoint 開発は決して難しくない
以前の SharePoint 開発は
独特の API の理解がポイントだった
2013 で新しいプログラミングモデルが
追加された
一般的な Web や .NET のスキルが
使える
Sha...
SOM (Server
Object Model)
COM (Client
Object Model)
クラウド指向
オブジェクト
モデル
SharePoint のプログラミングモデル
2013 からの
新しいモデル
クラウド指向のプログラミングモデル
SharePoint 用アプリは本体の SharePoint サイト
とは別の場所に配置される
SharePoint ホスト型・・・専用の SharePoint サイト
クラウドホスト型・・・外部の W...
SharePoint ホスト型の構成
App Web
Host Web
利用者の
SharePoint 環境
アプリ専用の
SharePoint 環境
RequestExecutor
でアクセス
アプリを専用の SharePoint サイトに配...
クラウドホスト型の構成
App Web
Host Webアプリ本体
CreateUserClientContextForSPHost
でアクセス
Remote App
CreateUserClientContextForSPAppWeb
でアク...
利用できる API
.NET OM, JavaScript OM, REST API が
用意されている
※OM = Object Model
API SharePoint ホスト型 クラウドホスト型
.NET OM × ○
JavaScri...
コードの基本的な流れ
1. ClientContext を生成する
• SharePoint サーバーにアクセスするためのコンテキスト
2. 欲しい Web、List を指定する
• Web = 一般的な Web アプリケーションに相当する
•...
コードの定石
JavaScript OM .NET OM
ClientContext
を生成
ClientContext
GetSharePoint-
Context
欲しい情報を指定
get_web, get_list
など
Web, Lis...
コード例 (JavaScript OM)
ClientContext を
取得
get_xxx で欲しい
情報を指定
load でバッチ
コマンドに追加
executeQuery
で要求を実行
コード例 (.NET OM)
ClientContext を
取得
Web, List など
欲しい情報を指定
Load でバッチ
コマンドに追加
ExecuteQuery で
要求を実行
SharePoint 開発ツール
SharePoint 開発ツールの種類
Access
“Napa”
ASP.NET
LightSwitch
“Project Siena”
Access
SharePoint 用アプリを簡単に開発できる
自動ホスト型
対象のデータは SQL データベース上に置かれる
SharePoint のカスタムリストを使わない
データアクセスのパフォーマンス向上
SharePoin...
“Napa”
JavaScript OM を使ったアプリケーション開発
SharePoint ホスト型
Web のスキルを活用
ブラウザーベースの開発環境 (Visual Studio のサブセット)
アプリ専用のリストは主に App...
“Napa” の開発画面
ASP.NET
.NET OM を使ったアプリケーション開発
任意のホスト型に対応する
ASP.NET 開発のスキルを利用できる
Visual Studio の開発支援機能・デバッグ支援機能を
利用できる
専用のリストは主に SQL ...
LightSwitch
SharePoint 用アプリを簡単に開発できる
自動ホスト型
業務アプリを簡単にクラウド化できる
タッチ前提の UI=マルチデバイス対応
SharePoint / Office 365 との連携が簡単
マル...
LightSwitch の開発画面
LightSwitch アプリの実行画面
“Project Siena”
Windows 8.1 用のダッシュボードを開発
記述できる範囲はExcel ライクな関数のみ
Office 365 には今後対応(・・・されるはず)
まとめ
まとめ
SharePoint 開発は決して難しくない
SharePoint 開発の基礎知識
 クラウド指向の新しいプログラミングモデル
 アプリの形態の理解
 コードの定石を利用
SharePoint 開発ツール
 Access ...
参考) 企業アプリカタログへの発行
企業アプリカタログサイトの作成 (1)
企業アプリカタログサイトの作成 (2)
企業アプリカタログへの発行 (1)
企業アプリカタログへの発行 (2)
企業アプリカタログへの発行 (3)
Upcoming SlideShare
Loading in...5
×

初めてでも大丈夫!SharePoint 開発の第一歩

5,111

Published on

第8回 Office 365 勉強会 (2014年5月10日(土) 開催) セッション資料

SharePoint 開発の基礎知識の紹介

Published in: Technology

Transcript of "初めてでも大丈夫!SharePoint 開発の第一歩"

  1. 1. 初めてでも大丈夫! SharePoint 開発の第一歩 瀬尾佳隆 (@seosoft) Microsoft MVP for Visual C# 技術ひろば.net
  2. 2. 自己紹介 瀬尾 佳隆 (せお よしたか) MVP for Visual C# (Jan 2009 – Dec 2014) SharePoint / Office 365 が好き  AKB48G が好き 技術ひろば.net やってます  http://hiroba-tech.net/ ブログやってます  http://yseosoft.wordpress.com/ 5月17日(土) は合同勉強会の第2弾~活用・連携編~  http://bit.ly/hiroba201405
  3. 3. アジェンダ SharePoint 開発の基礎知識 プログラミングモデル コードの基本的な流れ/コードの定石 SharePoint 用アプリ開発ツール Access “Napa” ASP.NET LightSwitch “Project Siena” 今日はコレ!
  4. 4. SharePoint 開発の基礎知識
  5. 5. SharePoint 開発は決して難しくない 以前の SharePoint 開発は 独特の API の理解がポイントだった 2013 で新しいプログラミングモデルが 追加された 一般的な Web や .NET のスキルが 使える SharePoint ならではの知識は それほど多くない
  6. 6. SOM (Server Object Model) COM (Client Object Model) クラウド指向 オブジェクト モデル SharePoint のプログラミングモデル 2013 からの 新しいモデル
  7. 7. クラウド指向のプログラミングモデル SharePoint 用アプリは本体の SharePoint サイト とは別の場所に配置される SharePoint ホスト型・・・専用の SharePoint サイト クラウドホスト型・・・外部の Web サイト SharePoint ホスト型 クラウドホスト型
  8. 8. SharePoint ホスト型の構成 App Web Host Web 利用者の SharePoint 環境 アプリ専用の SharePoint 環境 RequestExecutor でアクセス アプリを専用の SharePoint サイトに配置する
  9. 9. クラウドホスト型の構成 App Web Host Webアプリ本体 CreateUserClientContextForSPHost でアクセス Remote App CreateUserClientContextForSPAppWeb でアクセス SQL データベース アプリを専用のサーバーに配置する
  10. 10. 利用できる API .NET OM, JavaScript OM, REST API が 用意されている ※OM = Object Model API SharePoint ホスト型 クラウドホスト型 .NET OM × ○ JavaScript OM ○ ○ REST API △ △ その他の 技術的特徴 一般の Web アプリに 出来ることが出来る △=利用可能だが積極的に使うものでもない
  11. 11. コードの基本的な流れ 1. ClientContext を生成する • SharePoint サーバーにアクセスするためのコンテキスト 2. 欲しい Web、List を指定する • Web = 一般的な Web アプリケーションに相当する • List = Web アプリケーション内のデータ 3. Load で欲しい情報をバッチコマンドに追加する • SharePoint では要求の実行はバッチで行う 4. Query でバッチコマンドを実行する • 要求をまとめて実行する
  12. 12. コードの定石 JavaScript OM .NET OM ClientContext を生成 ClientContext GetSharePoint- Context 欲しい情報を指定 get_web, get_list など Web, List など バッチコマンド に追加 load Load 要求を実行 executeQueryAsync ExecuteQuery
  13. 13. コード例 (JavaScript OM) ClientContext を 取得 get_xxx で欲しい 情報を指定 load でバッチ コマンドに追加 executeQuery で要求を実行
  14. 14. コード例 (.NET OM) ClientContext を 取得 Web, List など 欲しい情報を指定 Load でバッチ コマンドに追加 ExecuteQuery で 要求を実行
  15. 15. SharePoint 開発ツール
  16. 16. SharePoint 開発ツールの種類 Access “Napa” ASP.NET LightSwitch “Project Siena”
  17. 17. Access SharePoint 用アプリを簡単に開発できる 自動ホスト型 対象のデータは SQL データベース上に置かれる SharePoint のカスタムリストを使わない データアクセスのパフォーマンス向上 SharePoint の “リスト件数 実質 5,000件まで” の 上限を超えられる ※Access は SPサイトを 開発することもできる
  18. 18. “Napa” JavaScript OM を使ったアプリケーション開発 SharePoint ホスト型 Web のスキルを活用 ブラウザーベースの開発環境 (Visual Studio のサブセット) アプリ専用のリストは主に App Web に置くのがよい Host Web のアクセスも可能、 WebRequestExecutorFactory を利用する 課題はソースコード管理がしづらい点
  19. 19. “Napa” の開発画面
  20. 20. ASP.NET .NET OM を使ったアプリケーション開発 任意のホスト型に対応する ASP.NET 開発のスキルを利用できる Visual Studio の開発支援機能・デバッグ支援機能を 利用できる 専用のリストは主に SQL データベースに置くのがよい 自由なデータ設計、パフォーマンス、件数上限などのメリット App Web, Host Web のアクセスも可能、 JavaScript OM よりもシンプルなコードにできる  CreateUserClientContextForSPAppWeb ・・・App Web  CreateUserClientContextForSPHost ・・・Host Web
  21. 21. LightSwitch SharePoint 用アプリを簡単に開発できる 自動ホスト型 業務アプリを簡単にクラウド化できる タッチ前提の UI=マルチデバイス対応 SharePoint / Office 365 との連携が簡単 マルチデータソースの操作が簡単 サーバー側/クライアント側それぞれをカスタマイズ可能
  22. 22. LightSwitch の開発画面
  23. 23. LightSwitch アプリの実行画面
  24. 24. “Project Siena” Windows 8.1 用のダッシュボードを開発 記述できる範囲はExcel ライクな関数のみ Office 365 には今後対応(・・・されるはず)
  25. 25. まとめ
  26. 26. まとめ SharePoint 開発は決して難しくない SharePoint 開発の基礎知識  クラウド指向の新しいプログラミングモデル  アプリの形態の理解  コードの定石を利用 SharePoint 開発ツール  Access ・・・PC ブラウザー向けアプリを簡単に開発  “Napa” ・・・JavaScript で Web のスキルを利用  ASP.NET ・・・ .NET と C#/VB を最大限に活用  LightSwitch ・・・業務アプリを高品質にクラウド化  “Project Siena” ・・・Windows 8.1 用のダッシュボードを開発
  27. 27. 参考) 企業アプリカタログへの発行
  28. 28. 企業アプリカタログサイトの作成 (1)
  29. 29. 企業アプリカタログサイトの作成 (2)
  30. 30. 企業アプリカタログへの発行 (1)
  31. 31. 企業アプリカタログへの発行 (2)
  32. 32. 企業アプリカタログへの発行 (3)
  1. A particular slide catching your eye?

    Clipping is a handy way to collect important slides you want to go back to later.

×