SlideShare a Scribd company logo
http://blogs.msdn.com/chack/
http://twitter.com/chack411/
jQuery と MVC で実践する標準志向 Web 開発
http://www2.clr-h.jp/
Demo も
あるよ!
jQuery と MVC で実践する標準志向 Web 開発
なんでもできる統合開発環境
           Web                   Windows
                 さまざまなアプリ開発

          Cloud                     Office
                             製品版
 http://www.microsoft.com/japan/msdn/vstudio/

                                       無償版!要登録
 http://www.microsoft.com/japan/msdn/vstudio/express/
    − Visual Web Developer 2010 Express        Web 開発は
                                                これ!
コンポーネントやアプリの一括管理ツール

                                              無償ツール




 http://www.microsoft.com/web/downloads/platform.aspx
jQuery と MVC で実践する標準志向 Web 開発
Technology Radar January 2010


While JavaScript first appeared in
1995, it is only in the past couple of
years that libraries such as Prototype
and JQuery have helped the
language become more accessible to
a wider developer audience. As
developers continue to embrace
JavaScript for developing rich user
web applications, we increasingly
hold JavaScript in the same level of
esteem as any other production
language, ensuring that scripts are
adequately tested, refactored and
maintained.                              出典: Technology Radar January 2010 © ThoughtWorks
                                         https://www1.vtrenz.net/imarkownerfiles/ownerassets/
                                         1013/Technology%20Radar%20Jan%202010.pdf
オーバー ビュー
− JavaScript
デバッグ対応
ブレーク                スクリプト
ポイント                ドキュメント




  ツールヒント
  による変数の
   ウォッチ             イミディエイト
                     ウィンドウ




 ウォッチ       ブレーク
ウィンドウ      ポイント一覧
Visual Studio と jQuery




                    http://jquery.com/
                           $(function() {
                             $('#button1').click(function() {
                               $('#div1').fadeIn('slow');
                             });
                           });
Microsoft <3 jQuery




     jQuery Template
<script src="jquery.tmpl.js" type="text/javascript"></script>
<script type="text/javascript">
jQuery(function(){
  var products = [{name:"dog", price:12.0}, {name:"cat", price:35.5}];
  $("#list").append("#template", products);
});
</script>
<script id="template" type="text/html">
    <li>{%= name %} - {%= price %}</li>
</script>
<ul id="list"></ul>
jQuery と MVC で実践する標準志向 Web 開発
Technology Radar January 2010
                   出典: Technology Radar January 2010 © ThoughtWorks
                   https://www1.vtrenz.net/imarkownerfiles/ownerassets/
                   1013/Technology%20Radar%20Jan%202010.pdf
新しい Web アプリ開発フレームワーク
− ASP.NET MVC 1.0


− ASP.NET MVC 2



− HTML ベース
                  疎結合
− 単体テスト
− URL ルーティング
Web アプリにおける MVC パターン
1. Controller が
   リクエストを受信

 HTTP Request     Controller   2. Controller が
                                  Model を初期化
                                                 3. ビジネス ロジック
                                                    を実行

     入力と制御
                       4. Controller が View
                          を呼び出す                   Model
  プレゼンテーション




                               5. View が Model
                                                  データ表現と
  HTTP Response     View          を参照            ビジネス ロジック

6. View がレスポンス
   を送信
実装コード例
           View
<html>
  <p><%: Html.TextBox("data", Model.data) %></p>
</html>

    Model と Controller
public class HomeController : Controller {

    MyModelService myModel = new MyModelService();

    public ActionResult Edit(int id) {
      MyData md = myModel.GetData(id);

        return View(md);
    }
}
jQuery と MVC で実践する標準志向 Web 開発
~ 標準志向 Web 開発のために ~
      標準技術を生かした Web 開発




    サーバーサイド技術を生かした Web 開発
jQuery と MVC で実践する標準志向 Web 開発
HTML / CSS 支援機能
− HTML 検証


− CSS 検証
 − CSS 1.0 / 2.0 / 2.1 に対する検証
