Web上には.NET関連サイトが数え切れないほどたくさんある。その中でも.NET開発初心者がまずは押さえておきたいWebサイトを厳選してまとめた。
※ 本稿は「.NET開発者のためのオンライン・リソース・ガイド【2004年度版】」「同【2006年度版】」「同【2009年度版】」「同【2011年度版】」「同【2014年度版】」の改訂版である。
本稿は、これから.NETでプログラミングを始めようとしている方や、新しく.NETでの開発に携わることになった方に贈るオンラインリソースガイドの2015年度版である。インターネット上に数ある.NET関連サイトの中で、.NET開発者がまずは押さえておくべきWebサイトについてまとめている。
.NET開発者がよく利用するサイトの代表は、やはり.NET Framework & Visual Studioを提供するマイクロソフトのサイトだろう。だが、ひとくくりに「マイクロソフトのサイト」といっても、マイクロソフトが運営するサイトは本当にたくさんあり、それぞれのコンテンツも膨大なものになっている。さらにマイクロソフト以外のサイトも加えると、とても消化できる情報量ではないだろう。全ての情報を見て回ろうとすれば、サイトの情報を読むだけで一日が終わってしまうに違いない。
そこで本稿では、マイクロソフトのサイトの中から、そしてマイクロソフト以外のサイトから、.NET開発者がよく使うサイト、本当に使えるサイトを厳選して紹介する。
また本稿では、サイトを整理して分かりやすくするために、簡単なジャンル分けを行っている。具体的には、次の三つのジャンルだ。
なお現実的には、これらの複数のジャンルに属しているサイトが多いが、最も特徴的なコンテンツから筆者が独断でジャンル分けしていることをお断りしておく。
以下の記載で、(英語)と注釈が付いているサイトは英語のコンテンツサイトで、それ以外は日本語のサイトだ。また[RSS]は、そのサイトのRSSフィード(RSSリーダーなどのツールを使って、より効率的に情報収集するための仕組み)へのリンクである。RSSリーダーについては、本稿最後の「RSSリーダーを活用しよう!」という項目を参照されたい。
まずは、アプリケーションを構築する上で欠かせない.NETのクラスライブラリの情報や、.NETのコアテクノロジについての技術解説記事などが充実しているサイトを紹介する。この手のサイトは、やはり.NET開発者が最も頻繁に利用する種類のサイトである。
MSDNライブラリは、主に.NET FrameworkクラスライブラリとVisual Studio、SQL Serverに関連する技術情報、サンプルコードなどを含む製品ドキュメントを提供しているサイトである。このサイトは.NET開発を行う限りは必ずやお世話になるだろう。
ここでは日本語と英語(米国)のサイトの両方を紹介しているが、基本的に日本語のサイトを参照すれば事足りる。ただし日本語サイトの内容の多くは英語サイトの内容を翻訳したものであり、一部の日本語コンテンツはその日本語訳が不適切だったり不明瞭だったりする(翻訳自体が行われていない場合もある)。そのような場合には英語サイトの方で原文を確認すればよい。
MSDNホームは、その名の通り、開発者向け情報を提供するMSDN(Microsoft Developer Network)のトップページである。
マイクロソフトが発信する.NET開発関連の最新情報を入手するには、まずここにアクセスするとよい。
MSDNマガジンは、先進的で高度な技術情報を掲載する月刊オンラインマガジンだ。かなりレベルの高い技術情報もたくさん取り上げられているため、先端技術に触れたいと考えるなら、欠かさず読みたいオンラインコンテンツである。
patterns & practicesでは、.NETアプリケーションの構築における一般的なアーキテクチャや共通的な設計パターン、数多くの事例から得られたプラクティス(=実践すべき項目)に関する情報が掲載されている。
特に大規模アプリケーションの構築に携わる.NETアーキテクトなら、ここに取り上げられている情報は一通り知っておきたい。やはり英語版(米国)の方が、公開されている情報は多いが、有用な情報は鋭意、日本語に翻訳されているので、まずは日本語サイトを確認してみるとよいだろう。
Channel 9は、米マイクロソフトが運営するサイト。マイクロソフト開催のイベント/オンラインイベントのストリーミング中継がここで行われるので、年に数回はお世話になるはずだ。加えて、マイクロソフトの開発者へのインタビュー動画などが多数あり、マイクロソフトが開発中の最先端技術に関する情報などをいち早く知ることができる。残念ながら、ほとんどが英語コンテンツだが、スクリーンを見ているだけでも、新機能の動作などについてはある程度は把握できるだろう(字幕を使うなら日本語よりも英語にするのが筆者的にはお勧めだ)。
【Microsoft Virtual Academy】
Microsoft Virtual Academy(以下、MVA)はマイクロソフトが提供するオンライントレーニングサイトだ。MSDNでは主にプログラミング関係のコースが、TechNetではITエンジニア向けのコースが提供される。
スキルを向上させたいという人はまずここを見てみてはどうだろう。
マイクロソフトのエバンジェリストによる日本語でのトレーニングが受けられるので、興味のある分野のコースがあるなら、ぜひ受けてみよう。ゲーミフィケーション的な要素も用意されているので、飽きずに続けられるかもしれない。
@IT/Insider.NETフォーラムは、本稿が掲載されている.NET専門のサイトで、.NETの最新技術情報やC#、VB(Visual Basic)などのプログラミングに関する解説記事、コーディングに役立つ.NET TIPSなどを多数公開している。ぜひこれからも定期的にご利用いただければ幸いである。
Insider.NETフォーラムによる特設コーナーである業務アプリInsiderは、特に業務アプリケーションの.NET開発をターゲットとした技術情報コンテンツを公開している。
Build InsiderはInsider.NETの兄弟サイトだ。Insider.NETは主に業務アプリやそれに関わる技術を取り上げるのに対して、Build Insiderは.NET以外のテクノロジやデバイス関連技術など、より広範な話題/技術を取り上げているのが、両者の大きな違いといえる。
【何かあったら一次情報に当たる】
ここでいう「一次情報」とは、何かの大本になるオリジナルの情報のことだ。プログラミングの世界でいえば、プログラムのソースコードはまさしく一次情報である。しかし、そのプログラムを記述するために使われるプログラミング言語やフレームワーク、プロトコルなどの厳密な定義もまた一次情報といえる。
上記の団体はこうした規格や仕様を標準化しており、それらのWebサイトでは各種の規格や仕様を無償/有償で閲覧/取得できる。同じ仕様書であっても、サイトによってお値段が違っていることもあるので購入時には気を付けよう。また、規格書/仕様書は有償でも、勧告される直前の「ファイナルドラフト」と呼ばれる草案は無償で参照できる場合もある。ファイルナルドラフトと最終的な規格書/仕様書は内容がほぼ同一のことが多いため、取りあえずはファイルナルドラフトで済ませるのも一つの手だ。
例えば、ECMAのサイトではC#言語やECMAScriptなどの仕様書が手に入る(無償)。C#やJavaScript/TypeScriptを日常的に使っている方であれば、これらのドキュメントは手に入れておくとよい。
プログラミング言語やアプリの動作を深く理解したい、ここの動作がどうもよく分からないといった場合に最後にたどり着くのはソースコードだったり言語仕様だったりする。プログラミングの世界に一歩を踏み出した直後には必要はないかもしれないが、本稿で紹介している他の情報源では曖昧な部分をきっちりと理解したいというときがきたら、これらのサイト(やもう一つの一次情報=ソースコードの集積箇所である各種のリポジトリ)を活用しよう。
MSDNライブラリやサポート技術情報のコンテンツは開発時に頻繁に参照することになるが、これらのコンテンツの検索については、検索エンジンであるGoogleを利用した方が使い勝手がよいことが多い。
Googleでは、以下のように、「site:」に続けて検索対象となるサイト名を指定し、その後に(半角スペースを空けて)キーワードを入力することで、そのサイト内のみの検索が行える(この例では「msdn.microsoft.com/ja-jp」内で「writeline」というキーワードの検索を行っている)。
余計な検索結果を省きたければ、このsite:オプションを覚えておくと便利だ。このテクニックはマイクロソフトのサイト以外でもとても便利に使えるので、ぜひとも活用しよう。
例えば、ある機能の実装方法やクラスの使い方が分からないとき、そのサンプルコードがすぐに手に入れば、実際に動作する完成したコードから実装方法を学ぶことができる。ここでは、そのようなサンプルコードや実装技術情報が充実しているサイト、加えてオープンソースで開発が進められているプロジェクトのリポジトリとなっているサイトをいくつか紹介しよう。
CodeZineは、翔泳社が運営するサイトで、ソースコードを含む実装寄りの技術情報を主に提供しており、実際に何かを開発する際に参考にできる情報が多い。
基本スタイルは読者から投稿された記事を順次公開するシステムになっている。優れた.NET開発ノウハウを持っている読者諸氏は、日本の.NET開発を盛り上げるためにも、ぜひ投稿してみてはいかがだろうか。
【マイクロソフトによるオープンソースなプロジェクトのリポジトリ】
.NET Frameworkの世界でも、今ではオープンソース的なアプローチでのプロジェクト開発が盛んに行われている。.NET Foundationのサイトでは、Roslyn/ASP.NETなど、.NET Foundationの管理下にあるオープンなプロジェクトが紹介されている。.NET Foundationに含まれる各プロジェクトの多くは現在ではGitHub上でホストされるようになってきている(CodePlexというマイクロソフトがホストしているリポジトリも存在するが、CodePlexからGitHubへのプロジェクトの移行も盛んだ)。
.NET Foundationは主として.NETを対象としたプロジェクトを取り扱っているが、Microsoft Open Technologiesではマイクロソフトプラットフォームと他のプラットフォームとのブリッジとなるプロジェクトに注力している。
オープンソースな開発への参加/貢献、.NET技術の最新動向、クロスプラットフォーム/クロスデバイスなアプリ開発などに興味のある方はウオッチしてみてもよいだろう。
【プログラミングTIPSを提供するサイト】
ちょっとした開発テクニックをコンパクトに記事化した“TIPS”は、実際の開発でヒントとなったり、そのまま流用できたりすることが多い。日本ではこのようなTIPSコンテンツを提供するサイトが非常に多いが、それはやはりTIPS情報の一つ一つが非常にコンパクトなので、個人的にも情報公開しやすいからだろう。
TIPS情報には、現実的にはGoogleなどの検索エンジンから探して、たどり着くケースが多いだろうが、見つかりにくい場合はこれらのTIPSサイト内を探してみるとよいだろう。
GitHubはソフトウエアプロジェクトの円滑な共同開発を可能にする非常に有用なWebサービスだ。また、多数のオープンソースプロジェクトのリポジトリという側面も持っている。
その一方で、デスクトップ版の開発環境であるVisual Studio 2013やクラウドベースのチーム開発環境であるVisual Studio Onlineではバージョン管理システムとしてTeam Foundation Serverに加えて、このGitHubをサポートしている。また、上述した通り、マイクロソフト自身がオープンソースなプロジェクトをGitHub上で展開していることからも、自身はオープンソースにはあまり興味がないという場合でも、これからのVisual Studio開発ではGitHubについての知識が必須となってくるかもしれない。
以上で紹介してきたサイトの多くは、メディアとして一方向の情報提供を行うものだ(最近ではSNS的要素を兼ね備えるサイトも増えてはいる)。しかし、技術的な質問をしたい場合や、よりインタラクティブに情報交換したい場合などは、掲示板(BBS)やブログ、情報共有サービスなどのオンラインコミュニティが役立つ。
QA@ITは、@ITが運営する掲示板だ。
以前に運営されていたInsider.NET会議室および.NET開発者中心(元VB研)会議室はQA@ITへと移行したが、過去の質疑応答は、「Insider .NET会議室」「.NET開発者中心(元VB研)会議室」「旧@IT会議室」などからアクセス可能だ。「ディレクトリ分類による検索」(=テクノロジごとにスレッドを分類している)も提供している。
Qiitaはプログラミング関連の情報を共有するためのサービスだ。Qiitaには「ストック」機能があり、誰かが書いたTIPSが便利だと思ったらそれを「ストック」し、自分が書いたTIPSを誰かが便利だと思ったらそれが「ストック」される。ストック数が多ければ、その情報を便利(あるいは興味深い)と捉えた人が多いといえる。このストックという行為を中心に良質な記事や興味をそそられる話題が浮かび上がるような仕組みになっている。
このサイトからはホットな話題が巻き起こることがよくある。プログラミングに対する理解を深めるならウオッチしておいてもよいだろう。Qiitaからのお知らせメールを受け取るように設定しておくと、ストック数が多かった投稿を定期的に知らせてくれるので、その一覧からおもしろそうな投稿を閲覧し、関連する投稿へと移動することで知識を広めてもよいし、「今注目の技術はこれかな」といった動向を把握するのにも使えるだろう。
MSDNフォーラムは、Visual Studioを提供するマイクロソフトが公式にサポートする掲示板である。特に製品に密接に関連する質問は、この掲示板を利用するとよいだろう。
Stack Overflowは、.NETをはじめとする技術系のQ&Aサイト/質問サイトである。特に、プログラミング時に生じた問題や疑問などの質問が多い。日本語サイトも開設され、活況を呈している。日々発生する細かな問題を解決したい場合には、参考にしたいサイトだ。
上記のサイトでは、マイクロソフト社員によるブログの新着記事がまとめて表示される。ブログでしか公開されないような詳細な情報や、他では公開されていない最新情報も多いので、そのような情報をチェックしたい先進的な.NET開発者は、気になる社員のRSSフィードを購読するとよい。
【ブログ形式のメディア】
InfoQは、各種プロダクトやテクノロジの技術プレビュー版(=アルファ版)、ベータ版レベルでの最新技術情報や、ニュース、オピニオンなどが提供されている、アルファギーク(=アルファ版などの早い段階で技術に興味を持ち、技術の方向性を考える先端的で飽きっぽい開発者)にはうってつけのサイトだ。
RSSフィードも用意されているが、個人ごとにRSSフィードを提供する仕組みになっているようなので、購読した場合はサイトを訪れて確認してみてほしい。
またPublickeyは、InfoQと同等のブログ形式メディアで、最新技術の速報やはやり技術(セミナーレポートなど)に関するブログ記事が1日数本のペースで公開されている。クラウド開発や最新Web技術の動向をウオッチしたい開発者にはお勧めである。
Microsoft Connectは、マイクロソフト製品に関するフィードバックを行うためのサイトで、.NET FrameworkやVisual Studio関連のバグの報告や新機能の提案もここで行える。
もしマイクロソフトの開発製品(クラスライブラリも含む)でバグを見つけたら、ここで報告するとマイクロソフト社員が対応してくれ、次期バージョンでの対応や回避策などの応答が得られることがある。日本語で入力できるので、必ずしも英語が読み書きできる必要はない。また同じバグが報告されていないかここで検索すれば、そのバグの回避策などの情報を得られることがある。
Visual Studio UserVoiceでは、Visual Studioユーザーからの声にVisual Studio Teamが直々に答えてくれる。ここからVisual Studioの将来が垣間見えることもあるので、興味のある方は注目しておこう。
【学習サイト】
プログラミングをオンラインで学習できるサイトも数多く存在する。その種類も多彩であり、ビデオベースのものもあれば、穴埋め方式のものもあるし、テキスト+実習方式のものもある。上記に示したもの以外にも多くのサイトがあるので、プログラミング初心者の方は、自分に合ったもの(学習方式、学習内容など)を見つけて活用してみてはいかがだろうか。
【その他】
新しい情報を入手するにはTwitterなどのSNSメディアも活用できる。例えば、@msdevjpは、日本の開発者向け情報に加えて、マイクロソフトの著名エバンジェリストのつぶやきをリツイートしてくれる。最初はこのアカウントをフォローしておき、そこから自分の興味に合った人たちを随時フォローしていくといった使い方があるだろう。
はてなブックマークの人気エントリ(hotentry、通称「ホッテントリ」)は、ある時点で人気のブックマークを紹介してくれる。今どんな話題に注目が集まっているかを知りたいという方はチェックしておこう。もちろん、Twitterのアカウント(@hatebu)があるので、ものぐさな人は、フォローをしておけば、人気エントリがTLを賑わしてくれるようになるはずだ。
Microsoft NewsとAll About Microsoftはその名の通り、マイクロソフトの動向に関するニュースを頻繁に更新してくれるサイトだ。英語サイトではあるが、ここ(や他のニュースサイト)で報じられたことがきっかけとなって、上記のはてなブックマークの人気エントリで取り上げられるニュースもあるので、最新情報を誰よりも早くキャッチしたいという方はチェックしておこう。
MSDNのサイトを見ていると、たまに以下のようなページが表示されることがある。
もちろん、英語に強ければ、英語のまま読み進めてもよい。が、こうした場合には翻訳サービスを使うのも一つの手だ。例えば、Google翻訳を使う。
すると、右側のテキストボックスにそのサイトを日本語訳してくれたページのURLが表示されるので、これをクリックする。
このような機能はGoogle以外にも多くの検索サイトで提供されているので、お好みのものを使用してほしい。それから、英語以外の外国語で記述されているWebページの内容を知りたいという場合、上記のページで日本語に翻訳が可能だが、そうすることはお勧めしない。というのは、日本語がメチャクチャになることが多いからだ。
そういう場合は、そのページを英語に翻訳することをお勧めする。後は自分の英語力に賭けよう。少なくともメチャクチャな日本語を読むよりは、英語のテキストの方が内容を把握しやすい。もっとも、技術文書で英語のテキストが提供されていないということはまずないであろうから、これが実地に役立つかは微妙だ(お好きなスポーツチームの情報を得たいといった場合には役立つかもしれない)。
サイトの多くは、新着記事の要約情報などを「RSS」(もしくは「Atom」)と呼ばれるXMLファイルで配信している。そこで「RSSリーダー(もしくはRSSアグリゲーター)」と呼ばれるRSS収集ツールを使えば、これらの情報(RSS)を定期的に収集して、Webサイトを開くことなく記事をまとめて読める。
RSSリーダーとしては、さまざまなものが無償で入手可能であるが、現在ではFeedlyが一番のお勧めだ。
FeedlyはWebアプリなので、どこから(どのPCから)でも同じデータにアクセスできるというメリットがある。Feedlyが秀逸なのは、キーボード操作で高速に読める点である。iPhoneなどのスマートフォンにも対応している。
本稿で紹介したサイトの多くがRSSを配信しているので、日常的に読みたいサイトはそれをRSSリーダーに登録しておくと新着情報を効率的かつ網羅的にチェックできる。
今回は技術情報が入手できるオンラインサイトを説明したが、もちろんここで紹介したものはほんのごく一部でしかない。しかしまずはこれらのサイトをチェックするとともに、必要な情報を的確に検索できるテクニックを磨いてさえおけば、たいていの場合で事は足りるだろう。現在では非常に多くの情報を簡単に見つけることができるが、その取捨選択に余計な時間を取られないようにしたいものである。
また、.NET開発の書籍も多数出版されており、これらの書籍から情報収集することも考えられる。書籍のメリットはやはり携帯できるところにある。出勤や帰宅の電車の中などでゆっくりと情報収集したい場合などでは、このような書籍から情報収集するのもよいのではないだろうか。
Copyright© Digital Advantage Corp. All Rights Reserved.