Javaの習得に興味がありますか?JavaはWebアプリ、PCアプリ、Androidアプリに使用されるプログラミング言語です。本記事は、特にJavaでWebアプリを開発したい人やJavaプログラミングを始めたけど何の役に立つのか理解できていないという人に向けて、JavaによるWebアプリの基本や事例について説明しています。
1.JavaでWebアプリをつくるための基本知識
JavaでWebアプリを作る前に、まずWebアプリケーションの基本を理解しましょう。WebアプリケーションとはWebブラウザ上で動くソフトウェアのことを意味します。
Webアプリにはクライアントとサーバーの2つのコンピュータがありそれらをネットワークが繋いでいるというしくみになっています。
- クライアント:ユーザー側のコンピュータ
- サーバー:サービスを提供する側のコンピュータ。
クライアント側は、ブラウザを立ち上げてデータ入力したり、サーバーから受けとったデータを表示させたりといった割と単純なことを行います。サーバー側はデータベースを操作したり、何十万人もいるユーザーのアクセスを管理したりといった複雑な計算処理を行います。そのため、クライアント側よりもずっとハイスペックです。クライアント側はネットワークをつかって、サーバー側に要求を送信(リクエスト)し、サーバー側がそれに応じる(レスポンス)ことによってサービスを利用することができます。
サーバー側には、さらに3つのサーバーがあり、相互にやりとりできるようになっています。これをWeb三層構造と言い、ほとんどのWebアプリケーションはこの仕組みで動いています。
Webサーバー:クライアントとやりとりを行う
APサーバー:リクエスト応じてデータを取得し、処理する
DBサーバー:Webサービスに必要な情報を保持する
2. JavaはWebアプリケーションでどんな役割をしているか
JavaによるWebアプリケーションを理解するには、まず動的コンテンツと静的コンテンツを理解する必要があります。
2.1. 動的コンテンツと静的コンテンツ
まず、わたしたちが見ているWebページには静的と動的の2つに分けられます。
- 静的なWebページ:だれがいつ見ても同じコンテンツが表示される
(例)企業のホームページ。誰がみても事業内容は同じ。 - 動的なWebページ:クライアントからのリクエストに応じて異なるコンテンツが表示される(例)ショッピングサイト。ユーザーに表示される購入履歴は異なる
静的コンテンツでは、ライアントからのリクエストに対してWebサーバ内の予め決められた内容をそのまま応答しています。
一方、動的コンテンツでは、Webサーバーがリクエストを受け取った後、APサーバーにデータ処理を依頼したり、DBサーバーから必要なデータを取得したりします。
2.2.Javaは動的コンテンツをつくる技術
これまで説明したように、APサーバではWebサーバから受け取ったリクエストを基にアプリケーションが実行されます。このアプリケーションを作っているプログラミング言語のひとつがJavaです。JavaはOSに依存しないこと、処理速度の速さ、セキュリティの高さというメリットがあり、世界中で最も多く使用されている言語です。
3.JavaによるWebアプリの例
ほとんどのWebアプリの開発はJava言語で行うことができます。
JavaでつくられたWebアプリの有名な例は、Twitter, Evernote、Google、Youtube 、楽天、ebay、Amazonなどです。
Javaは実行スピードが速いため、大規模なWebサービスやWebシステムの開発で活躍しています。
4. JavaでWebアプリを開発しよう
それでは、どのようにしてJavaによるWebアプリの作り方を学んでいけば良いのでしょうか。まずは.Javaの基礎を学び、開発環境を構築する必要があります。概要からプログラミング、環境構築の方法について、無料動画で解説しているサイトがあるので、活用しましょう。動画で概要を把握したあとに専門書を購入するのもおすすめです。
Javaを学習できるサイト:ドットインストール、ウズカレオンライン
5. 最後に
JavaでWebアプリケーションを開発するためにしっておきたい基礎知識を理解できましたか?Webアプリケーションしくみを理解することで、あなたのJava学習のモチベーションアップにつながれば幸いです。