program study story

プログラムの勉強 アウトプット

ASP.NETの全体像

■Webフォーム

サブフレームワークの一つ。

サーバーコントロールと呼ばれるUI部品が豊富に用意されているのが特徴。

*イベントドリブンモデル*を採用していることからWindowsアプリケーション開発の知識をほとんどそのまま、ASP.NETアプリケーションの開発にも利用できるというメリット。

*イベントドリブンモデルとは

ボタンがクリックされた、選択行が変化した、など、ページで発生したイベント(出来事)をトリガーにコードを実行するプログラミングモデルのこと。

ASP.NET MVC

ASP.NET開発の主流ともいうべき地位を確立しているもの。

ASP.NET WebPages

.Net Framework以前のASP(Active Server Pages)、PHPによく似た技術で、HTML埋め込み型モデルを採用している。

@...の形式で、HTMLの中にコードを埋め込むことができます。

2011年にリリースされ、無償のWebサイト構築ツールWebMatrixの標準技術として採用された。

小規模なサイト開発での利用を想定しており、デザイナー、システム管理者、あるいは、その性質上、PHPでの開発に慣れた人などにお勧めで、気軽に手を付けられるのが、特徴。

ASP.NET Web API

Web APIとは、「Web経由で利用できるAPI」のこと。

例えば、「Youtube Data API」というWeb APIがありますが、これを利用することで、アプリケーションからYoutubeの機能にアクセスするためのサービスです。ですから、Youtubeで提供されている動画を検索し、リスト表示する、といった機能を、あたかも自分のアプリケーションの一部であるかのように実装できる。

Web上では、このようなWeb APIが豊富に提供されているため、これらを組み合わせることにより、労少なく高機能なアプリケーションを実装できる。

つまり、ASP.NET Web APIとは

Web APIを実装するためのサブフレームワーク

ASP.NET MVCでも実装することは可能で、ASP.NET Web APIの方が機能特化している分、同じことをするにもシンプルに表現できる。

■SignalIR

リアルタイム性が求められるようになってきた。

そのリアルタイム通信に対応するためのライブラリ。

クライアントの実装に応じて、最適なトランスポート(通信手段)を選択しますので、アプリケーションが低レベルな手続きを意識しなくてもよいというのが特徴。

ASP.NET Single Page Application(SPA)

単一のページで構成されるWebアプリケーションのこと。初回のアクセスでは、まずページ全体を取得しますが、以降ページ更新は基本的にjavaScriptで行います。

JavaScript単独で賄いきれない部分(データの取得/更新)は、Ajaxなどの通信技術によって実装する。

デスクトップアプリケーションによく似た操作性、そして、敏速な動作を実現するためのアプローチとして、注目される。