クライアント側とサーバー側のプログラミングの違い

サーバールームでコンピューターを使用している2人のビジネスマン

Webサーバーは、Webページの存在を可能にします。

画像クレジット: ライアン・マクベイ/デジタルビジョン/ゲッティイメージズ

HTMLを少し知っている場合は、サイトの訪問者に情報を提供して楽しませる機能的なWebページを作成できます。 基本的なWebページは便利ですが、インタラクティブでデータ駆動型で説得力のある高度なサイトを作成するには、プログラミングコードが必要です。 使用するプログラミング言語の種類は、Webデザインの目標によって異なります。 Webサイトを構築する前に、クライアント側とサーバー側のプログラミングの違いを学びます。 それらはいくつかの機能を共有していますが、重要な点で異なります。

クライアント側の説明

ブラウザのアドレスバーにURLを入力すると、コンピュータはリモートWebサーバーに情報を要求するクライアントとして機能します。 Webページに表示されるすべてのコード、ファイル、データ、および画像は、ブラウザに送信するリモートサーバーからのものです。 ブラウザは、受け取ったリソースを集めて、表示されるWebページを生成します。 単純なWebページには、HTMLステートメント、テキスト、および画像のみを含めることができますが、より複雑なWebページでは、クライアントブラウザーまたはWebサーバーにあるコードを実行できます。

今日のビデオ

クライアントサイドプログラミングの基本

いくつかのJavaScriptステートメントをHTMLドキュメントに貼り付けてブラウザーで表示することにより、誰でも数分でクライアント側のWebアプリを作成できます。 JavaScriptは、サイト所有者がWebアプリで使用する主なクライアント側のスクリプト言語です。 JavaScriptを使用して、オブジェクトをWebページ上で移動させたり、フォーム入力を検証したり、特殊効果を作成したり、エラーメッセージを表示したり、人々に情報を求めたりすることができます。

追加のクライアント側のメリット

ブラウザはこれらのタイプのタスクを実行するためにリモートWebサーバーと通信する必要がないため、クライアント側のコードはサーバー側のコードよりも高速に一部のタスクを実行できます。 たとえば、ボタンをクリックしてメニューを開くと、クライアント側のコードですぐに実行できます。 サーバー側のコードがそのタスクを処理した場合、メニューが開いていることを確認する前に、ブラウザーがサーバーと通信するのを待つ必要があります。 また、すべてのブラウザでクライアント側のコードを実行できるため、クライアント側のコードを作成してテストするためにWebサーバーに特別なソフトウェアをインストールする必要はありません。

サーバーサイドプログラミング

サーバー側のテクノロジには、PHPとMicrosoftのASP.NETが含まれます。 サーバー側のコードは、サイト訪問者のブラウザではなく、サイトのWebサーバーで実行されます。 サーバー側のプログラミングを使用するWebページにアクセスすると、Webページを表示しているときに、サーバーが命令の実行でビジー状態になっていることに気付かない場合があります。 サーバー側の処理の良い例は、画像のサイズを変更できるASP.NETページです。 ボタンをクリックして画像をWebサーバーにアップロードすると、サーバー上のコードによって画像のサイズが変更され、新しい画像がブラウザに返送されます。

サーバー側の追加のメリット

サーバー側のプログラミングでは、データを保存および取得することもできます。 これは、ログイン情報の保存と取得、データベースに保存されているデータを検索できるようにするなどのタスクを実行する場合に重要です。 そのデータは、Webサーバー上のデータベースやXMLファイルなどの場所に存在できます。 サーバー側の処理は、プロプライエタリコードの機密を保持するのにも役立ちます。 たとえば、会社が秘密にしている独自の販売式を使用して計算を実行するPHPコードを作成できます。 コードはサーバー上で実行されるため、ブラウザーでWebページを表示するユーザーはそのコードを表示できません。

ハイブリッドWebアプリケーション

多くのWebアプリは、サーバー側とクライアント側のプログラミングを組み合わせて使用​​します。 たとえば、クライアント側のスクリプトはフォーム入力を検証できますが、サイト訪問者がフォームデータをサーバーに送信した後、サーバー側のコードを使用して再度検証することをお勧めします。 Webページの1つは、JavaScriptスライドショーを使用して人々を楽しませ、サーバー側のコードを使用して販売注文を処理する場合があります。 使用するテクノロジに関係なく、Webアプリを展開する前に徹底的にテストすることが重要です。