SlideShare a Scribd company logo
1 of 14
Download to read offline
SharePoint 開発入門
- SharePoint 開発ってなにができるの? -
@HiroakiOikawa
2016/12/19
http://sharepoint.orivers.jp
目次
 SharePoint 開発の定義
 SharePoint の開発手法と特徴
 SharePoint 開発をはじめるにあたって
2
© SharePoint Developer
sharepoint.orivers.jp
SharePoint 開発
の定義
SharePoint における「開発」について定
義づけします。
3
SharePoint 開発の定義 1
SharePoint は、ユーザーの技量に合わせて、様々なカスタマイ
ズ方法が用意されており、難易度が高いほど、より詳細な部分ま
でカスタマイズすることができます。(自由度が高くなる)
© SharePoint Developer
sharepoint.orivers.jp 4
標準
説明 難易度
ブラウザからのページ編集や各種アプリの追加、
変更など
低
カスタマイズ
SharePoint Designer を使用したワークフ
ロー作成や、3rd パーティ製品の導入など
中
開発
C#、JavaScript など開発言語を使用して、
独自の UI や機能を追加するなど
高
方法
※ だいたい間違ってはいないと思いますが、上記は一つの考え方であって、他の切り口からの考え方もあるかと思います。
低
自由度
中
高
SharePoint 開発の定義 2
本書では、C# や JavaScript を使用して SharePoint のカス
タマイズを行うことを「開発」と定義します。
© SharePoint Developer
sharepoint.orivers.jp 5
標準
説明 難易度
ブラウザからのページ編集や各種アプリの追加、
変更など
低
カスタマイズ
SharePoint Designer を使用したワークフ
ロー作成や、3rd パーティ製品の導入など
中
開発
C#、JavaScript など開発言語を使用して、
独自の UI や機能を追加するなど
高
方法
本書の説明範囲
低
自由度
中
高
SharePoint の
開発手法と特徴
一言で SharePoint 開発といっても、実
は色々な開発があります。
6
3 タイプの開発手法
オンプレからはじまりクラウドの世界まで広がった SharePoint は、
大きく3タイプの開発手法があり、それぞれに特徴があります。
© SharePoint Developer
sharepoint.orivers.jp 7
ファーム
ソリューション
開発
アドイン開発
クライアントサイド
開発
• SharePoint が稼動するサーバー上で動作するプログラムを開発する手法。
• サーバーサイドのクラスライブラリを用いて、SharePoint に様々な機能拡張ができる。
• 正しい知識で正しくプログラムを開発しなければ、SharePoint 全体を停止させてしまうようなプ
ログラムを書くこともできるため、リスクが大きい。
• SharePoint が稼動するサーバーとは別のサーバーでプログラムを動作させつつ、 SharePoint
とシームレスに連携するプログラムを開発する手法。
• クライアントサイドのクラスライブラリを用いて、SharePoint が持つ Web API を経由して
SharePoint の機能の利用、データの授受を行う。
• 開発できるものは限られるが、ファームソリューションよりも安全。
• JavaScript、TypeScript など、Web フロントエンド開発の技術を用いて、ブラウザ上で動作す
るプログラムを開発する手法。
• 開発する対象により、開発のお作法が異なる。
(表示テンプレート、SharePoint Framework など)
実装可能な拡張機能
開発手法により、実装可能な SharePoint の拡張機能の種類
と、Office 365 に対応しているか否かが変わります。
© SharePoint Developer
sharepoint.orivers.jp 8
ファーム
ソリューション
開発
アドイン開発
クライアントサイド
開発
• Web パーツ (サーバー上で動作する)
• イベントレシーバー (アイテム追加、更新、
削除で動作する処理)
• リボンメニュー、…メニュー、サイトの設定メ
ニュー
• アプリケーションページ
• サイト定義、リスト定義
• コンテンツタイプ、サイト列
• 2010, 2013 ワークフローのアクティビティ、
テンプレート
• フィーチャー (サイトの機能、サイトコレク
ションの機能など)
• サービスアプリケーション、タイマージョブ
• Web パーツ(別サーバー上で動作す
る)
• リモートイベントレシーバー
• リスト、サイト列、コンテンツタイプ
• リボンメニュー、…メニュー
• 2013 ワークフローのアクティビティ、テンプ
レート
• アドインが動作する専用ページ
• Web パーツのビジュアル変更
• 検索結果ページのビジュアル変更
• SharePoint ページ上に独自 UI 追加
• SharePoint Framework による client-side webpart
実装可能な SharePoint の拡張機能
×
〇
〇
O365対応
必要なスキルセット、開発環境
開発手法により、必要なスキルセット、開発環境が異なります。
© SharePoint Developer
sharepoint.orivers.jp 9
ファーム
ソリューション
開発
アドイン開発
クライアントサイド
開発
• C# or VB.NET、ASP.NET
• .NET サーバー API
• JavaScript、jQuery
• JavaScript クライアント API、REST API
• DB アクセスや、ASP.NET の機能を活用した画面開発な
どを行う場合、C#、ASP.NET、.NET クライアント API
• JavaScript または TypeScript などの AltJS 系言語
• SharePoint REST API、Microsoft Graph API など
• SharePoint Framework (client web part開発時)
• AngularJS などの Web Front Framework (任意)
スキルセット
• Visual Studio
• Windows Server OS
• SharePoint Server
• Visual Studio
• Windows Client OS
• Office 365 開発者サイト
または オンプレの開発者サイト
• 好みのエディタ、OS
• Office 365 サイト
• SharePoint Framework時、
node.js、NPM、Gulp、
Yeoman
開発環境
デプロイ方法
開発手法により、デプロイ方法が異なります。
© SharePoint Developer
sharepoint.orivers.jp 10
ファーム
ソリューション
開発
アドイン開発
クライアントサイド
開発
• Visual Studio で作成したソリューションファイル (.wsp) を、 SharePoint のサーバー上にて、
PowerShell を使用してインストール。
• 機能を利用するサイトコレクション、サイトにて、フィーチャーをアクティブ化。
• Visual Studio で作成したアプリアプリファイル (.app) を、アプリカタログに登録。
• 外部 Web アプリケーションは、別途 Web サーバーや Azure 上にデプロイ。
• 機能を利用するサイトにて、アプリを追加。
• 必要な JS などのファイルをドキュメントライブラリや、Web サーバー、CDN 等にアップロード。
• SharePoint Framework 利用時は、上記の他、開発環境で作成したアプリファイル
(.spapp) をアプリカタログに登録。
SharePoint 開発
をはじめるにあたって
SharePoint 開発をはじめるにあたって、
知っておいた方がよいことをいくつか。
11
そもそも SharePoint 開発する意味ありま
すか?
SharePoint の利点を少しでも活かすことができなければ、
SharePoint 開発を行う意味はありません。
本当に SharePoint で実現すべきことなのか、よく考えましょう。
 例えばこんなことを考えてみる
