normalian blog

Let's talk about Microsoft Azure, ASP.NET and Java!

「.NET開発テクノロジー入門 Visual Studio 2010対応版」の書評なんぞをしてみる

新年あけて早々のブログはWindows Azureデータセンタに関する話題だったが、新年2回目の更新は今をときめく書籍である「.NET開発テクノロジー入門 Visual Studio 2010対応版」についての紹介をしたいと思う。

.NET開発テクノロジー入門 VISUAL STUDIO 2010対応版 (MSDNプログラミングシリーズ)

.NET開発テクノロジー入門 VISUAL STUDIO 2010対応版 (MSDNプログラミングシリーズ)

同書は、.NET Framework 4とVisual Studio 2010のリリースによって一新された、.NET開発手法を網羅的に解説してくれる良書である。

はじめに

同書はマイクロソフト株式会社のエバンジェリストチームが執筆しているため、いわゆる「中の人クオリティ」が約束されている。詳細な解説は以下で述べるが、手に取って損はない書籍であることは間違いない*1
本書を利用して、是非最新の開発手法を身に着けて頂きたいと思う。

対象読者

勝手な私見では、同書の通読を勧めたい読者は以下だと考えている。

  • 今までも.NET開発を行っており、最新の.NET開発手法に興味がある開発者
  • WebFormやWinForm/WPF等の単一コンポーネントに詳しく、他の.NETコンポーネントを学びたい開発者
  • 最新技術を俯瞰的かつ網羅的に眺めてみたいアーキテクト

同書は.NET開発手法を丁寧に紹介しているが、.NET Frameworkをまったく知らない人間には流石には難しいというのが私の印象だ。

解説

冒頭でも述べた通り、Visual Stuido 2010と.NET Framework 4を利用した最新の開発手法を網羅的かつ俯瞰的に学習することができる。同書の解説する.NET Frameworkの開発コンポーネントと私の所感について記述する。

  • ASP.NET WebForm/MVC
    • 同章では、ASP.NETの基礎〜最新のASP.NET MVCについての解説を行っている。ASP.NET AjaxjQuery等、今までの.NET Frameworkを利用したWeb開発の要素技術の学習が容易に行うことができる。また、WebFormとMVCの特徴と差異についても述べているため、開発コンポーネント選定の際にも有用な情報が記載されている。
  • WPF/Silverlight
    • 本章を通読して強く感じたことは「派手なエフェクトがメインなイメージのRIAなのに内容が硬い!」ということだ。私見だが、既存のRIA開発における情報は、いわゆるBtoC的な「見た目が派手なサンプル」に主眼を置いた情報が多い。ところが、同書はSilverlight 4から本格的に対応が始まった「業務アプリ開発」について、WPFSilverlightの利用を検討する際に有用な情報を提供している。また、WPFSilverlightの差異についても解説しているため、両者の違いや特性の差異を改めて学習するためにも有用だ。
  • WCF
    • 「エッセンシャル WCF」を除き、本章程にWCFの開発手法について丁寧に記載いている日本語書籍は存在しないといえるだろう*2。その「エッセンシャル WCF」ですら最新の.NET Framework 4には対応していないため、最新のWCF開発を行うためには同章の通読は避けて通れないと言えるだろう。「複雑」や「わかりにくい」という悲鳴を良く聞くWCFだが、同章はWCFの学習に大きな手助けになるだろう。同章最後に記載されているWCF RIA Servicesの解説も非常にわかりやすい。
  • ADO.NET LINQ
    • 同章では、アプリケーション開発で最も重要であるデータアクセス手法について紹介している。本ブログをチェックしているようなマニアなら、最新の永続化データアクセス手法はADO.NET Entity Frameworkであることは既知だと思うが、そこに至るまでは様々な変遷が存在する。ADO.NET、LINQ to SQL、LINQ to DataSet等々といったLINQの全体像を解説したうえで、最新のADO.NET Entity Framework 4での開発手法を紹介している。
  • 並列処理
    • 同章では、.NET Framework 4から新規に追加された並列機能についての解説を行っている。昨今のマシンはCPUコア数が増え、マシンパワーを最大限に利用するためには並列処理の記述が必須になっている。一般的にはマルチスレッド等を利用して実現する並列処理の機能を、.NET Frameworkは一つの開発コンポーネントとして提供している。まだまだ日本語解説の少ない並列処理だが、本章を通読することで「位置づけ」と「開発手法」の習得ができるだろう。

注意点

同書では「.NET開発手法を網羅的かつ俯瞰的に眺められる」旨を述べたが、Windows Azure Platformを利用した開発については解説していない。Windows Azure Platformの開発手法は変遷が激しく、内容を盛り込んだとしても開発手法がすぐに陳腐化する恐れがあるための対応だったようだ。事実、2010年11月(同書出版日と非常に近い)にWindows Azure SDK1.3がリリースされたが、VM RoleのサポートやFull IISのサポートによって開発手法に大きな変更が加わっている。
同書で学習した知見をもとにWindows Azure Platformで開発を行うためには、別途ドキュメントを参照する必要がある。私見だが、お勧めのサイトを以下に記載する。

*1:私自身、「何故もっと早く読まなかったのか…orz」と後悔した程だ

*2:むしろ存在しているならば私に紹介してほしい