クライアントサイド
出典: フリー百科事典『ウィキペディア(Wikipedia)』 (2019/01/23 04:51 UTC 版)
ナビゲーションに移動 検索に移動クライアントサイド(client side)とは、コンピュータネットワーキングにおいて、クライアントサーバ関係におけるクライアントによって実行される操作・処理のことを指す。
一般的に、クライアントはユーザのローカルコンピュータやワークステーションの上で実行され必要に応じてサーバに接続するウェブブラウザのようなコンピュータアプリケーションのことである。クライアントサイドで操作が行われる理由として、情報や機能がサーバではなくクライアント上にあるからという場合もあるし、ユーザがそれらを監視するか入力を提供する必要があるという場合もあるし、または、サーバは、接続されているクライアント群すべてに関して迅速に命令を処理する演算能力が欠如しているからという場合もある。副次的利点として、操作がクライアントによって実行されたとき、ネットワーク越しにデータを送信すること無しに、それらは時間をかけず、少ない処理能力を使用し、セキュリティリスクを招くことを軽減する。
例えば、HTTP や FTP プロトコルのように一般的な手段でサーバがデータを提供する場合、ユーザは多くのクライアントプログラムの選択肢を持つ(現在のウェブブラウザの多くは、それらのプロトコル双方を使用したデータのリクエストや受信ができるようになっている)。より特殊なアプリケーションの場合は、プログラマは、互いにやり取りできるだけの自前のサーバ、クライアントやプロトコルのプログラムを書くことができる。
ネットワーク越しにデータ送受信もせずに、ユーザのローカルコンピュータで走るプログラムはクライアントとは看做されない。従って、そのようなプログラムの操作はクライアントサイド的操作とは看做されない。
例
SETI@homeやGoogle Earthのような分散コンピューティングプロジェクトはクライアントサイド操作が重要である。SETI@homeクライアントはサーバ接続を開始しデータを要求する。サーバはデータセットを選択し(サーバサイド操作)、それをクライアントに送信する。そして、クライアントはそのデータを解析(クライアントサイド操作)し、解析が完了したとき、サーバのもとへその結果を伝達する。
関連項目
- クライアントサイドスクリプティング
- Active Server Pages (ASP)
クライアントサイド
出典: フリー百科事典『ウィキペディア(Wikipedia)』 (2021/06/15 07:42 UTC 版)
「Webプログラミング」の記事における「クライアントサイド」の解説
クライアントサイドでのプログラミングは、Ajax(JavaScript + XML)のようにウェブブラウザ上で動くプログラミング言語を用いて行われるケースもあるが、近年ではリッチクライアントが登場し、ウェブブラウザのかわりにブラウザ依存を避けられるJava Web StartやClickOnceやAdobe Flashを使うケースも増えている。 JavaScriptを用いる場合、ウェブブラウザには様々な実装系があるため、クライアント側のでプログラミングを行うためには、複数の実装系に精通している必要があった。しかし、JavaScriptに使用されているAjaxがGoogle Mapsに実装されることで脚光を浴びるにつれて、Ajaxに使用する(prototype.jsなどの)ライブラリが、ブラウザ依存しにくいように設計されるようになってきた。Ajaxのライブラリ、フレームワークを使いこなしていれば複数の実装系依存に拘る必要は無くなってきている。 従来では、Web開発におけるクライアントサイドといえば、WebデザイナがHTMLと小規模なJavaScriptやAdobe Flashで作られたサイトを開発する程度のものであったため、オブジェクト指向プログラミングの習得についてほとんど意識する必要がなかった。しかし端末ハードウェアの性能が向上し、HTMLクライアントの限界と不満が叫ばれるようになってゆき、Ajaxとリッチクライアントが注目されるにつれて、クライアントサイドでもオブジェクト指向プログラミングを習得する必要性が高まってきた。リッチクライアントに使用する技術の一つであるSwingなどによるGUI開発ではオブジェクト指向プログラミングは、ファットクライアント、スタンドアロンアプリケーション時代から必須のものである。またAjaxのフレームワークの多くはオブジェクト指向プログラミングで設計されている。 ウェブブラウザはウィンドウシステムやウィジェット・ツールキットとは異なり、アプリケーションがGUIを実現できるようにする事を元来の目的とするプログラムではなく、Web上のHTML文書などを閲覧することを主な目的とするプログラムなので、そのプログラム上で良いGUIを実現するには様々な工夫が求められる。その工夫の例としてAjaxやリッチクライアントがある。
※この「クライアントサイド」の解説は、「Webプログラミング」の解説の一部です。
「クライアントサイド」を含む「Webプログラミング」の記事については、「Webプログラミング」の概要を参照ください。
- クライアントサイドのページへのリンク