- SharePoint が持つ機能を利用しますか?
- SharePoint のインフラを利用するメリット、デメリットは認識できていま
すか?
- 他のソリューションを採用するより、SharePoint を使った方が良いと考
える理由は何ですか?
© SharePoint Developer
sharepoint.orivers.jp 12
開発手法選択のポイント
最適な開発手法を選択し、開発効率を高めましょう。
 ポイント1
- クライアントサイド開発→アドイン開発→ファームソリューション開発の順
に Fit & Gap する。
• C#が好きだからとなんでもかんでもファームソリューションで、はダメです。
 ポイント2
- 開発するものを明確にし、利用イメージを固めてから開発手法を決める。
• 開発をはじめてから開発手法を変更することはできません。
 ポイント3
- スキル、環境が足りるかきちんと見極める。
• きちんと開発ができるスキル、環境がある方にお願いしましょう。
© SharePoint Developer
sharepoint.orivers.jp 13
参考資料
 SharePoint 開発のポータル
- https://msdn.microsoft.com/ja-jp/library/office/dn833469.aspx
 SharePoint 2013 開発の概要
- https://msdn.microsoft.com/ja-jp/library/office/jj164084.aspx
 SharePoint アドイン
- https://msdn.microsoft.com/ja-jp/library/office/fp179930.aspx
 SharePoint Framework
- https://dev.office.com/sharepoint/docs/spfx/sharepoint-framework-
overview
© SharePoint Developer
sharepoint.orivers.jp 14

More Related Content

What's hot

SharePoint Online を JavaScript でイジる。
SharePoint Online を JavaScript でイジる。SharePoint Online を JavaScript でイジる。
SharePoint Online を JavaScript でイジる。Hirofumi Ota
 
現場ではこう使った~Office 365 と Azure Functions、Azure Data Factory、Azure SQL Database,...
現場ではこう使った~Office 365 と Azure Functions、Azure Data Factory、Azure SQL Database,...現場ではこう使った~Office 365 と Azure Functions、Azure Data Factory、Azure SQL Database,...
現場ではこう使った~Office 365 と Azure Functions、Azure Data Factory、Azure SQL Database,...Masayuki Ota
 
やまさん と Microsoft Power Apps 入門しよう!
やまさん と Microsoft Power Apps 入門しよう!やまさん と Microsoft Power Apps 入門しよう!
やまさん と Microsoft Power Apps 入門しよう!Teruchika Yamada
 
入社1年目のプログラミング初心者がSpringを学ぶための手引き
入社1年目のプログラミング初心者がSpringを学ぶための手引き入社1年目のプログラミング初心者がSpringを学ぶための手引き
入社1年目のプログラミング初心者がSpringを学ぶための手引き土岐 孝平
 
Office 365 勉強会「いまさらきけない? SharePoint の基礎のキソ」
 Office 365 勉強会「いまさらきけない? SharePoint の基礎のキソ」 Office 365 勉強会「いまさらきけない? SharePoint の基礎のキソ」
Office 365 勉強会「いまさらきけない? SharePoint の基礎のキソ」Kazuhiko Nakamura
 
Springを何となく使ってる人が抑えるべきポイント
Springを何となく使ってる人が抑えるべきポイントSpringを何となく使ってる人が抑えるべきポイント
Springを何となく使ってる人が抑えるべきポイント土岐 孝平
 
Microsoft Graph APIを活用した社内アプリケーション開発
Microsoft Graph APIを活用した社内アプリケーション開発Microsoft Graph APIを活用した社内アプリケーション開発
Microsoft Graph APIを活用した社内アプリケーション開発Yuki Hattori
 
AppiumのWebViewアプリテストの仕組みとハマりどころ
AppiumのWebViewアプリテストの仕組みとハマりどころAppiumのWebViewアプリテストの仕組みとハマりどころ
AppiumのWebViewアプリテストの仕組みとハマりどころMasayuki Wakizaka
 
SharePointリストのフォームのカスタマイズを利用したときにハマること
SharePointリストのフォームのカスタマイズを利用したときにハマることSharePointリストのフォームのカスタマイズを利用したときにハマること
SharePointリストのフォームのカスタマイズを利用したときにハマることた な
 
OutSystems 新機能紹介: Reactive Web
OutSystems 新機能紹介: Reactive WebOutSystems 新機能紹介: Reactive Web
OutSystems 新機能紹介: Reactive WebTsuyoshi Kawarasaki
 
Microsoft Dataverse for Teams の裏側をみてみよう
Microsoft Dataverse for Teamsの裏側をみてみようMicrosoft Dataverse for Teamsの裏側をみてみよう
Microsoft Dataverse for Teams の裏側をみてみようTeruchika Yamada
 
SharePoint Online 外部共有を考える
SharePoint Online 外部共有を考えるSharePoint Online 外部共有を考える
SharePoint Online 外部共有を考えるTeruchika Yamada
 
ファイルサーバーを SharePoint に移行するためのアプローチ
ファイルサーバーを SharePoint に移行するためのアプローチファイルサーバーを SharePoint に移行するためのアプローチ
ファイルサーバーを SharePoint に移行するためのアプローチ日本マイクロソフト株式会社
 
