どうも、コウイチです。
今回は、プログラミング初心者向けに、「Javaとは何か?」について解説していきたいと思います。
後で説明しますが、PHPなどとは違って、Javaはオブジェクト指向という言語システムを採用しています。
僕は高校時代に、JavaでWindowsでアプリケーションを作成して以来、オブジェクト指向の世界にハマってしまいました。
あれから10年。
元々はIT企業にプログラマーとして勤めていましたが、会社を辞め現在はフリープログラマーとして活動しています。
Javaを修得してから10年以上が経過してもなお、Javaで食べている僕が、Javaに関しての基本を初心者向けにご紹介したいと思います。
Javaは敷居が高い?
そんなことはないですよ!
それではどうぞ!
Javaとは?
Javaとは、プログラミング言語のひとつで、WindowsやMac、Linuxなど、OSに依存せずに動作するのが特徴です。
多くの現場で使用されており、プログラミング未経験の方でも名前くらいは知っている方も多いでしょう。
開発環境はすべて無料でダウンロードできるのに加え、多くの企業においてシステム開発で使われたり、Androidアプリを開発したりするのにも使われている、非常にメジャーで実用的なプログラミング言語です。
Javaでできること
Javaは非常に汎用的な言語です。
例えば、Twitter等のWeb上で動作するアプリケーションや、Windowsのデスクトップアプリケーション、Androidのアプリケーション、また、これは有名な話ですが、Minecraftという人気ゲームもJavaで作られています。
僕の持っているブルーレイレコーダーも、Javaマークが貼ってあり、Javaで開発されていたりします。
このように、JavaはWebアプリケーションの開発から、大規模な組み込み開発まで、非常に幅広く使われる言語となっています。
また、僕の経験ですがプログラマーとしては、何より「どのOSでも同じように動く」といった点が、Javaを採用する理由になることがあります。
Windows、Macの両方に対応したアプリケーションを開発するには、有効な選択肢となります。
Javaを使うメリット
次に、Javaを選択するメリットを書いていきます。
オブジェクト指向のプログラミング言語である。
オブジェクト指向とは、モノ単位で処理を設計する考え方のことです。設計されたモノ同士が連動して動作していきます。
この考え方を使うと、モノ単位で開発が行えるので大人数の開発に向いています。他人同士が開発したモノ同士を連動させることが簡単だからです。
イメージが沸きにくいかもしれませんが、ようは大規模開発に向いているということです。
WindowsでもMacでもLinuxでも動く
はい、Javaで作られたプログラムは、「Javaを動かす専用のソフトウェア」があるので、それがインストールされていれば、どんなOSでも動作します。
「WindowsとMacの両方で動作するソフトウェアを開発したい」といった願いは、Javaを使えば解決します。
処理速度が速い
Javaはコンパイラ言語なので、機械語に変換しながら実行するインタプリタ(PHPなどがそうです)と違い、すでにコンパイルして機械語になったものを改めて実行するような形なので、処理が速いです。
(Javaは厳密にはインタプリタとコンパイラの中間なのですが、ここでは割愛します)。
小規模なシステム開発では速度の恩恵が受けられませんが、大規模開発では当然ながら差が出ますので、大きなメリットです。
メジャーな言語である。
メジャーな言語であるため、学習サイトや書籍がそろっています。
つまずいたとしても情報収集がカンタンにできます。
マイナーな言語の場合、何かエラーが起きた際にもネット上に情報が無く、原因の究明に苦労することがありますが、Javaではそのような心配はほとんどありません。
あなたのエラーは他の誰かしらが経験していて、対策に関する情報がネット上に沢山公開されていますから。
Javaを使うデメリット
では反対に、Javaを使うデメリットについて見ていきます。
下準備が大変
Javaでプログラミングを行うには、事前準備として、Eclipseと呼ばれる開発環境のインストールや設定を行う必要があります。
慣れれば簡単ですが、はじめのうちは、windows標準のメモ帳でも書けるPHPとは違い、コードを書くまでに時間がかかるかもしれません。
オブジェクト指向が難しい
先ほどもご紹介した「モノ単位で処理を設計する」オブジェクト指向ですが、小規模な機能を作成する場合、かえって時間がかかることがあります。
Javaは大規模開発にこそ向いていると書きましたが、オブジェクト指向を使用して行う始めのコード設計に時間がかかるので、ある程度規模の大きなシステムに向いています。
大規模システムでは始めの設計が肝心で、後々修正するには大きなコストがかかったりするので、そういった意味でも、行き当たりばったりでもある程度かけてしまう小規模プログラムには向きません。
仮想マシンが入っていないと動かない
仮想マシンと呼ばれる「Javaを動かす専用のソフトウェア」が入っていないと動作しないので、動作しない場合はユーザーに対して、仮想マシンのインストールをしてもらう必要があります。
Javaの基本的な書き方
ここではJavaの基本的な書き方について解説したいと思います。
おおまかなコーディングのイメージを掴んでもらえたら幸いです。
Javaファイル拡張子は .Javaになります。
簡単な文字列を表示する
まず初めに、「Javaとは?」という文字列をコンソール画面に表示してみましょう。
public class JavaToha { public static void main(String[] args) { System.out.println("Javaとは?"); } }
開発環境の画面に結果が表示されています。
変数
変数を定義するには、変数名の先頭にint(数値型)等の、格納する値の種類を指定して宣言します。
int x = 5;
変数の概念について詳しくはこちら
if文
if文とは「もし○○なら、××する」という構文です。
以下のように記述します。
public class JavaToha { public static void main(String[] args) { int x = 5; if(x == 5){ System.out.println("xは、5です。"); }else{ System.out.println("xは、5ではありません。"); } } }
for文
for文とは、繰り返し処理を行うときに使用する構文です。
以下のように記述するだけで、文字の出力を10回繰り返します。
public class JavaToha { public static void main(String[] args) { for(int i=0; i<10; i++){ System.out.println("衣食住よりプログラミング"); } } }
Javaのオススメ学習サイト20選
これからJavaを学習する方向けに、オススメ学習サイトをピックアップしてみました。
この機会に、自分に合った学習サイトを知っておきましょう。
オブジェクト指向にどっぷりハマってしまった僕が、初心者からプロになるために役立つ学習サイトを厳選してご紹介している記事がありますので、是非ご覧ください!
Javaの資格は何がある?
Javaの資格には、
の2つがあります。
資格は自分の実力を示す確かな指標となりますので、今後Javaに関して自信をつけて来たら、資格を取ってみるのはオススメです。
終わりに
さてここまで、初心者向けにJavaとは何か?についてお伝えしてきました。
Javaはオブジェクト指向がネックになり、敷居が高いと感じる方は多いですが、
ハマると大変面白い考え方で、コード設計をするのが楽しくなります。
是非、学習サイトや書籍を使ってJavaライフを楽しんでください。
ではまた!
コメント