Download pdf - 20101112 tf web_hirookun

Transcript
Page 1: 20101112 tf web_hirookun

© 2010 Microsoft Corporation. All rights reserved.© 2010 Microsoft Corporation. All rights reserved.

マイクロソフト株式会社デベロッパー & プラットフォーム統括本部エバンジェリスト 奥主 洋 (おくぬし ひろし)

http://blogs.technet.com/hirookun/

1

Page 2: 20101112 tf web_hirookun

© 2010 Microsoft Corporation. All rights reserved. 2

Page 3: 20101112 tf web_hirookun

© 2010 Microsoft Corporation. All rights reserved.

本日の時間割

3

時間 内容

18:30 - 19:00 受付開始

19:00 - 19:30過去:『マイクロソフトの Web 技術 振り返り』これまでのマイクロソフトの Web 開発技術の振り返りと俯瞰して全体像を取り上げて整理します。

19:30 - 20:00

現在:『ASP のこれまでと最新環境における ASP 再利用術 ~今もできること、やっぱりできないこと ~』最新環境において ASP はどう利用できるか、どういうところがポイントになるのかを移行抜きにして語ります。

20:00 - 20:05 休憩

20:05 - 20:50

未来:『ASP を超えて次のステージへ ~これから目指すべきこと~』マイクロソフトの最新テクノロジーを踏まえ、 どう技術的な移行、新しい技術の習得をしていくべきなのか、整理して解説します。

20:50 - 21:00 Q&A

Page 4: 20101112 tf web_hirookun

© 2010 Microsoft Corporation. All rights reserved. 4© 2010 Microsoft Corporation. All rights reserved.

4

Page 5: 20101112 tf web_hirookun

© 2010 Microsoft Corporation. All rights reserved. 5

Page 6: 20101112 tf web_hirookun

© 2010 Microsoft Corporation. All rights reserved. 6

Page 7: 20101112 tf web_hirookun

© 2010 Microsoft Corporation. All rights reserved. 7

橋本龍太郎内閣発足

横山やすしさん ご逝去

将棋 羽生善治さん 史上初の7冠

りんかい線 新木場駅 開業

東京ビッグサイト 開場

Yahoo! Japan が検索サービス開始

森且行さんが SMAP を脱退

NINTENDO64 発売開始

クローン羊 ドリー生まれるO157の集団食中毒発生

渥美清さん ご逝去

民主党 結成

清原 和博 選手FAで巨人へ

携帯電話、PHS の契約数急増

アトランタ オリンピック

貴乃花が 春・夏・名古屋・秋 場所で優勝

F1 はウィリアムズのデイモン・ヒルが優勝

Mr.Children の「名もなき詩」

今井美樹さん 「PRIDE」

Every Little Thing デビュー

映画 インデペンデンス・デイ

ロング・バケーション

Page 8: 20101112 tf web_hirookun

© 2010 Microsoft Corporation. All rights reserved. 8

Page 9: 20101112 tf web_hirookun

© 2010 Microsoft Corporation. All rights reserved. 9

Active Server Pages 1.0(IIS 3.0)

1996年12月

Active Server Pages 2.0(IIS 4.0)

1997年9月

Active Server Pages 3.0(IIS 5.0)

2000年11月

Page 10: 20101112 tf web_hirookun

© 2010 Microsoft Corporation. All rights reserved. 10

Windows Distributed interNet Applications

Page 11: 20101112 tf web_hirookun

© 2010 Microsoft Corporation. All rights reserved.

スタックでちゃんと理解しよう!

OS

Web Server

Presentation

Logic

Data Access

DatabaseSQL Server 2000Access/.mdb

SQL Server 2008/R2

(Access/.accdb)

IIS 5.0 IIS 7.x

.NET Framework

Active Server Pages(.asp)

ASP.NET 4

Visual Studio 6.0

Visual Studio 2010

Visual Studio 2005/2008

11

Page 12: 20101112 tf web_hirookun

© 2010 Microsoft Corporation. All rights reserved.

スタックでちゃんと理解しよう!

OS

Web Server

Presentation