SharePoint Framework Teams タブ開発基礎講座
SharePoint Framework Teams タブ開発基礎講座SharePoint Framework Teams タブ開発基礎講座
SharePoint Framework Teams タブ開発基礎講座Hiroaki Oikawa
 
SharePoint Online で、ポータル実践アイデア
SharePoint Online で、ポータル実践アイデアSharePoint Online で、ポータル実践アイデア
SharePoint Online で、ポータル実践アイデアHirofumi Ota
 
自社で実運用中!Power Apps・Power Automate 活用事例
自社で実運用中!Power Apps・Power Automate 活用事例自社で実運用中!Power Apps・Power Automate 活用事例
自社で実運用中!Power Apps・Power Automate 活用事例Teruchika Yamada
 
SPAのルーティングの話
SPAのルーティングの話SPAのルーティングの話
SPAのルーティングの話ushiboy
 
え!?データがオンプレにあるけどPower BI で BI したいの?
え!?データがオンプレにあるけどPower BI で BI したいの?え!?データがオンプレにあるけどPower BI で BI したいの?
え!?データがオンプレにあるけどPower BI で BI したいの?Yugo Shimizu
 

What's hot (20)

SharePoint Online を JavaScript でイジる。
SharePoint Online を JavaScript でイジる。SharePoint Online を JavaScript でイジる。
SharePoint Online を JavaScript でイジる。
 
現場ではこう使った~Office 365 と Azure Functions、Azure Data Factory、Azure SQL Database,...
現場ではこう使った~Office 365 と Azure Functions、Azure Data Factory、Azure SQL Database,...現場ではこう使った~Office 365 と Azure Functions、Azure Data Factory、Azure SQL Database,...
現場ではこう使った~Office 365 と Azure Functions、Azure Data Factory、Azure SQL Database,...
 
やまさん と Microsoft Power Apps 入門しよう!
やまさん と Microsoft Power Apps 入門しよう!やまさん と Microsoft Power Apps 入門しよう!
やまさん と Microsoft Power Apps 入門しよう!
 
入社1年目のプログラミング初心者がSpringを学ぶための手引き
入社1年目のプログラミング初心者がSpringを学ぶための手引き入社1年目のプログラミング初心者がSpringを学ぶための手引き
入社1年目のプログラミング初心者がSpringを学ぶための手引き
 
Office 365 勉強会「いまさらきけない? SharePoint の基礎のキソ」
 Office 365 勉強会「いまさらきけない? SharePoint の基礎のキソ」 Office 365 勉強会「いまさらきけない? SharePoint の基礎のキソ」
Office 365 勉強会「いまさらきけない? SharePoint の基礎のキソ」
 
Confluence と SharePoint 何が違う?
Confluence と SharePoint 何が違う?Confluence と SharePoint 何が違う?
Confluence と SharePoint 何が違う?
 
Springを何となく使ってる人が抑えるべきポイント
Springを何となく使ってる人が抑えるべきポイントSpringを何となく使ってる人が抑えるべきポイント
Springを何となく使ってる人が抑えるべきポイント
 
Microsoft Graph APIを活用した社内アプリケーション開発
Microsoft Graph APIを活用した社内アプリケーション開発Microsoft Graph APIを活用した社内アプリケーション開発
Microsoft Graph APIを活用した社内アプリケーション開発
 
AppiumのWebViewアプリテストの仕組みとハマりどころ
AppiumのWebViewアプリテストの仕組みとハマりどころAppiumのWebViewアプリテストの仕組みとハマりどころ
AppiumのWebViewアプリテストの仕組みとハマりどころ
 
SharePoint で始める情報共有とそのアプローチ
SharePoint で始める情報共有とそのアプローチSharePoint で始める情報共有とそのアプローチ
SharePoint で始める情報共有とそのアプローチ
 
SharePointリストのフォームのカスタマイズを利用したときにハマること
SharePointリストのフォームのカスタマイズを利用したときにハマることSharePointリストのフォームのカスタマイズを利用したときにハマること
SharePointリストのフォームのカスタマイズを利用したときにハマること
 
OutSystems 新機能紹介: Reactive Web
OutSystems 新機能紹介: Reactive WebOutSystems 新機能紹介: Reactive Web
OutSystems 新機能紹介: Reactive Web
 
Microsoft Dataverse for Teams の裏側をみてみよう
Microsoft Dataverse for Teamsの裏側をみてみようMicrosoft Dataverse for Teamsの裏側をみてみよう
Microsoft Dataverse for Teams の裏側をみてみよう
 
SharePoint Online 外部共有を考える
SharePoint Online 外部共有を考えるSharePoint Online 外部共有を考える
SharePoint Online 外部共有を考える
 
ファイルサーバーを SharePoint に移行するためのアプローチ
ファイルサーバーを SharePoint に移行するためのアプローチファイルサーバーを SharePoint に移行するためのアプローチ
ファイルサーバーを SharePoint に移行するためのアプローチ
 
SharePoint Framework Teams タブ開発基礎講座
SharePoint Framework Teams タブ開発基礎講座SharePoint Framework Teams タブ開発基礎講座
SharePoint Framework Teams タブ開発基礎講座
 
SharePoint Online で、ポータル実践アイデア
SharePoint Online で、ポータル実践アイデアSharePoint Online で、ポータル実践アイデア
SharePoint Online で、ポータル実践アイデア
 
自社で実運用中!Power Apps・Power Automate 活用事例
自社で実運用中!Power Apps・Power Automate 活用事例自社で実運用中!Power Apps・Power Automate 活用事例
自社で実運用中!Power Apps・Power Automate 活用事例
 
SPAのルーティングの話
SPAのルーティングの話SPAのルーティングの話
SPAのルーティングの話
 
