概要
(書きかけ)
ラウンドトリップ - CGI プログラムなんかだと、 - 次の処理に必要な情報は一度全部 HTML に書き出しておく - ユーザがボタンを押した際とかには、 post されたデータの解析から処理をする必要がある というように、ラウンドトリップを意識したプログラミングが必要 ↓ - ASP.NET なんかだと、 そのあたりの面倒な処理はフレームワークが勝手にやってくれる。 プログラマは意識する必要なし。 - ASP.NET を使えば、Windows プログラムとほぼ同じ感覚で ウェブアプリ構築可能。 - Page_Load とかのイベントハンドラを書くだけ。 Web フォーム どういうイベントがどういう順で起こるか http://msdn2.microsoft.com/ja-jp/library/ms178472(VS.80).aspx Web アプリケーションの状態 - HTTP は状態を持たないプロトコル - ページからページに遷移したときに、プログラムの状態は持ち越されない。 - ユーザの状態を保持したければ、ファイルに書き出したり Cookie を使ったり。 ↓ - ASP.NET では、Web アプリケーションの状態がサーバ上に残る - Web アプリケーションの設定 - IIS の設定で「仮想ディレクトリ」を作る際に、 「ASP などを実行する」をチェックして仮想ディレクトリを作ると、 その仮想ディレクトリ全体が1つの Web アプリケーションになる。 - 同一 Web アプリケーション内のページは同じ状態を共有する。 - 一定時間以内の同一ユーザ・同一ブラウザからのアクセスに対して、 1つのプロセスがずっと生き続ける。 - 通常はメモリ上に状態が残る。 設定によっては SQL サーバや Cookie を介した状態の共有も可能。 ↓ - 別の Web アプリ(仮想ディレクトリ)間でのデータ共有は無理 - それをしたい場合は、ファイルや Cookie、DB サーバを介して