Logic

Data Access

DatabaseSQL Server 2000Access/.mdb

SQL Server 2008/R2

(Access/.accdb)

IIS 5.0 IIS 7.x

.NET Framework

Active Server Pages(.asp)

ASP.NET 4

Visual Studio 6.0

Visual Studio 2010

Visual Studio 2005/2008

12

Page 13: 20101112 tf web_hirookun

© 2010 Microsoft Corporation. All rights reserved.

想えば遠くへ来たもんだ

Webサービス

SOA

マイクロソフトの基盤は一貫して同じスキームで進化してきた。

“.NET”

13

Page 14: 20101112 tf web_hirookun

© 2010 Microsoft Corporation. All rights reserved.

ASP 開発者は戸惑ったはず

• 技術情報の発信はほぼ

• 営業が言ってくるのも

• セミナーを受けても

• マイクロソフトがもう支援してくれない?!

• 資産はいっぱいあるし、どうしろと?!

• さらに ASP.NET もどんどん世代が進む

14

Page 15: 20101112 tf web_hirookun

© 2010 Microsoft Corporation. All rights reserved.

Active Server Pages の弱点

• UI とロジックが混在してしまう

• 何をやるにしてもコーディングが必要

• スクリプト言語のみサポート

• VB6 の COM(Component Object Model)

コンポーネントの弱点をそのまま引き継ぐ

15

Page 16: 20101112 tf web_hirookun

© 2010 Microsoft Corporation. All rights reserved.

Active Server Pages の弱点

• UI とロジックが混在してしまう

• 何をやるにしてもコーディングが必要

• スクリプト言語のみサポート

• VB6 の COM(Component Object Model)

コンポーネントの弱点をそのまま引き継ぐ

16

視認性は悪くないが、メンテナンスが非常にしにくい

ロジックを VB6 で作成できたが基本的に全部書く

COM を開発しなければ残りは全部スクリプト

VB6 プログラマーに Web への道を拓いたが、同時実行処理の難度が実は高い → 失敗

Page 17: 20101112 tf web_hirookun

© 2010 Microsoft Corporation. All rights reserved.

あらためて。.NET が登場した理由

• 相互運用性

• 共通中間言語、共通言語ランタイム

• データ型の統一、複数の言語を用いた開発

• 基本クラスライブラリ

• 配置(DLL Hell の解消)

• 様々な権限レベルでの実行

17

Page 18: 20101112 tf web_hirookun

© 2010 Microsoft Corporation. All rights reserved.

アプリケーションサーバーの利用意向【設問】主要なアプリケーション プロジェクトの中で利用されているアプリケーション サーバーをお答えください。(単一回答)

Windows Server と.NET の利用が2009 年に大幅躍進

「2009 Mission Critical North American Application Platform Study」p20, 21, 82

http://www.microsoft.com/net/CaseStudies/MissionCriticalApps/Default.aspx

日本は含まれていません。下記サイトで入手可能。

資料にグラフ掲載許可が得られませんでした。

Page 19: 20101112 tf web_hirookun

© 2010 Microsoft Corporation. All rights reserved.

.NET に進んでいただきたい理由

• 保守・安定 の価値観

• 確かに手軽である、心地いい

• 新しいことに手を伸ばすのは勇気がいる

• 最先端をやっているワクワク感がない

• 技術者として差別化が難しい

• 他の国の技術者はもっと貪欲である

19

Page 20: 20101112 tf web_hirookun

© 2010 Microsoft Corporation. All rights reserved.

スタックでちゃんと理解しよう!

OS

Web Server

Presentation

Logic

Data Access

DatabaseSQL Server 2000Access/.mdb

SQL Server 2008/R2

(Access/.accdb)

IIS 5.0 IIS 7.x

.NET Framework

Active Server Pages(.asp)

ASP.NET 4

Visual Studio 6.0

Visual Studio 2010

Visual Studio 2005/2008

20

Page 21: 20101112 tf web_hirookun

© 2010 Microsoft Corporation. All rights reserved. 21© 2010 Microsoft Corporation. All rights reserved.