え!?データがオンプレにあるけどPower BI で BI したいの?
え!?データがオンプレにあるけどPower BI で BI したいの?え!?データがオンプレにあるけどPower BI で BI したいの?
え!?データがオンプレにあるけどPower BI で BI したいの?
 

Similar to SharePoint 開発入門

Visual Studio 2012 と ASP.NET に見る、最新 Web 開発の魅力
Visual Studio 2012 と ASP.NET に見る、最新 Web 開発の魅力Visual Studio 2012 と ASP.NET に見る、最新 Web 開発の魅力
Visual Studio 2012 と ASP.NET に見る、最新 Web 開発の魅力Akira Inoue
 
クラウド時代の SharePoint 開発に備えよう
クラウド時代の SharePoint 開発に備えようクラウド時代の SharePoint 開発に備えよう
クラウド時代の SharePoint 開発に備えようHiroaki Oikawa
 
3 倍早い?! MS 製開発者専用ツールによる HTML5 + JavaScript を使ったWeb 作成
3 倍早い?! MS 製開発者専用ツールによる HTML5 + JavaScript を使ったWeb 作成3 倍早い?! MS 製開発者専用ツールによる HTML5 + JavaScript を使ったWeb 作成
3 倍早い?! MS 製開発者専用ツールによる HTML5 + JavaScript を使ったWeb 作成Osamu Monoe
 
第13回 jpsps in 大阪 share pointerのためのクラウドビジネスアプリのすすめ
第13回 jpsps in 大阪 share pointerのためのクラウドビジネスアプリのすすめ第13回 jpsps in 大阪 share pointerのためのクラウドビジネスアプリのすすめ
第13回 jpsps in 大阪 share pointerのためのクラウドビジネスアプリのすすめHiroaki Oikawa
 
【BS13】チーム開発がこんなにも快適に!コーディングもデバッグも GitHub 上で。 GitHub Codespaces で叶えられるシームレスな開発
【BS13】チーム開発がこんなにも快適に!コーディングもデバッグも GitHub 上で。 GitHub Codespaces で叶えられるシームレスな開発【BS13】チーム開発がこんなにも快適に!コーディングもデバッグも GitHub 上で。 GitHub Codespaces で叶えられるシームレスな開発
【BS13】チーム開発がこんなにも快適に!コーディングもデバッグも GitHub 上で。 GitHub Codespaces で叶えられるシームレスな開発日本マイクロソフト株式会社
 
マイクロソフトWeb開発の今と今後
マイクロソフトWeb開発の今と今後マイクロソフトWeb開発の今と今後
マイクロソフトWeb開発の今と今後Akira Inoue
 
One ASP.NET ~ 今、ASP.NET に何が起こっているのか? ~
One ASP.NET ~ 今、ASP.NET に何が起こっているのか? ~One ASP.NET ~ 今、ASP.NET に何が起こっているのか? ~
One ASP.NET ~ 今、ASP.NET に何が起こっているのか? ~Akira Inoue
 
Visual Studio 2012 で実現する HTML5 & マルチ デバイス時代の Web 開発
Visual Studio 2012 で実現する HTML5 & マルチ デバイス時代の Web 開発Visual Studio 2012 で実現する HTML5 & マルチ デバイス時代の Web 開発
Visual Studio 2012 で実現する HTML5 & マルチ デバイス時代の Web 開発Akira Inoue
 
Silverlightを囲む会in大阪#19
Silverlightを囲む会in大阪#19Silverlightを囲む会in大阪#19
Silverlightを囲む会in大阪#19Atsuo Yamasaki
 
最新のプラットフォーム技術と開発ツールを活用した Web の構築
最新のプラットフォーム技術と開発ツールを活用した Web の構築最新のプラットフォーム技術と開発ツールを活用した Web の構築
最新のプラットフォーム技術と開発ツールを活用した Web の構築Tomoyuki Iwade
 
Web App Framework at SwapSkills vol28
Web App Framework at SwapSkills vol28Web App Framework at SwapSkills vol28
Web App Framework at SwapSkills vol28光一 原田
 
Office365 api dev_20140624
Office365 api dev_20140624Office365 api dev_20140624
Office365 api dev_20140624Seiji Noro
 
[POST.Dev Japan] VS Code で試みる開発体験の向上
[POST.Dev Japan] VS Code で試みる開発体験の向上[POST.Dev Japan] VS Code で試みる開発体験の向上
[POST.Dev Japan] VS Code で試みる開発体験の向上Tomomi Imura
 
マイクロソフトの新しい Web 開発ツールと新しい Web ブラウザー、そして、それらの新しい機能についての話
マイクロソフトの新しい Web 開発ツールと新しい Web ブラウザー、そして、それらの新しい機能についての話マイクロソフトの新しい Web 開発ツールと新しい Web ブラウザー、そして、それらの新しい機能についての話
マイクロソフトの新しい Web 開発ツールと新しい Web ブラウザー、そして、それらの新しい機能についての話Osamu Monoe
 
2011年マイクロソフト テクノロジー振り返り~開発編~
2011年マイクロソフト テクノロジー振り返り~開発編~2011年マイクロソフト テクノロジー振り返り~開発編~
2011年マイクロソフト テクノロジー振り返り~開発編~Takeshi Shinmura
 
Visual Web Developer 2010 とExpression Web 4 で構築する HTML5 と JavaScript
 Visual Web Developer 2010 とExpression Web 4 で構築する HTML5 と JavaScript Visual Web Developer 2010 とExpression Web 4 で構築する HTML5 と JavaScript
Visual Web Developer 2010 とExpression Web 4 で構築する HTML5 と JavaScriptOsamu Monoe
 
LightSwitchでマルチデータソース
LightSwitchでマルチデータソースLightSwitchでマルチデータソース
LightSwitchでマルチデータソースYoshitaka Seo
 
論理思考とプログラミング 2013f#10
論理思考とプログラミング 2013f#10論理思考とプログラミング 2013f#10
論理思考とプログラミング 2013f#10Noritada Shimizu
 
