.NET(以下VS.NET)について、そのセットアップ方法から基本的な操作方法、アプリケーション管理のための手法を紹介する。1.0なのだ」とはASP.NETを語る際によくいわれる言葉でもあり、事実、レガシーASP(ASP3.0以前)からASP.NETに至る変更点はあまりにも膨大だ。パフォーマンス」といった、昨今のWebアプリケーション開発には欠かせない新たなソリューションの裏づけを伴っているのが、ASP.NET採用を促す大きな魅力の1つでもあろう。本稿ではその数ある変更点の中でも最大の特性の1つ、「コードとレイアウトの分離」という点にポイントを絞り、紹介することにしよう。レガシーASPはHTMLのコード中にスクリプト・コードを埋め込む——いわゆる「ページ・インライン」モデルを採用することで、極めて直感的な開発モデルを実現した。そのシンプルな概念が多くのユーザーの支持を得て、Webの黎明期を支える重要な要因となったことは疑いようもない事実だろう。その後、Web「ページ」がWeb「アプリケーション」へ、そしてWeb「システム」へとスケーラビリティの上でも複雑度といった観点からも飛躍的な進化を遂げるにつれ、旧来のページ・インライン・モデルはその構造的な弱点をさらけだすことになる。複雑なコードがHTMLという「レイアウト構造」の中に直接埋めこまれることで、コードの可読性は著しく低下し、その後の保守・改定にも大きく影響を与えることとなったのである。ページに対するユーザー・ニーズが高度化する中、デザイン、コンテンツ、ロジックがそれぞれに複雑化し、それぞれの専門家を必要とするようになってきたという事情もある。そんなとき、レイアウトとロジックが(もちろん、コンテンツも)渾然一体となった旧来のページ・インライン・モデルは明らかに分業の弊害となる。レガシーASPのコードはスパゲッティ・コードしかし、ASP.NETでは「イベント・ドリブン(イベント駆動型)」モデル(「ページがロードされる」、「ボタンがクリックされる」などといったイベントをトリガとしてコードが呼び出される方式)を採用することで、レイアウトとロジックを明確に分離した。これはASP.NETの単なる1特性であるというに留まらず、開発モデルの「パラダイム・シフト」をも意味するものなのである。ASP.NETは「コード」と「レイアウト」を分離まとめると、ASP.NETの特性として以下のような点が挙げられる。Windowsアプリケーションとのシームレスな開発そもそもページ・インライン・モデルとは、Web環境に限定された「特殊な」プログラミング・モデルだった。Basic(VB)やC++、Javaなどのアプリケーションはいずれもイベント・ドリブン・モデルを旧来より採用しており、そうした意味ではWebの世界だけが鬼ッ子的な存在であったといえる。Web開発が特殊な人々に限られたものであった時代には、それはさほど問題になるものではなかった。Web開発がしごく当たり前なシステムの選択肢となっている昨今、特殊なプログラミング・モデルの存在は、開発モデルの習得という意味でプログラマーにとって大きな負担となる。ASP.NETでは、Windowsアプリケーション同様のシームレスな開発モデルを提供する。これはプログラマーの習得負荷を大幅に削減し、全体効率性を高らしめるものでもある。高度な分業の実現ページ・インライン開発においては、コード/ロジック/コンテンツの作成を同時に進行させるのはきわめて困難だった。流れ作業的な作業工程を踏むか、あるいは最大限に部品化を行うことで並行して作業を進め、最終的に各担当で再度クロス・チェックを行う必要があったのである。それでも、レイアウトやロジックの変更時には(たとえレイアウトのみの変更であっても)再度各担当の対応作業・チェックが必要となるケースが少なくなかった。コードとレイアウトとが明確に分離されたASP.NETでは、そのようなオーバヘッドは不要だ。それぞれが並行して作業を進めることで、高度な開発生産性を保障する。プレゼンテーション層構築の容易化プレゼンテーション層(すなわち、ユーザー・インターフェイス)は、アプリケーションを構築する際に、もっとも変動要素が激しいレイヤだ。簡単な文言の変更からデータ項目の追加/削除、デザインの更改まで、すべてがプレゼンテーション層の変更に直結する。2.にも関係するが、旧来のASPではそうした変更がそのままロジックの更改につながり、すべての局面においてプログラマーが手をかける必要があったが、ASP.NETではデザイナーや編集者が容易にフォーム・デザイナ上で変更を行うことができる。7で追加された新機能の中から、「数値リテラル構文の改善」と「ローカル関数」を紹介する。TranslatorはPowerPoint用のアドイン。