21

Page 22: 20101112 tf web_hirookun

© 2010 Microsoft Corporation. All rights reserved.

革新と互換性~ASP はそのまま動くケースも多い~

• マイクロソフトはこの相反する二つのテーマと常に格闘している

• 情報発信はともかく製品は互換対応

• ASP 資産を見捨てているわけじゃない

• OS の革新の影響はある

–よりセキュアでないといけない

–既定で動かない機能がある

22

Page 23: 20101112 tf web_hirookun

© 2010 Microsoft Corporation. All rights reserved.

ASP エンジンの互換性は?

• は64ビットの環境のみ

• エンジンは 32ビット、64ビットともに動作する

• IIS7.x としては 32ビット互換ワーカープロセス機能

PresentationActive Server Pages(.asp)

OS

Web Server IIS 7.x

23

Page 24: 20101112 tf web_hirookun

© 2010 Microsoft Corporation. All rights reserved.

dllhost.exe

ISAPI 拡張機能

ISAPI フィルタ

Web アプリ

lsass.exe

ご参考 : IIS 5 のアーキテクチャー(IIS 6 の IIS5.0 プロセス分離モードも同じ)

24

Svchost.exe

TCPIP.sys

dllhost.exe(プール)

Inetinfo.exe

アプリケーション実行プロセス

カーネル モード

ユーザー モード

プロセスの管理

FTP

IISAdmin

NNTP

SMTP

WWW/WASM ISAPI 拡張機能

dllhost.exe

ISAPI 拡張機能

アプリケーション実行プロセス

Metabase

.bin

Winsock

Web アプリWeb アプリWindows認証

ISAPI 拡張機能

ISAPI フィルタ

Web アプリ

Web アプリ

SSL

Page 25: 20101112 tf web_hirookun

© 2010 Microsoft Corporation. All rights reserved.

w3wp.exew3wp.exe

ご参考 : IIS 6 のアーキテクチャー(ワーカー プロセス分離モード)

Svchost.exe

HTTP.sys

w3wp.exeInetinfo.exe

カーネル モード

ユーザー モード

プロセスの管理(ヘルス モニタリング、リサイクリング、保護)

FTP

IISAdmin

NNTP

SMTP

WWW/WASM ISAPI 拡張機能

ISAPI フィルタ

アプリケーションプール

Listener Response Cache

HTTP Requestsユーザー アプリケーションとサーバーの分離

プロセスの分離

Web アプリ

w3wp.exe

ISAPI 拡張機能

ISAPI フィルタ

Web アプリ

Web アプリ

w3wp.exe

ISAPI 拡張機能

ISAPI フィルタ

Web アプリ

Web アプリ

アプリケーションプール

TCPIP.sys

lsass.exe

Windows認証

SSL

Metabase

.xml

25

アプリケーションプール (Web ガーデン)

Page 26: 20101112 tf web_hirookun

© 2010 Microsoft Corporation. All rights reserved.

IIS 6 互換モード設定

26

Page 27: 20101112 tf web_hirookun

© 2010 Microsoft Corporation. All rights reserved.

w3wp.exew3wp.exe

ご参考 : IIS 7 のアーキテクチャー

Svchost.exe

HTTP.sys

アプリケーションプール

w3wp.exeInetinfo.exe

カーネル モード

ユーザー モード

プロセスの管理(ヘルス モニタリング、リサイクリング、保護)

FTP

IISAdmin

SMTP

WWW ISAPI 拡張機能

ISAPI フィルタ

アプリケーションプール

Listener Response Cache

HTTP Requestsユーザー アプリケーションとサーバーの分離

プロセスの分離

Web アプリ

w3wp.exe

ISAPI 拡張機能

ISAPI フィルタ

Web アプリ

Web アプリ

w3wp.exe

ISAPI 拡張機能

ISAPI フィルタ

Web アプリ

Web アプリ

アプリケーションプール

TCPIP.sys

lsass.exe

SSLWindows認証

WAS

ApplicationHost

.config

27

Page 28: 20101112 tf web_hirookun

