C#でリアルタイムウェブアプリの開発
C#で軽量プログラミング言語に引けをとらない、高パフォーマンスウェブアプリの開発について、記事にまとめます。
昨今のニュースでは、GitHubがruby・MVCモデルからC#・MVVMモデルに移行しました。
C#は重量級言語で処理が遅いと思われがちですが、ソーシャルゲームのモンハンにも利用されるなど、軽量級言語に引けをとらないパフォーマンスを叩き出します。
モンスターハンター ロア オブ カード 公式プロモーションサイト 【カプコンオンラインゲームズ】
C#を用いたウェブアプリのモデル図として、以下の例があります。
(※人によって解釈が変わってくると思いますが、私が実際に開発し運用した経験で定義しました)
まず、大きく「HTML」と「C#」に分類します。
「HTML」では、見た目としてのHTMLファイルと、データを動的に扱うKnockout.jsで構成されます。
Knockout.jsは、Javascriptフレームワークの一つで、タグ操作をすることなくデータの追加・変更・削除が行えます。
「C#」では、クライアントからのリクエストを受け取るController、データを加工処理するBusiness Controller、データベースとのデータを受け渡しするData Access Componentで構成されます。
それらを満たし開発の手助けとなる以下の技術を用いることで、リアルタイムウェブアプリを実装できます。
- jQuery
- Knockout.js
- Web Socket
これから上記技術を利用したウェブアプリの開発について解説できればと思います。
それではまた。