− アクセシビリティ検証※



                 ※ アクセシビリティ検証は Visual Studio Professional 以上の機能
                 ※ WCAG (Web Content Accessibility Guidelines) : W3C 勧告
                 ※ Access Board 508 : 米国連邦政府ハビリテーション法 508 条
Visual Studio 2010 入力支援機能
− インテリセンス

− コード スニペット
Visual Studio 2010 入力支援機能
− jQuery インテリセンス
                  -vsdoc



    <script src="jquery-1.4.1.js"
            type="text/javascript"></script>



    /// <reference path="jquery-1.4.1.js" />
    function FadeOut() {
        $("#Text1").fadeOut();
        ...                             jQuery ファイル
                                         への参照の追加
Visual Studio 2010 入力支援機能
− jQuery コードスニペット

       http://jquerysnippets.codeplex.com/
   対象      ショートカット                   概要
HTML       jq         スクリプトタグと $(document).ready()
                      ショートカットを挿入
HTML       jqscript   jQuery ソースファイルへのスクリプト
                      タグを挿入
JavaScript func       JavaScript の匿名関数を挿入
JavaScript jqclick    click イベントハンドラを挿入
JavaScript jqfadein   fadeIn 関数を挿入
CDN から jQuery を利用する
− Microsoft Ajax Content Delivery Network




                                      Web サーバー
                エッジ キャッシュ
                  サーバー


                      ajax.microsoft.com
ホストされる JavaScript ライブラリ



                                  http://www.asp.net/
                                  ajaxLibrary/CDN.ashx




      使用方法
<script type="text/javascript" src=
 "http://ajax.microsoft.com/ajax/jquery/jquery-1.4.2.js">
</script>
クリーン URL の生成
 Web ページの配置パスに依存した URL




       URL ルーティング




   Web ページの URL を柔軟に構築可能
    RESTful な Web アプリケーションの構築
    SEO (Search Engine Optimization) 対策
Controller の単体テスト




                      生成された
                    テストプロジェクト
Web 開発会社様 支援プログラム


プログラム特典:
開発ツール




サーバー ソフトウェア(検証、デモ用)
                                 参加要件:
                                 • Web 開発ビジネスを主業務としていること
   これらのソフトウェアは MSDN サブスクリプションの     (個人事業主を含む)
  ダウンロード サイトから提供させていただきます        • 従業員数が 25 名以下であること
技術サポート                           • プログラム加盟後、6 カ月以内に Windows
                                   プラットフォームを用いた新しいドメインの
                                   Web サイトを開発すること。
その他                              期間:最大 3 年間
                                 費用:無料(プログラム終了時にプログラム提供料
                                 として 100 米ドルお支払いいただきます)

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


http://www.asp.net/


http://aspnet.codeplex.com/


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


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


http://edtter.codeplex.com


http://jquery.com/
© 2010 Microsoft Corporation. All rights reserved. Microsoft, Windows, Windows Vista and other product names are or may be registered trademarks and/or trademarks in the U.S. and/or other countries.
The information herein is for informational purposes only and represents the current view of Microsoft Corporation as of the date of this presentation. Because Microsoft must respond to changing market
conditions, it should not be interpreted to be a commitment on the part of Microsoft, and Microsoft cannot guarantee the accuracy of any information provided after the date of this presentation. MICROSOFT
MAKES NO WARRANTIES, EXPRESS, IMPLIED OR STATUTORY, AS TO THE INFORMATION IN THIS PRESENTATION.

More Related Content

What's hot (20)

PPTX
KnockoutJSを使用したアプリケーションの構築例
masakazusegawa
 
PPTX
20140517 knockoutjs hands-on
Seiji Noro
 
PDF
3 倍早い?! MS 製開発者専用ツールによる HTML5 + JavaScript を使ったWeb 作成
Osamu Monoe
 
PPTX
~初心者がこれから Web アプリの開発をするために~
Oda Shinsuke
 
PDF
KnockoutJS勉強会 プロジェクトにmvvmを適用する狙い
Toshihiro Kawachi
 
PPTX
Webアプリ開発のトレンドとUIライブラリ開発事情(仙台Geek★Night #1)
masakazusegawa
 
PDF
作って分かるKnockoutJS@ALM11月
Takuya Ueda
 
PDF
Knockout.js を利用したインタラクティブ web アプリケーション開発
Daizen Ikehara
 
PPTX
ASP.NET MVC プログラミング入門の入門
Masuda Tomoaki
 
PDF
マイクロソフトWeb開発の今と今後
Akira Inoue
 
PDF
そろそろ押さえておきたい AngularJSのセキュリティ
Muneaki Nishimura
 
PPTX
ASP.NET習得の最短経路を考察する
Masaki Takeda
 
PPTX
Azure ADアプリケーションを使用した認証のあれやこれ ASP.NET Core編
DevTakas
 
PDF
Windowsストアアプリ開発 オープンセミナー広島
Akira Onishi
 
PDF
Microsoft Edge 最新アップデートとこれから
Osamu Monoe
 
PDF
for Developer、 Microsoft Edge とInternet Explorer で 新しくサポートされるAPI
Osamu Monoe
 
PDF
Windows ストア lob アプリ開発のためのガイダンスとフレームワークのご紹介 rev
Shotaro Suzuki
 
PPTX
簡単AngularJS(関西AngularJS勉強会)
Takahiro Maki
 
PDF
はじめての ASP.NET MVC
jz5 MATSUE
 
PDF
Brush up your Coding! 2013 winter
Shogo Sensui
 
KnockoutJSを使用したアプリケーションの構築例
masakazusegawa
 
20140517 knockoutjs hands-on
Seiji Noro
 
3 倍早い?! MS 製開発者専用ツールによる HTML5 + JavaScript を使ったWeb 作成
Osamu Monoe
 
~初心者がこれから Web アプリの開発をするために~
Oda Shinsuke
 
KnockoutJS勉強会 プロジェクトにmvvmを適用する狙い
Toshihiro Kawachi
 
Webアプリ開発のトレンドとUIライブラリ開発事情(仙台Geek★Night #1)
masakazusegawa
 
作って分かるKnockoutJS@ALM11月
Takuya Ueda
 
Knockout.js を利用したインタラクティブ web アプリケーション開発
Daizen Ikehara
 
ASP.NET MVC プログラミング入門の入門
Masuda Tomoaki
 
マイクロソフトWeb開発の今と今後
Akira Inoue
 
そろそろ押さえておきたい AngularJSのセキュリティ
Muneaki Nishimura
 
ASP.NET習得の最短経路を考察する
Masaki Takeda
 
Azure ADアプリケーションを使用した認証のあれやこれ ASP.NET Core編
DevTakas
 
Windowsストアアプリ開発 オープンセミナー広島
Akira Onishi
 
Microsoft Edge 最新アップデートとこれから
Osamu Monoe
 
for Developer、 Microsoft Edge とInternet Explorer で 新しくサポートされるAPI
Osamu Monoe
 
Windows ストア lob アプリ開発のためのガイダンスとフレームワークのご紹介 rev
Shotaro Suzuki
 
簡単AngularJS(関西AngularJS勉強会)
Takahiro Maki
 
はじめての ASP.NET MVC
jz5 MATSUE
 
Brush up your Coding! 2013 winter
Shogo Sensui
 

Similar to jQuery と MVC で実践する標準志向 Web 開発 (20)

PDF
最新 ASP.NET Web 開発オーバービュー
Akira Inoue
 
PDF
Mvc conf session_3_takehara
Hiroshi Okunushi
 
PDF
[公開用]Netラボ2012年2月勉強会 asp.netmvc4 beta新機能の紹介
david9142
 
PDF
Mvc conf session_5_isami
Hiroshi Okunushi
 
PDF
Visual Studio 2012 と ASP.NET に見る、最新 Web 開発の魅力
Akira Inoue
 
PDF
Mvc conf session_1_osada
Hiroshi Okunushi
 
PDF
jQuery/Html5/ASP.NET MVC 対応コンポーネントを用いたデバイス対応業務アプリケーション開発
Daizen Ikehara
 
PDF
Visual Studio 2012 で実現する HTML5 & マルチ デバイス時代の Web 開発
Akira Inoue
 
PPTX
20120609
小野 修司
 
PDF
Ajax basic
Katsuyuki Seino
 
PPTX
20100313
小野 修司
 
PPTX
Web リソースを活用した簡単アプリケーション開発(Windows Phone)
Akira Onishi
 
PDF
Php conference 2010 final
hirookun
 
PDF
patterns & practices "Project Silk" に見る HTML5 とモダンブラウザのための Web 開発の今後
Akira Inoue
 
PDF
Ignite UI 2012 最新情報 jQuery Mobile 編
インフラジスティックス・ジャパン株式会社
 
PDF
マイクロソフトにとってのWebって?
Microsoft
 
PDF
Visual Web Developer 2010 とExpression Web 4 で構築する HTML5 と JavaScript
Osamu Monoe
 
PDF
TF Seminar 20110218
hirookun
 
PDF
XAML と C# を使った Windows ストアアプリ(LOB)構築のためのtips Prism 4.5 & Kona project 等のご紹介
Shotaro Suzuki
 
PDF
2013 Ignite UI 最新情報 in 岡山
インフラジスティックス・ジャパン株式会社
 
最新 ASP.NET Web 開発オーバービュー
Akira Inoue
 
Mvc conf session_3_takehara
Hiroshi Okunushi
 
[公開用]Netラボ2012年2月勉強会 asp.netmvc4 beta新機能の紹介
david9142
 
Mvc conf session_5_isami
Hiroshi Okunushi
 
Visual Studio 2012 と ASP.NET に見る、最新 Web 開発の魅力
Akira Inoue
 
Mvc conf session_1_osada
Hiroshi Okunushi
 
jQuery/Html5/ASP.NET MVC 対応コンポーネントを用いたデバイス対応業務アプリケーション開発
Daizen Ikehara
 
Visual Studio 2012 で実現する HTML5 & マルチ デバイス時代の Web 開発
Akira Inoue
 
20120609
小野 修司
 
Ajax basic
Katsuyuki Seino
 
20100313
小野 修司
 
Web リソースを活用した簡単アプリケーション開発(Windows Phone)
Akira Onishi
 
Php conference 2010 final
hirookun
 
patterns & practices "Project Silk" に見る HTML5 とモダンブラウザのための Web 開発の今後
Akira Inoue
 
Ignite UI 2012 最新情報 jQuery Mobile 編
インフラジスティックス・ジャパン株式会社
 
マイクロソフトにとってのWebって?
Microsoft
 
Visual Web Developer 2010 とExpression Web 4 で構築する HTML5 と JavaScript
Osamu Monoe
 
TF Seminar 20110218
hirookun
 
XAML と C# を使った Windows ストアアプリ(LOB)構築のためのtips Prism 4.5 & Kona project 等のご紹介
Shotaro Suzuki
 
Ad

More from Akira Inoue (20)

PDF
New Features in C# 10/11
Akira Inoue
 
PDF
デモで楽しむ Visual Studio 2022 & .NET 6 最新アップデート
Akira Inoue
 
PDF
.NET 6 と Blazor で作るクロスプラットフォームアプリ概要
Akira Inoue
 
PDF
~ Build と言えば やっぱり Developer! ~ Microsoft 開発ツール最新アップデート
Akira Inoue
 
PDF
.NET の過去、現在、そして未来 ~ .NET 最新アップデート
Akira Inoue
 
PDF
Cloud から IoT まで、なんでもおまかせ ~ .NET 5 正式リリース!
Akira Inoue
 
PDF
.NET の過去、現在、そして未来
Akira Inoue
 
PDF
VS Code Live Share ~ 東京と大阪を繋いでみよう!
Akira Inoue
 
PDF
レガシー Web からの脱却 ~ 開発者が次に目指すべき Web アプリの姿とは?
Akira Inoue
 
PDF
.NET の今と今後に思うこと (Tokyo Ver.)
Akira Inoue
 
PDF
.NET の今と今後に思うこと
Akira Inoue
 
PDF
.NET 最新ロードマップと今押さえておきたい技術要素
Akira Inoue
 
PDF
VS Code & Flaskで作るCloud NativeアプリとDevOps
Akira Inoue
 
PDF
.NET Core と Docker コンテナー、そして Azure を使用したマイクロサービスのアーキテクチャ
Akira Inoue
 
PDF
本格化するクラウド ネイティブに向けて進化する開発プラットフォームと .NET
Akira Inoue
 
PDF
Visual Studio 2019 GA ! ~ 最新情報 & これからの開発スタイル
Akira Inoue
 
PDF
Visual Studio 2019 GA ! ~ 最新情報 & これからの開発スタイル
Akira Inoue
 
PDF
.NET の今 ~ 最新アップデートと 2019 年の展望
Akira Inoue
 
PDF
.NET today and tomorrow
Akira Inoue
 
PDF
.NET の今とミライ (.NET Conf 2018 Japan Keynote)
Akira Inoue
 
New Features in C# 10/11
Akira Inoue
 
デモで楽しむ Visual Studio 2022 & .NET 6 最新アップデート
Akira Inoue
 
.NET 6 と Blazor で作るクロスプラットフォームアプリ概要
Akira Inoue
 
~ Build と言えば やっぱり Developer! ~ Microsoft 開発ツール最新アップデート
Akira Inoue
 
.NET の過去、現在、そして未来 ~ .NET 最新アップデート
Akira Inoue
 
Cloud から IoT まで、なんでもおまかせ ~ .NET 5 正式リリース!
Akira Inoue
 
.NET の過去、現在、そして未来
Akira Inoue
 
VS Code Live Share ~ 東京と大阪を繋いでみよう!
Akira Inoue
 
レガシー Web からの脱却 ~ 開発者が次に目指すべき Web アプリの姿とは?
Akira Inoue
 
.NET の今と今後に思うこと (Tokyo Ver.)
Akira Inoue
 
.NET の今と今後に思うこと
Akira Inoue
 
.NET 最新ロードマップと今押さえておきたい技術要素
Akira Inoue
 
VS Code & Flaskで作るCloud NativeアプリとDevOps
Akira Inoue
 
.NET Core と Docker コンテナー、そして Azure を使用したマイクロサービスのアーキテクチャ
Akira Inoue
 
本格化するクラウド ネイティブに向けて進化する開発プラットフォームと .NET
Akira Inoue
 
Visual Studio 2019 GA ! ~ 最新情報 & これからの開発スタイル
Akira Inoue
 
Visual Studio 2019 GA ! ~ 最新情報 & これからの開発スタイル
Akira Inoue
 
.NET の今 ~ 最新アップデートと 2019 年の展望
Akira Inoue
 
.NET today and tomorrow
Akira Inoue
 
.NET の今とミライ (.NET Conf 2018 Japan Keynote)
Akira Inoue
 
Ad

Recently uploaded (10)

PDF
生成AIパネルトーク(Interop25Tokyo APPS JAPAN M1-07,M2-07 嶋ポジショントーク)
嶋 是一 (Yoshikazu SHIMA)
 
PDF
ABC2025S LT講演「世界の窓から Androidこんにちは2025」アプリ自動生成の将来?ロボティクスの夢再び?
嶋 是一 (Yoshikazu SHIMA)
 
PDF
プライバシ保護のためのインターネットアーキテクチャの進化 (2025-07-11)
Jun Kurihara
 
PDF
SIG-AUDIO 2025 Vol.02 オンラインセミナー SIG-Audioプレゼン資料_オーディオプラグイン開発_塩澤達矢.pdf
IGDA Japan SIG-Audio
 
PDF
[Hardening Designers Confernece 2025]ランサムウェアでの見えざるログ・見えるログ
kataware
 
PDF
Hyperledger Fabric最新v3.x系での機能強化、変更点にキャッチアップ!
LFDT Tokyo Meetup
 
PDF
人気ブロックチェーン基盤「Hyperledger Fabric」最新版を動かしてみた!
LFDT Tokyo Meetup
 
PDF
Hyperledger Fabric公式サンプル fabric-samples徹底解説
LFDT Tokyo Meetup
 
PDF
20250630_aws_reinforce_2025_aws_sheild_network_security_director
uedayuki
 
PDF
20250710_Devinで切り拓くDB革命_〜価値創出に集中せよ〜.pdf
Masaki Yamakawa
 
生成AIパネルトーク(Interop25Tokyo APPS JAPAN M1-07,M2-07 嶋ポジショントーク)
嶋 是一 (Yoshikazu SHIMA)
 
ABC2025S LT講演「世界の窓から Androidこんにちは2025」アプリ自動生成の将来?ロボティクスの夢再び?
嶋 是一 (Yoshikazu SHIMA)
 
プライバシ保護のためのインターネットアーキテクチャの進化 (2025-07-11)
Jun Kurihara
 
SIG-AUDIO 2025 Vol.02 オンラインセミナー SIG-Audioプレゼン資料_オーディオプラグイン開発_塩澤達矢.pdf
IGDA Japan SIG-Audio
 
[Hardening Designers Confernece 2025]ランサムウェアでの見えざるログ・見えるログ
kataware
 
Hyperledger Fabric最新v3.x系での機能強化、変更点にキャッチアップ!
LFDT Tokyo Meetup
 
人気ブロックチェーン基盤「Hyperledger Fabric」最新版を動かしてみた!
LFDT Tokyo Meetup
 
Hyperledger Fabric公式サンプル fabric-samples徹底解説
LFDT Tokyo Meetup
 
20250630_aws_reinforce_2025_aws_sheild_network_security_director
uedayuki
 
20250710_Devinで切り拓くDB革命_〜価値創出に集中せよ〜.pdf
Masaki Yamakawa
 

jQuery と MVC で実践する標準志向 Web 開発

  • 6. なんでもできる統合開発環境 Web Windows さまざまなアプリ開発 Cloud Office 製品版 http://www.microsoft.com/japan/msdn/vstudio/ 無償版!要登録 http://www.microsoft.com/japan/msdn/vstudio/express/ − Visual Web Developer 2010 Express Web 開発は これ!
  • 7. コンポーネントやアプリの一括管理ツール 無償ツール http://www.microsoft.com/web/downloads/platform.aspx
  • 9. Technology Radar January 2010 While JavaScript first appeared in 1995, it is only in the past couple of years that libraries such as Prototype and JQuery have helped the language become more accessible to a wider developer audience. As developers continue to embrace JavaScript for developing rich user web applications, we increasingly hold JavaScript in the same level of esteem as any other production language, ensuring that scripts are adequately tested, refactored and maintained. 出典: Technology Radar January 2010 © ThoughtWorks https://www1.vtrenz.net/imarkownerfiles/ownerassets/ 1013/Technology%20Radar%20Jan%202010.pdf
  • 11. デバッグ対応 ブレーク スクリプト ポイント ドキュメント ツールヒント による変数の ウォッチ イミディエイト ウィンドウ ウォッチ ブレーク ウィンドウ ポイント一覧
  • 12. Visual Studio と jQuery http://jquery.com/ $(function() { $('#button1').click(function() { $('#div1').fadeIn('slow'); }); });
  • 13. Microsoft <3 jQuery jQuery Template <script src="jquery.tmpl.js" type="text/javascript"></script> <script type="text/javascript"> jQuery(function(){ var products = [{name:"dog", price:12.0}, {name:"cat", price:35.5}]; $("#list").append("#template", products); }); </script> <script id="template" type="text/html"> <li>{%= name %} - {%= price %}</li> </script> <ul id="list"></ul>
  • 15. Technology Radar January 2010 出典: Technology Radar January 2010 © ThoughtWorks https://www1.vtrenz.net/imarkownerfiles/ownerassets/ 1013/Technology%20Radar%20Jan%202010.pdf
  • 16. 新しい Web アプリ開発フレームワーク − ASP.NET MVC 1.0 − ASP.NET MVC 2 − HTML ベース 疎結合 − 単体テスト − URL ルーティング
  • 17. Web アプリにおける MVC パターン 1. Controller が リクエストを受信 HTTP Request Controller 2. Controller が Model を初期化 3. ビジネス ロジック を実行 入力と制御 4. Controller が View を呼び出す Model プレゼンテーション 5. View が Model データ表現と HTTP Response View を参照 ビジネス ロジック 6. View がレスポンス を送信
  • 18. 実装コード例 View <html> <p><%: Html.TextBox("data", Model.data) %></p> </html> Model と Controller public class HomeController : Controller { MyModelService myModel = new MyModelService(); public ActionResult Edit(int id) { MyData md = myModel.GetData(id); return View(md); } }
  • 20. ~ 標準志向 Web 開発のために ~ 標準技術を生かした Web 開発 サーバーサイド技術を生かした Web 開発
  • 22. HTML / CSS 支援機能 − HTML 検証 − CSS 検証 − CSS 1.0 / 2.0 / 2.1 に対する検証 − アクセシビリティ検証※ ※ アクセシビリティ検証は Visual Studio Professional 以上の機能 ※ WCAG (Web Content Accessibility Guidelines) : W3C 勧告 ※ Access Board 508 : 米国連邦政府ハビリテーション法 508 条
  • 23. Visual Studio 2010 入力支援機能 − インテリセンス − コード スニペット
  • 24. Visual Studio 2010 入力支援機能 − jQuery インテリセンス -vsdoc <script src="jquery-1.4.1.js" type="text/javascript"></script> /// <reference path="jquery-1.4.1.js" /> function FadeOut() { $("#Text1").fadeOut(); ... jQuery ファイル への参照の追加
  • 25. Visual Studio 2010 入力支援機能 − jQuery コードスニペット http://jquerysnippets.codeplex.com/ 対象 ショートカット 概要 HTML jq スクリプトタグと $(document).ready() ショートカットを挿入 HTML jqscript jQuery ソースファイルへのスクリプト タグを挿入 JavaScript func JavaScript の匿名関数を挿入 JavaScript jqclick click イベントハンドラを挿入 JavaScript jqfadein fadeIn 関数を挿入
  • 26. CDN から jQuery を利用する − Microsoft Ajax Content Delivery Network Web サーバー エッジ キャッシュ サーバー ajax.microsoft.com
  • 27. ホストされる JavaScript ライブラリ http://www.asp.net/ ajaxLibrary/CDN.ashx 使用方法 <script type="text/javascript" src= "http://ajax.microsoft.com/ajax/jquery/jquery-1.4.2.js"> </script>
  • 28. クリーン URL の生成 Web ページの配置パスに依存した URL URL ルーティング  Web ページの URL を柔軟に構築可能  RESTful な Web アプリケーションの構築  SEO (Search Engine Optimization) 対策
  • 29. Controller の単体テスト 生成された テストプロジェクト
  • 30. Web 開発会社様 支援プログラム プログラム特典: 開発ツール サーバー ソフトウェア(検証、デモ用) 参加要件: • Web 開発ビジネスを主業務としていること これらのソフトウェアは MSDN サブスクリプションの (個人事業主を含む) ダウンロード サイトから提供させていただきます • 従業員数が 25 名以下であること 技術サポート • プログラム加盟後、6 カ月以内に Windows プラットフォームを用いた新しいドメインの Web サイトを開発すること。 その他 期間:最大 3 年間 費用:無料(プログラム終了時にプログラム提供料 として 100 米ドルお支払いいただきます) www.microsoft.com/web/websitespark
  • 32. © 2010 Microsoft Corporation. All rights reserved. Microsoft, Windows, Windows Vista and other product names are or may be registered trademarks and/or trademarks in the U.S. and/or other countries. The information herein is for informational purposes only and represents the current view of Microsoft Corporation as of the date of this presentation. Because Microsoft must respond to changing market conditions, it should not be interpreted to be a commitment on the part of Microsoft, and Microsoft cannot guarantee the accuracy of any information provided after the date of this presentation. MICROSOFT MAKES NO WARRANTIES, EXPRESS, IMPLIED OR STATUTORY, AS TO THE INFORMATION IN THIS PRESENTATION.