Html5時代のクリエイターのあり方
Html5時代のクリエイターのあり方Html5時代のクリエイターのあり方
Html5時代のクリエイターのあり方Masakazu Muraoka
 

Similar to SharePoint 開発入門 (20)

Visual Studio 2012 と ASP.NET に見る、最新 Web 開発の魅力
Visual Studio 2012 と ASP.NET に見る、最新 Web 開発の魅力Visual Studio 2012 と ASP.NET に見る、最新 Web 開発の魅力
Visual Studio 2012 と ASP.NET に見る、最新 Web 開発の魅力
 
クラウド時代の SharePoint 開発に備えよう
クラウド時代の SharePoint 開発に備えようクラウド時代の SharePoint 開発に備えよう
クラウド時代の SharePoint 開発に備えよう
 
3 倍早い?! MS 製開発者専用ツールによる HTML5 + JavaScript を使ったWeb 作成
3 倍早い?! MS 製開発者専用ツールによる HTML5 + JavaScript を使ったWeb 作成3 倍早い?! MS 製開発者専用ツールによる HTML5 + JavaScript を使ったWeb 作成
3 倍早い?! MS 製開発者専用ツールによる HTML5 + JavaScript を使ったWeb 作成
 
第13回 jpsps in 大阪 share pointerのためのクラウドビジネスアプリのすすめ
第13回 jpsps in 大阪 share pointerのためのクラウドビジネスアプリのすすめ第13回 jpsps in 大阪 share pointerのためのクラウドビジネスアプリのすすめ
第13回 jpsps in 大阪 share pointerのためのクラウドビジネスアプリのすすめ
 
【BS13】チーム開発がこんなにも快適に!コーディングもデバッグも GitHub 上で。 GitHub Codespaces で叶えられるシームレスな開発
【BS13】チーム開発がこんなにも快適に!コーディングもデバッグも GitHub 上で。 GitHub Codespaces で叶えられるシームレスな開発【BS13】チーム開発がこんなにも快適に!コーディングもデバッグも GitHub 上で。 GitHub Codespaces で叶えられるシームレスな開発
【BS13】チーム開発がこんなにも快適に!コーディングもデバッグも GitHub 上で。 GitHub Codespaces で叶えられるシームレスな開発
 
マイクロソフトWeb開発の今と今後
マイクロソフトWeb開発の今と今後マイクロソフトWeb開発の今と今後
マイクロソフトWeb開発の今と今後
 
One ASP.NET ~ 今、ASP.NET に何が起こっているのか? ~
One ASP.NET ~ 今、ASP.NET に何が起こっているのか? ~One ASP.NET ~ 今、ASP.NET に何が起こっているのか? ~
One ASP.NET ~ 今、ASP.NET に何が起こっているのか? ~
 
Visual Studio 2012 で実現する HTML5 & マルチ デバイス時代の Web 開発
Visual Studio 2012 で実現する HTML5 & マルチ デバイス時代の Web 開発Visual Studio 2012 で実現する HTML5 & マルチ デバイス時代の Web 開発
Visual Studio 2012 で実現する HTML5 & マルチ デバイス時代の Web 開発
 
Silverlightを囲む会in大阪#19
Silverlightを囲む会in大阪#19Silverlightを囲む会in大阪#19
Silverlightを囲む会in大阪#19
 
最新のプラットフォーム技術と開発ツールを活用した Web の構築
最新のプラットフォーム技術と開発ツールを活用した Web の構築最新のプラットフォーム技術と開発ツールを活用した Web の構築
最新のプラットフォーム技術と開発ツールを活用した Web の構築
 
Web App Framework at SwapSkills vol28
Web App Framework at SwapSkills vol28Web App Framework at SwapSkills vol28
Web App Framework at SwapSkills vol28
 
Office365 api dev_20140624
Office365 api dev_20140624Office365 api dev_20140624
Office365 api dev_20140624
 
[POST.Dev Japan] VS Code で試みる開発体験の向上
[POST.Dev Japan] VS Code で試みる開発体験の向上[POST.Dev Japan] VS Code で試みる開発体験の向上
[POST.Dev Japan] VS Code で試みる開発体験の向上
 
SQLWorld★大阪#8
SQLWorld★大阪#8SQLWorld★大阪#8
SQLWorld★大阪#8
 
マイクロソフトの新しい Web 開発ツールと新しい Web ブラウザー、そして、それらの新しい機能についての話
マイクロソフトの新しい Web 開発ツールと新しい Web ブラウザー、そして、それらの新しい機能についての話マイクロソフトの新しい Web 開発ツールと新しい Web ブラウザー、そして、それらの新しい機能についての話
マイクロソフトの新しい Web 開発ツールと新しい Web ブラウザー、そして、それらの新しい機能についての話
 
2011年マイクロソフト テクノロジー振り返り~開発編~
2011年マイクロソフト テクノロジー振り返り~開発編~2011年マイクロソフト テクノロジー振り返り~開発編~
2011年マイクロソフト テクノロジー振り返り~開発編~
 
Visual Web Developer 2010 とExpression Web 4 で構築する HTML5 と JavaScript
 Visual Web Developer 2010 とExpression Web 4 で構築する HTML5 と JavaScript Visual Web Developer 2010 とExpression Web 4 で構築する HTML5 と JavaScript
Visual Web Developer 2010 とExpression Web 4 で構築する HTML5 と JavaScript
 
LightSwitchでマルチデータソース
LightSwitchでマルチデータソースLightSwitchでマルチデータソース
LightSwitchでマルチデータソース
 
論理思考とプログラミング 2013f#10
論理思考とプログラミング 2013f#10論理思考とプログラミング 2013f#10
論理思考とプログラミング 2013f#10
 
Html5時代のクリエイターのあり方
Html5時代のクリエイターのあり方Html5時代のクリエイターのあり方
Html5時代のクリエイターのあり方
 

More from Hiroaki Oikawa

Viva Connections 拡張機能入門
Viva Connections 拡張機能入門Viva Connections 拡張機能入門
Viva Connections 拡張機能入門Hiroaki Oikawa
 
