サーバ/クライアント自動分割を備えたWebフレームワークの設計と実装

Bibliographic Information

Other Title
  • サーバ/クライアント ジドウ ブンカツ オ ソナエタ Web フレームワーク ノ セッケイ ト ジッソウ
  • Design and Implementation of Web Framework with Auto Partitioning into Server and Client

Search this article

Abstract

近年Google Mapsなどに代表される,Ajaxと呼ばれる手法を用いたWebアプリケーションが増加している.Ajaxを用いたWebアプリケーションはサーバ側とクライアント側で動作する2つのプログラムにより構成され,それらが協調して動作する.そのため,煩雑な通信処理を記述する必要があり,さらには,それぞれの実装言語が多くの場合は異なっているため,プログラミングが非常に煩雑になる.そこで本論文では,開発効率の向上を目的として,JavaScriptに基づくプログラム言語でWebアプリケーションを1つのプログラムとして記述し,処理の柔軟な分割を可能とするフレームワークを提案する.また,そのプログラム言語で記述されたプログラムを読み込み,サーバ側で動作するソースコードとクライアント側で動作するソースコードを出力するような機構を設計し,実装した.提案機構は,与えられたプログラムを解析し各構文要素がサーバとクライアントのどちらで実行するべきかを決定する.その際,分割方針を指定することで,同じソースコードから異なる分割を得ることができる.同じ動作をするWebアプリケーションを,提案機構と既存の手法のそれぞれを用いて記述し,プログラムを比較して記述性が向上していることを確認した.また,提案機構によるオーバヘッドは,Webアプリケーションで行われる一般的な処理については問題ない程度の小さなものであることを確認した.

Ajax based web applications such as Google Maps have increased in recent years. An Ajax application is composed of the server side program and the client side program. Usually these programs are written in different programming languages. Furthermore, communications between the server and the client have to be explicitly described. For this reason, development of web applications is a very complicated task. To solve this problem, we proposes a framework that enables the user to write a web application as a single program. We have implemented a system that partition such a program into both the server side program and the client side one. It decides which parts of a source program should be executed at the client side or at the server side based on a policy given by the user. We confirmed that our framework makes the development of web applications easier, by comparing a program using our framework with a program using an existing method for the same application. Although our framework causes overhead in execution time, it is acceptable for general web applications.

Journal

Keywords

Details 詳細情報について

Report a problem

Back to top