© 2010 Microsoft Corporation. All rights reserved.

IIS 7 互換モード設定

28

Page 29: 20101112 tf web_hirookun

© 2010 Microsoft Corporation. All rights reserved.

いくつかのポイント

① ASP は既定でインストールされない

② 既定でオフになっている機能が多い

③ アクセス制御が厳しくなっている

④ Access のドライバーは 64 ビット対応?

⑤ Classic ASP で親パスは使えない

⑥ ASP.NET の複数バージョンと ASP は共存

29

Page 30: 20101112 tf web_hirookun

© 2010 Microsoft Corporation. All rights reserved.

ASP 稼動について参考になる情報

• IIS 7.0 および IIS 7.5 上で Classic ASPアプリケーションを実行するhttp://technet.microsoft.com/ja-jp/library/ee155445.aspx

• IIS 開発部門トップ Bill Staples のブログhttp://blogs.iis.net/bills/archive/tags/ASP/default.aspx

• Classic ASP Forum(英語)http://forums.iis.net/1044.aspx

30

Page 31: 20101112 tf web_hirookun

© 2010 Microsoft Corporation. All rights reserved.

おススメ!“サーバー構築ガイドライン”

・現在ドラフト版・序章~第11章まで公開予定・無償ダウンロード・PDFおよびXPS文書・最終的に1つにまとめる・フィードバック募集中!

31

Page 32: 20101112 tf web_hirookun

© 2010 Microsoft Corporation. All rights reserved.

スタックでちゃんと理解しよう!

OS

Web Server

Presentation

Logic

Data Access

DatabaseSQL Server 2000Access/.mdb

SQL Server 2008/R2

(Access/.accdb)

IIS 5.0 IIS 7.x

.NET Framework

Active Server Pages(.asp)

ASP.NET 4

Visual Studio 6.0

Visual Studio 2010

Visual Studio 2005/2008

Page 33: 20101112 tf web_hirookun

© 2010 Microsoft Corporation. All rights reserved.

ASP.NET 4 構成フレームワークの種類

Web Forms ASP.NET AJAX

ASP.NET MVC 動的データ

Page 34: 20101112 tf web_hirookun

© 2010 Microsoft Corporation. All rights reserved.

おススメ!“Web 開発 ガイドライン”

Microsoft Web 開発 ガイドライン~ ASP.NET プログラミング エッセンシャル ~http://msdn.microsoft.com/ja-jp/asp.net/ff602016.aspx

• PDF で4MB くらい

• 373 ページの無償文書、書籍並みの濃さ

http://blogs.itmedia.co.jp/chack/

Page 35: 20101112 tf web_hirookun

© 2010 Microsoft Corporation. All rights reserved.

備えよ、クラウドが見えている

• 今だから IIS7, ASP.NET をやるべき

• Windows Azure の土台の理解へ

• 波に乗ると仕事の恩恵は計り知れない

• 先行者ベネフィットと差別化

• 技術には革新の理由が必ずある

35

Page 36: 20101112 tf web_hirookun

© 2010 Microsoft Corporation. All rights reserved. 36© 2010 Microsoft Corporation. All rights reserved.

36

Page 37: 20101112 tf web_hirookun

© 2010 Microsoft Corporation. All rights reserved.

製品の入手機会は段違いに多い

風評:マイクロソフト=有償製品=高い

正解:無償版、無償提供サービスも多い

37

Web 制作会社向け 起業家向け 学生向け

Page 38: 20101112 tf web_hirookun

© 2010 Microsoft Corporation. All rights reserved.

スタックでちゃんと理解しよう!

OS

Web Server

Presentation

Logic

Data Access

DatabaseSQL Server 2000Access/.mdb

SQL Server 2008/R2

(Access/.accdb)

IIS 5.0 IIS 7.x

.NET Framework

Active Server Pages(.asp)

ASP.NET 4

Visual Studio 6.0

Visual Studio 2010

Visual Studio 2005/2008

38

Page 39: 20101112 tf web_hirookun

© 2010 Microsoft Corporation. All rights reserved.

.asp 部分をどう選択?

Presentation