SharePoint Framework による Viva Connections アプリの開発
SharePoint Framework による Viva Connections アプリの開発SharePoint Framework による Viva Connections アプリの開発
SharePoint Framework による Viva Connections アプリの開発Hiroaki Oikawa
 
SharePoint Framework アップデート SPFx v1.12.1
SharePoint Framework アップデート SPFx v1.12.1SharePoint Framework アップデート SPFx v1.12.1
SharePoint Framework アップデート SPFx v1.12.1Hiroaki Oikawa
 
Microsoft 365 Virtual Marathon 2021 - SharePoint サイトの自動作成あれこれ
Microsoft 365 Virtual Marathon 2021 - SharePoint サイトの自動作成あれこれMicrosoft 365 Virtual Marathon 2021 - SharePoint サイトの自動作成あれこれ
Microsoft 365 Virtual Marathon 2021 - SharePoint サイトの自動作成あれこれHiroaki Oikawa
 
SharePoint Framework によるモダンサイトのカスタマイズ
SharePoint Framework によるモダンサイトのカスタマイズSharePoint Framework によるモダンサイトのカスタマイズ
SharePoint Framework によるモダンサイトのカスタマイズHiroaki Oikawa
 
Outlook アドイン開発入門
Outlook アドイン開発入門Outlook アドイン開発入門
Outlook アドイン開発入門Hiroaki Oikawa
 
Microsoft Flow は SharePoint Designer ワークフローの代わりになり得るか!?
Microsoft Flow は SharePoint Designer ワークフローの代わりになり得るか!?Microsoft Flow は SharePoint Designer ワークフローの代わりになり得るか!?
Microsoft Flow は SharePoint Designer ワークフローの代わりになり得るか!?Hiroaki Oikawa
 
PowerApps による初めてのアプリ開発
PowerApps による初めてのアプリ開発PowerApps による初めてのアプリ開発
PowerApps による初めてのアプリ開発Hiroaki Oikawa
 
PowerApps をざっくりさわってみた
PowerApps をざっくりさわってみたPowerApps をざっくりさわってみた
PowerApps をざっくりさわってみたHiroaki Oikawa
 
CSOMでサイト運用を楽にしよう!
CSOMでサイト運用を楽にしよう!CSOMでサイト運用を楽にしよう!
CSOMでサイト運用を楽にしよう!Hiroaki Oikawa
 
カスタマイズされた SharePoint のアップグレードを考える
カスタマイズされた SharePoint のアップグレードを考えるカスタマイズされた SharePoint のアップグレードを考える
カスタマイズされた SharePoint のアップグレードを考えるHiroaki Oikawa
 
SharePoint 2013 の検索結果をチューニングする
SharePoint 2013 の検索結果をチューニングするSharePoint 2013 の検索結果をチューニングする
SharePoint 2013 の検索結果をチューニングするHiroaki Oikawa
 
SharePoint 2013 ワークフロー開発入門
SharePoint 2013 ワークフロー開発入門SharePoint 2013 ワークフロー開発入門
SharePoint 2013 ワークフロー開発入門Hiroaki Oikawa
 

More from Hiroaki Oikawa (13)

Viva Connections 拡張機能入門
Viva Connections 拡張機能入門Viva Connections 拡張機能入門
Viva Connections 拡張機能入門
 
SharePoint Framework による Viva Connections アプリの開発
SharePoint Framework による Viva Connections アプリの開発SharePoint Framework による Viva Connections アプリの開発
SharePoint Framework による Viva Connections アプリの開発
 
SharePoint Framework アップデート SPFx v1.12.1
SharePoint Framework アップデート SPFx v1.12.1SharePoint Framework アップデート SPFx v1.12.1
SharePoint Framework アップデート SPFx v1.12.1
 
Microsoft 365 Virtual Marathon 2021 - SharePoint サイトの自動作成あれこれ
Microsoft 365 Virtual Marathon 2021 - SharePoint サイトの自動作成あれこれMicrosoft 365 Virtual Marathon 2021 - SharePoint サイトの自動作成あれこれ
Microsoft 365 Virtual Marathon 2021 - SharePoint サイトの自動作成あれこれ
 
SharePoint Framework によるモダンサイトのカスタマイズ
SharePoint Framework によるモダンサイトのカスタマイズSharePoint Framework によるモダンサイトのカスタマイズ
SharePoint Framework によるモダンサイトのカスタマイズ
 
Outlook アドイン開発入門
Outlook アドイン開発入門Outlook アドイン開発入門
Outlook アドイン開発入門
 
Microsoft Flow は SharePoint Designer ワークフローの代わりになり得るか!?
Microsoft Flow は SharePoint Designer ワークフローの代わりになり得るか!?Microsoft Flow は SharePoint Designer ワークフローの代わりになり得るか!?
Microsoft Flow は SharePoint Designer ワークフローの代わりになり得るか!?
 
PowerApps による初めてのアプリ開発
PowerApps による初めてのアプリ開発PowerApps による初めてのアプリ開発
PowerApps による初めてのアプリ開発
 
PowerApps をざっくりさわってみた
PowerApps をざっくりさわってみたPowerApps をざっくりさわってみた
PowerApps をざっくりさわってみた
 
CSOMでサイト運用を楽にしよう!
CSOMでサイト運用を楽にしよう!CSOMでサイト運用を楽にしよう!
CSOMでサイト運用を楽にしよう!
 
カスタマイズされた SharePoint のアップグレードを考える
カスタマイズされた SharePoint のアップグレードを考えるカスタマイズされた SharePoint のアップグレードを考える
カスタマイズされた SharePoint のアップグレードを考える
 
SharePoint 2013 の検索結果をチューニングする
SharePoint 2013 の検索結果をチューニングするSharePoint 2013 の検索結果をチューニングする
SharePoint 2013 の検索結果をチューニングする
 
SharePoint 2013 ワークフロー開発入門
SharePoint 2013 ワークフロー開発入門SharePoint 2013 ワークフロー開発入門
SharePoint 2013 ワークフロー開発入門
 

