メインセッション #3 はじめてのASP.NET - 楽しいアプリ制作の会

はじめての
ASP.NET
楽しいアプリ制作の会 #1
TWorks
自己紹介

TWorks
> http://tanoapp.tworks.jp/ (楽アプ制作の会)
> http://www.tworks.jp/ (個人の)

エセ関西人
> 静岡→三重(人生半分)→大阪→兵庫(いまここ)

今の仕事
> Microsoft.NETを筆頭にメジャーな言語(Java除く)で
いろいろプログラムしてます
> 来年36歳、プログラマ35歳限界説に挑みます
アジェンダ







Microsoft.NET Framework概要
開発環境
ASP.NET 開発
画面遷移
検証コントロール
掲示板アプリ作成
まとめ
Microsoft.NET Frameworkって?

Microsoftが作ったフレームワーク
.NET とか .NET Framework と省略されることが多いです

「さまざまなプログラミング言語」で
「開発から実行まで」をサポートしてくれます

現在のバージョンは2.0/3.0/3.5(後述)

プログラミング言語は C++/C#/Visual Basic

統合開発環境はVisual Studioが代表
Microsoft.NET Framework 全体像
.NET Framework 3.5
BCL追加
LINQ
WPF追加
WCF追加
ASP.NET AJAX
WF追加
.NET Framework 3.0
Windows
Presentation
Foundation
Windows
Communication
Foundation
Windows
Workflow
Foundation
Windows
CardSpace
.NET Framework 2.0
Windows.Forms
Base Class Library 2.0
ASP.NET
ADO.NET
共通言語ランタイム 2.0
ASP.NET開発/実行環境

統合開発環境「Microsoft Visual Studio」
> 最新バージョンは 2008 (SP1)
> 無償版と有償版があります(違いは後述)

WebサーバはInternet Information Server (IIS)
> Visual Studio付属の開発サーバ
> Windows XP付属のIISでもOK
Visual Studioの種類(超簡略版)
機能
Express
ライセンス
商用開発
言語
Web開発
無償
Visual
Std/Pro/Ent
有償
可
VB / C#
Visual Web
Developer
VB / C# / C++
Visual Studio
統合環境
Studio 2008 製品ラインの概要
http://www.microsoft.com/japan/msdn/vstudio/products/vs08/compare.aspx
Express
Edition ダウンロード
http://www.microsoft.com/japan/msdn/vstudio/express/ (オンライン)
http://www.microsoft.com/japan/msdn/vstudio/express/maninstall/2008/default.aspx (オフライン)
簡単なASP.NETアプリを作成
~デモ~
ASP.NETの特徴

GUIベースで開発可能
> ページにUI (サーバコントロール)を配置
> デバッグ、ステップ実行も容易

イベントドリヴンなコーディング
> UI が○○されたときに何をするか、を記述
(StrutsのようなMVCモデルをモデルドリヴンといいます)

ページ自体もサーバコントロール
> ページがサーバで読み込まれたとき (Page_Load)
> ページがサーバ側の最終処理を行うとき (OnPreRender)
などのイベントが発生
using
using
using
using
using
using
System;
System.Collections.Generic;
System.Linq;
System.Web;
System.Web.UI;
System.Web.UI.WebControls;
public partial class _Default : System.Web.UI.Page
{
protected void Page_Load(object sender, EventArgs e)
{
}
protected void Button1_Click(object sender, EventArgs e)
{
this.TextBox1.Text = "たのアプへようこそ!";
}
}
Pageオブジェクトの
イベントハンドラ
Buttonオブジェクトの
イベントハンドラ
画面遷移の特徴

リダイレクトで実現

リダリレクトは2種類
> クライアント側
Response.Redirect( string url )
> サーバ側
Server.Transfar( string path )
画面遷移
~デモ~
Response.Redirect
ブラウザ
Webサーバ
ボタンClick
Default.aspx
Response
.Redirect
リダイレクト処理
Default2.aspx
Default2表示
ラウンドトリップは2回発生
Server.Transfer
ブラウザ
Webサーバ
ボタンClick
Default.aspx
Server
.Transfer
ラウンドトリップは1回
Default3.aspx
Default3表示
楽しいアプリ制作の会 #2に続きます。