Active Server Pages(.asp)

HTML

別の考え方:今日のスコープ外

HTML + jQuery

Silverlight

WCF や .asmxServices

ASP.NETWeb フォーム

ASP.NETMVC

ASP.NETWeb Pages

AJAX

“Razor”

“Razor”

39

Page 40: 20101112 tf web_hirookun

© 2010 Microsoft Corporation. All rights reserved.

って何?

• Introducing “Razor” – a new view engine for ASP.NEThttp://weblogs.asp.net/scottgu/archive/2010/07/02/introducing-razor.aspx

• 新しい解釈エンジン

• 新しいマークアップ記述手法

– 新しい言語とは言えない、あくまでも解釈エンジン

• <% %> の代わりに@で始め、閉じない

<H3>今年は <%= DateTime.Now.Year %>

</H3>

<H3>今年は @DateTime.Now.Year

</H3>

“Razor”

40

Page 41: 20101112 tf web_hirookun

© 2010 Microsoft Corporation. All rights reserved.

ロジック部分をどう選択?

Logic ASP.NET 4

.NET Framework

WCF(Windows Communication Foundation), WF(Windows Workflow Foundation)を使用してWeb 技術を使ったサービスを構築する方法もある。

既存のコンポーネントは Wrap して Web サービス化する手法もとれる。

.aspx .aspx.vb

.aspx.cs

IT Pro道場 ~ アプリケーションの開発http://technet.microsoft.com/ja-jp/events/dd696115.aspx

41

Page 42: 20101112 tf web_hirookun

© 2010 Microsoft Corporation. All rights reserved.

データアクセス部分をどう選択?

• 基盤部分(例 :OLEDB)はプロバイダーモデルで大きくは変わっていない

• 変わったのはその上位で Wrap する部分

• Windows Server 2008 R2 を見据えると64 ビットへの対応が大きな検討課題となる

Data Access

ASP.NET 4

.NET Framework

MDAC

データ アクセス テクノロジ概要http://msdn.microsoft.com/ja-jp/data/dd919164.aspx

42

Page 43: 20101112 tf web_hirookun

© 2010 Microsoft Corporation. All rights reserved.

データベース部分をどう選択?Database

SQL Server 2000(6.5, 7.0)

Access/.mdb

http://www.microsoft.com/sqlserver/2008/en/us/editions.aspx

SQL Server 2008/R2

SQL Server 2008/R2

Express Edition

Access 2007/2010(.accdb)

SQL Compact(ファイルベース)

43

Page 44: 20101112 tf web_hirookun
Page 45: 20101112 tf web_hirookun

© 2010 Microsoft Corporation. All rights reserved.

それでも .NET は標高が高い人へあるいはこれから Web を学ぶ人へ

45

Page 46: 20101112 tf web_hirookun

© 2010 Microsoft Corporation. All rights reserved.

ASP+MDB のいいところって?• OS と IIS があれば動く

• Visual Studio なくともテキストエディターで頑張れる

• .asp 内で完結するので COBOL 感覚な人でもわかりやすい

• クラスやオブジェクト指向の知識不要

• Visual Basic 6 でコンポーネントが作れた

• .mdb が再配布容易

• .mdb がファイルベースなので軽い

• OS 以外はテキストエディターで頑張れば「無償」

• データアクセス方法も以前とさほど変わらない

• 何かフレームワーク知識不要、サクサク書ける

46

Page 47: 20101112 tf web_hirookun

© 2010 Microsoft Corporation. All rights reserved.

そこで “今”。新たな選択肢。

OS

Web Server

Presentation

Logic

Data Access

DatabaseSQL Server 2000Access/.mdb

Active Server Pages(.asp)

IIS 5.0

SQL Server 2008/R2

(Access/.accdb)

ASP.NET 4(.aspx)

IIS 7.x

Visual Studio 2010

.NET Framework

Visual Studio 6.0

SQL Compact4 Web

ASP.NETWeb Pages“Razor”

IIS Express(開発用 IIS7)XP も OK !!

Windows XPでも最新環境(開発環境)

47