Recently uploaded

Amazon SES を勉強してみる その12024/04/12の勉強会で発表されたものです。
Amazon SES を勉強してみる その12024/04/12の勉強会で発表されたものです。Amazon SES を勉強してみる その12024/04/12の勉強会で発表されたものです。
Amazon SES を勉強してみる その12024/04/12の勉強会で発表されたものです。iPride Co., Ltd.
 
IoT in the era of generative AI, Thanks IoT ALGYAN.pptx
IoT in the era of generative AI, Thanks IoT ALGYAN.pptxIoT in the era of generative AI, Thanks IoT ALGYAN.pptx
IoT in the era of generative AI, Thanks IoT ALGYAN.pptxAtomu Hidaka
 
20240412_HCCJP での Windows Server 2025 Active Directory
20240412_HCCJP での Windows Server 2025 Active Directory20240412_HCCJP での Windows Server 2025 Active Directory
20240412_HCCJP での Windows Server 2025 Active Directoryosamut
 
プレイマットのパターン生成支援ツール
プレイマットのパターン生成支援ツールプレイマットのパターン生成支援ツール
プレイマットのパターン生成支援ツールsugiuralab
 
PHP-Conference-Odawara-2024-04-000000000
PHP-Conference-Odawara-2024-04-000000000PHP-Conference-Odawara-2024-04-000000000
PHP-Conference-Odawara-2024-04-000000000Shota Ito
 
新人研修のまとめ 2024/04/12の勉強会で発表されたものです。
新人研修のまとめ       2024/04/12の勉強会で発表されたものです。新人研修のまとめ       2024/04/12の勉強会で発表されたものです。
新人研修のまとめ 2024/04/12の勉強会で発表されたものです。iPride Co., Ltd.
 
プレイマットのパターン生成支援ツールの評価
プレイマットのパターン生成支援ツールの評価プレイマットのパターン生成支援ツールの評価
プレイマットのパターン生成支援ツールの評価sugiuralab
 

Recently uploaded (7)

Amazon SES を勉強してみる その12024/04/12の勉強会で発表されたものです。
Amazon SES を勉強してみる その12024/04/12の勉強会で発表されたものです。Amazon SES を勉強してみる その12024/04/12の勉強会で発表されたものです。
Amazon SES を勉強してみる その12024/04/12の勉強会で発表されたものです。
 
IoT in the era of generative AI, Thanks IoT ALGYAN.pptx
IoT in the era of generative AI, Thanks IoT ALGYAN.pptxIoT in the era of generative AI, Thanks IoT ALGYAN.pptx
IoT in the era of generative AI, Thanks IoT ALGYAN.pptx
 
20240412_HCCJP での Windows Server 2025 Active Directory
20240412_HCCJP での Windows Server 2025 Active Directory20240412_HCCJP での Windows Server 2025 Active Directory
20240412_HCCJP での Windows Server 2025 Active Directory
 
プレイマットのパターン生成支援ツール
プレイマットのパターン生成支援ツールプレイマットのパターン生成支援ツール
プレイマットのパターン生成支援ツール
 
PHP-Conference-Odawara-2024-04-000000000
PHP-Conference-Odawara-2024-04-000000000PHP-Conference-Odawara-2024-04-000000000
PHP-Conference-Odawara-2024-04-000000000
 
新人研修のまとめ 2024/04/12の勉強会で発表されたものです。
新人研修のまとめ       2024/04/12の勉強会で発表されたものです。新人研修のまとめ       2024/04/12の勉強会で発表されたものです。
新人研修のまとめ 2024/04/12の勉強会で発表されたものです。
 
プレイマットのパターン生成支援ツールの評価
プレイマットのパターン生成支援ツールの評価プレイマットのパターン生成支援ツールの評価
プレイマットのパターン生成支援ツールの評価
 

