SharePoint 開発とは

提供: SharePoint Developer
移動: 案内検索

SharePoint 開発の概要

SharePoint とは

これから SharePoint 開発を始めようとしている開発者の方は SharePoint を実際に使ったことはあるでしょうか?
さすがに SharePoint が何なのかを理解しないまま SharePoint で動くプログラムを開発するのは無理があるので、まずは SharePoint が何者なのかを理解する必要があります。
SharePoint が何者なのか、何ができるのかについての詳細は、マイクロソフトから出ている自習書(ポータル機能概要辺りを読んでおくといい感じ)や、かなり古い記事ですが @IT にも分かり易い記事があるのでそちらを参照してください。
あとは書籍ですね、Amazon 等で SharePoint で検索すると結構たくさん出てきます。

実際に使ってみたい方は Office 365 の無償版の契約をしてください。
30 日間無料で使えるので、SharePoint が何なのかを知るには最適かと思います。

いやいやそんな時間はないんだよねという開発者の方のために、SharePoint を端的に説明をすると、SharePoint はサイトという箱の中にリスト(表)やライブラリ(ファイル置き場)を作り、Web パーツという部品を使って、リストやライブラリの中身をサイト上に表示し、多数のユーザーと情報共有をするための Web アプリケーションです。
Web アプリケーションなので、上記のすべての操作はブラウザから行います。

SharePoint を開発者から見ると

開発者向けに少し踏み込んで書くと、SharePoint は ASP.NET の Web アプリケーションですというと分かり易いでしょうか。
Web パーツの仕組みも基本的には ASP.NET の Web パーツの仕組みと同じです。
ワークフローは .NET Framework の Workflow Foundation だったりします。
こんな感じで、SharePoint は既存のマイクロソフトテクノロジーをフル活用して作られておりますが、さすがに .NET Framework の様な低レイヤーな実装だけではたくさんの機能を後付けで載せていくのに手間がかかるので、SharePoint 上で動作するプログラムを作りやすくするために、厚めのフレームワークが提供されています。
普通に ASP.NET で開発をする場合もフレームワークの様なものを用意すると思いますが、考え方はそれと一緒です。
ただ、SharePoint のフレームワークは大きくて複雑です。
そのことが逆にSharePoint 開発の難易度を上げてしまっています。

結局 SharePoint 開発とは・・・

前述の通り、SharePoint は ASP.NET の Web アプリケーションなので、開発をする場合には Visual Studio を使ってコーディング、デバッグを行い、できあがったプログラムを SharePoint にデプロイしテストをする、という一般的な Web アプリケーションの開発と同じようなアプローチで開発を行います。
従って、ASP.NET での開発経験がある方であれば SharePoint 開発をするためのベースとなるスキルは備えているということになります。
あとは、どれだけ SharePoint の機能や API に詳しいかというところが勝負のカギになってくるわけです。
そういうことなので、まずは SharePoint のことを知るというのが非常に大事なわけですね。

SharePoint 開発の定義

SharePoint で機能を実装する方法

SharePoint はすぐに使える機能もありますが、基本的にはユーザーが自分が使いやすいようにカスタマイズして使用することになります。
このカスタマイズのやり方(実現したい機能を実装する方法)はカスタマイズを行う人のスキルにより大きく5つに分類され、実現できる機能も変わってきます。

機能実装の種類
# 実装方法 説明 必要スキル 実現できること
1 ブラウザ上でのカスタマイズ
  • ブラウザにて各種設定変更を行う
  • SharePoint のリスト、ライブラリ等に関する基本的なスキル
  • リスト、ライブラリの追加、更新、削除
  • Web パーツの追加、更新、削除
  • サイトの追加、更新、削除
  • ワークフローテンプレートからのワークフロー作成
2 定義ファイル(XML,XSL等)の変更
  • Web パーツの定義ファイルを変更する
  • 定義ファイルの内容の理解
  • XML や XSL の理解
  • Web パーツに表示されるコンテンツのビジュアルデザインの変更
3 SharePoint Designer によるカスタマイズ
  • SharePoint Designer を使ってカスタマイズをする
  • SharePoint Designer の使い方に関するスキル
  • 独自のワークフローの構築
  • 簡単なイベント処理(アイテム登録時等に実行する処理)の実装
  • ページの全体的なビジュアルデザインの変更
4 JavaScript と CSS による機能開発
  • JavaScript と CSS を使用して、ビジュアルデザインの変更や独自の機能を実装する
  • JavaScript、CSS の基本的なスキル
  • SharePoint の JavaScript によるカスタマイズ方法の理解
  • ビジュアルデザインの変更
  • インタラクティブな UI の開発
5 C#、VB.NET による開発
  • C# や VB.NET などの開発言語を使って、独自の機能を実装する
  • C#、VB.NET などの .NET 言語の基本的なスキル
  • SharePoint API の理解
  • 独自の Web パーツの開発
  • 独自のテンプレートの開発

当サイトにおける SharePoint 開発の定義

当サイトでは、上表のうち #1 を標準機能、#2, #3 をカスタマイズ、#4, #5 を開発と定義します。
恐らく一般的にも上記のような分け方になるのではないかと思います。

関連するおすすめコンテンツ