Page 48: 20101112 tf web_hirookun

© 2010 Microsoft Corporation. All rights reserved.

WebMatrix(Beta3) と関連テクノロジー

• WebMatrix (Beta3)– http://www.microsoft.com/web/webmatrix/

– 軽量な Web サイトを構築・管理する統合ツール

– オープンソースの Web アプリのインストールやカスタマイズ

• 必要があれば他のスクリプト系言語のサイトも一緒に管理ができ、オープンソース アプリケーションをベースにしたカスタマイズ開発も可能

IIS Express(開発用 Web サーバー)

ASP.NET Web Pages

SQL Compact(ファイルベース)

Windows XP以降

“Razor”

48

Page 49: 20101112 tf web_hirookun

© 2010 Microsoft Corporation. All rights reserved.

お腹いっぱいですか?

• クラウド時代の牽引役はアプリケーションであって仮想化じゃない

• 積み上げが大事。結局 前提知識は役立つABC を知らずして Z は理解できない

• クラウドも駆使できる最強のエンジニアに!A しかできない、BしかできないではなくA も B もできる、これが標準仕様になる

• あきらめない。これに尽きる。

49

Page 50: 20101112 tf web_hirookun

© 2010 Microsoft Corporation. All rights reserved. 50

Page 51: 20101112 tf web_hirookun

Call to Action

最強のエンジニア計画

51

Page 52: 20101112 tf web_hirookun

© 2010 Microsoft Corporation. All rights reserved.

Microsoft Web Platform ホームまずはここからスタート !

• Web プラットフォームの紹介– サーバー– フレームワーク– データーベース– ツール

• Web App Gallery

• ダウンロード

• プログラム紹介

• ホスティング情報

• 事例紹介

• などなど ...

www.microsoft.com/web

52

Page 53: 20101112 tf web_hirookun

© 2010 Microsoft Corporation. All rights reserved.

ASP.NET デベロッパーセンター

53

http://msdn.microsoft.com/ja-jp/asp.net/default.aspx

Page 54: 20101112 tf web_hirookun

© 2010 Microsoft Corporation. All rights reserved.

IIS TechCenter(テックセンター)

54

http://technet.microsoft.com/ja-jp/iis/default.aspx

Page 55: 20101112 tf web_hirookun

© 2010 Microsoft Corporation. All rights reserved.

The Microsoft ConferenceJapan Tour 2010 ~ 東京+ 6 都市で開催 ~

• 開催日:2010 年 11 月 25 日 ~ 26 日

• 開催場所: ザ・プリンス パークタワー東京

• 参加費:無償

55

http://www.microsoft.com/japan/cloud/msc2010/tokyo.mspx

Page 56: 20101112 tf web_hirookun

コース 形式 開催日程 会場

Windows Azure概要と開発手法

セミナー11月15日(月)午前12月 2日(木)午前12月13日(月)午前

弊社 新宿本社 5F セミナールーム

Windows Azure アプリケーション開発体験~ Windows Azure 入門編 ~

ハンズオントレーニング

11月19日(金)午前11月19日(金)午後11月30日(火)午前12月 2日(木)午後12月 6日(月)午前12月 8日(水)午前12月13日(月)午後12月17日(金)午前

弊社 新宿本社 5F セミナールーム

Windows Azure アプリケーション開発体験~ SQL Azure 編 ~

ハンズオントレーニング

11月15日(月)午後11月30日(火)午後12月 8日(水)午後

弊社 新宿本社 5F セミナールーム

Windows Azure アプリケーション開発体験~ Windows Azure 管理・監視編 ~

ハンズオントレーニング

12月 6日(月)午後12月17日(金)午後

弊社 新宿本社 5F セミナールーム

開発者のためのWindows Azure 実践編

ハンズオントレーニング

11月19日(金)11月24日(水)12月 3日(金)12月 9日(木)

弊社 大手町テクノロジーセンター

参加費無料

期間限定

詳細およびお申込みはコチラhttp://www.microsoft.com/japan/windowsazure/events/hol/

無償 セミナー & ハンズオン トレーニング

56