SharePoint 開発入門

  • 1. SharePoint 開発入門 - SharePoint 開発ってなにができるの? - @HiroakiOikawa 2016/12/19 http://sharepoint.orivers.jp
  • 2. 目次  SharePoint 開発の定義  SharePoint の開発手法と特徴  SharePoint 開発をはじめるにあたって 2 © SharePoint Developer sharepoint.orivers.jp
  • 4. SharePoint 開発の定義 1 SharePoint は、ユーザーの技量に合わせて、様々なカスタマイ ズ方法が用意されており、難易度が高いほど、より詳細な部分ま でカスタマイズすることができます。(自由度が高くなる) © SharePoint Developer sharepoint.orivers.jp 4 標準 説明 難易度 ブラウザからのページ編集や各種アプリの追加、 変更など 低 カスタマイズ SharePoint Designer を使用したワークフ ロー作成や、3rd パーティ製品の導入など 中 開発 C#、JavaScript など開発言語を使用して、 独自の UI や機能を追加するなど 高 方法 ※ だいたい間違ってはいないと思いますが、上記は一つの考え方であって、他の切り口からの考え方もあるかと思います。 低 自由度 中 高
  • 5. SharePoint 開発の定義 2 本書では、C# や JavaScript を使用して SharePoint のカス タマイズを行うことを「開発」と定義します。 © SharePoint Developer sharepoint.orivers.jp 5 標準 説明 難易度 ブラウザからのページ編集や各種アプリの追加、 変更など 低 カスタマイズ SharePoint Designer を使用したワークフ ロー作成や、3rd パーティ製品の導入など 中 開発 C#、JavaScript など開発言語を使用して、 独自の UI や機能を追加するなど 高 方法 本書の説明範囲 低 自由度 中 高
  • 6. SharePoint の 開発手法と特徴 一言で SharePoint 開発といっても、実 は色々な開発があります。 6
  • 7. 3 タイプの開発手法 オンプレからはじまりクラウドの世界まで広がった SharePoint は、 大きく3タイプの開発手法があり、それぞれに特徴があります。 © SharePoint Developer sharepoint.orivers.jp 7 ファーム ソリューション 開発 アドイン開発 クライアントサイド 開発 • SharePoint が稼動するサーバー上で動作するプログラムを開発する手法。 • サーバーサイドのクラスライブラリを用いて、SharePoint に様々な機能拡張ができる。 • 正しい知識で正しくプログラムを開発しなければ、SharePoint 全体を停止させてしまうようなプ ログラムを書くこともできるため、リスクが大きい。 • SharePoint が稼動するサーバーとは別のサーバーでプログラムを動作させつつ、 SharePoint とシームレスに連携するプログラムを開発する手法。 • クライアントサイドのクラスライブラリを用いて、SharePoint が持つ Web API を経由して SharePoint の機能の利用、データの授受を行う。 • 開発できるものは限られるが、ファームソリューションよりも安全。 • JavaScript、TypeScript など、Web フロントエンド開発の技術を用いて、ブラウザ上で動作す るプログラムを開発する手法。 • 開発する対象により、開発のお作法が異なる。 (表示テンプレート、SharePoint Framework など)
  • 8. 実装可能な拡張機能 開発手法により、実装可能な SharePoint の拡張機能の種類 と、Office 365 に対応しているか否かが変わります。 © SharePoint Developer sharepoint.orivers.jp 8 ファーム ソリューション 開発 アドイン開発 クライアントサイド 開発 • Web パーツ (サーバー上で動作する) • イベントレシーバー (アイテム追加、更新、 削除で動作する処理) • リボンメニュー、…メニュー、サイトの設定メ ニュー • アプリケーションページ • サイト定義、リスト定義 • コンテンツタイプ、サイト列 • 2010, 2013 ワークフローのアクティビティ、 テンプレート • フィーチャー (サイトの機能、サイトコレク ションの機能など) • サービスアプリケーション、タイマージョブ • Web パーツ(別サーバー上で動作す る) • リモートイベントレシーバー • リスト、サイト列、コンテンツタイプ • リボンメニュー、…メニュー • 2013 ワークフローのアクティビティ、テンプ レート • アドインが動作する専用ページ • Web パーツのビジュアル変更 • 検索結果ページのビジュアル変更 • SharePoint ページ上に独自 UI 追加 • SharePoint Framework による client-side webpart 実装可能な SharePoint の拡張機能 × 〇 〇 O365対応
  • 9. 必要なスキルセット、開発環境 開発手法により、必要なスキルセット、開発環境が異なります。 © SharePoint Developer sharepoint.orivers.jp 9 ファーム ソリューション 開発 アドイン開発 クライアントサイド 開発 • C# or VB.NET、ASP.NET • .NET サーバー API • JavaScript、jQuery • JavaScript クライアント API、REST API • DB アクセスや、ASP.NET の機能を活用した画面開発な どを行う場合、C#、ASP.NET、.NET クライアント API • JavaScript または TypeScript などの AltJS 系言語 • SharePoint REST API、Microsoft Graph API など • SharePoint Framework (client web part開発時) • AngularJS などの Web Front Framework (任意) スキルセット • Visual Studio • Windows Server OS • SharePoint Server • Visual Studio • Windows Client OS • Office 365 開発者サイト または オンプレの開発者サイト • 好みのエディタ、OS • Office 365 サイト • SharePoint Framework時、 node.js、NPM、Gulp、 Yeoman 開発環境
  • 10. デプロイ方法 開発手法により、デプロイ方法が異なります。 © SharePoint Developer sharepoint.orivers.jp 10 ファーム ソリューション 開発 アドイン開発 クライアントサイド 開発 • Visual Studio で作成したソリューションファイル (.wsp) を、 SharePoint のサーバー上にて、 PowerShell を使用してインストール。 • 機能を利用するサイトコレクション、サイトにて、フィーチャーをアクティブ化。 • Visual Studio で作成したアプリアプリファイル (.app) を、アプリカタログに登録。 • 外部 Web アプリケーションは、別途 Web サーバーや Azure 上にデプロイ。 • 機能を利用するサイトにて、アプリを追加。 • 必要な JS などのファイルをドキュメントライブラリや、Web サーバー、CDN 等にアップロード。 • SharePoint Framework 利用時は、上記の他、開発環境で作成したアプリファイル (.spapp) をアプリカタログに登録。
  • 12. そもそも SharePoint 開発する意味ありま すか? SharePoint の利点を少しでも活かすことができなければ、 SharePoint 開発を行う意味はありません。 本当に SharePoint で実現すべきことなのか、よく考えましょう。  例えばこんなことを考えてみる - SharePoint が持つ機能を利用しますか? - SharePoint のインフラを利用するメリット、デメリットは認識できていま すか? - 他のソリューションを採用するより、SharePoint を使った方が良いと考 える理由は何ですか? © SharePoint Developer sharepoint.orivers.jp 12
  • 13. 開発手法選択のポイント 最適な開発手法を選択し、開発効率を高めましょう。  ポイント1 - クライアントサイド開発→アドイン開発→ファームソリューション開発の順 に Fit & Gap する。 • C#が好きだからとなんでもかんでもファームソリューションで、はダメです。  ポイント2 - 開発するものを明確にし、利用イメージを固めてから開発手法を決める。 • 開発をはじめてから開発手法を変更することはできません。  ポイント3 - スキル、環境が足りるかきちんと見極める。 • きちんと開発ができるスキル、環境がある方にお願いしましょう。 © SharePoint Developer sharepoint.orivers.jp 13
  • 14. 参考資料  SharePoint 開発のポータル - https://msdn.microsoft.com/ja-jp/library/office/dn833469.aspx  SharePoint 2013 開発の概要 - https://msdn.microsoft.com/ja-jp/library/office/jj164084.aspx  SharePoint アドイン - https://msdn.microsoft.com/ja-jp/library/office/fp179930.aspx  SharePoint Framework - https://dev.office.com/sharepoint/docs/spfx/sharepoint-framework- overview © SharePoint Developer sharepoint.orivers.jp 14