【Java入門】概要と初心者向けおすすめ学習本10選

  • 2017-9-19

Javaは数あるプログラミング言語のひとつで、もっとも使われている開発言語と言っても過言ではありません。Webアプリケーションはもちろんのこと、最近ではAndroidを搭載したスマートフォンのアプリケーション開発にも使われています。これからプログラム開発をしようと考えているなら、1つの選択肢として、Javaを検討されている方も多いことでしょう。Javaをマスターできれば、プロの開発現場でも重宝されること間違いなし! 本稿では、初心者の方を対象に、Javaの概要を説明しながら、Javaの入門書をご紹介いたします。

Javaの概要

kuguru,クグル,くぐる

Javaは、C言語というプログラミング言語をベースに作られました。C言語はとてもメジャーな開発言語で、これまで数多くのシステムがC言語で作成されてきました。C言語をベースとした言語はJava以外にも数多く存在しているくらいです。

Javaはまた、本格的なオブジェクト指向言語としても有名です。オブジェクト指向は、現在、プログラム開発をする上で欠かせない考え方です。Javaはそのオブジェクト指向を完全に具現化しています。

そして、あらゆる種類の機械で動くという特徴もあります。パソコンはもちろん、業務用のサーバやスマホまで、全部カバーしています。
Javaの歴史は比較的古く、Java 1.0のリリースは1996年です。約20年前ですね。元々はSun Microsystemsという会社が開発したものでした。Sun Microsystems社は当時Unixという高速コンピュータ(ワークステーションと呼ばれています)の開発元として知られ、非常に勢いのあった会社です。

Javaはどの機械の上でも動作するという特徴をもっていたため、開発者に広く受入れられ、爆発的に普及しました。そのころ、同じく一世を風靡したLinuxというパソコン上で動くUnixが流行しはじめたころでもあり、このJava+Linuxという組み合わせは基本無料だったこともあって、非常に多くのシステム開発で用いられるようになりました。

その後、Webアプリケーションの開発はJavaで行なうことが主流となり、現在に至っています。
Javaは、デザインパターンと呼ばれるオブジェクト指向の設計手法開発にも活躍しており、オブジェクト指向開発の発展にも寄与してきました。現在ではSun Microsystems社がOracle社に買収されたため、Javaの管理はOracle社が行っています。

Javaの特徴

Java,kuguru,クグル,くぐる

本格的なオブジェクト指向言語

まずは、何と言っても本格的なオブジェクト指向言語であることが特徴です。Javaが発表された当時、システムの開発はC言語やVisualBasic、COBOLなど構造化言語(非オブジェクト指向言語)が主流でした。オブジェクト指向言語としてはSmallTalkなどがありましたが、開発現場で使用されるほどメジャーな存在ではありませんでした。そんな中、Javaはオブジェクト指向開発という概念を開発現場にもたらした画期的な言語でした。それ以降、登場する開発言語はすべてオブジェクト指向言語であるというくらい、システム開発現場にインパクトを与えました。

マルチプラットフォーム

それまでの言語は、コンパイルされた実行ファイルは、各オペレーティングシステム(OS)固有のものとなり、例えばパソコン上でコンパイルされた実行ファイルは、Unix上では動作しないのが常識でした。Javaは、コンパイルした実行ファイルが仮想マシン(VM:Virtual Machine)上で動作するという仕様です。このVMは各オペレーティングごとに用意されたため、VMさえあれば、パソコン上でもUnix上でも、同じ実行ファイルが動作します。このようなマルチプラットフォーム環境も画期的なもので、Javaの普及の原動力となっています。

需要が高い

Javaをマスターしていれば、一般利用者向けのWebアプリケーションから企業内の基幹業務システムまで幅広く開発することができます。最近ではスマートフォンのアプリ開発もJavaで行なうため、その需要はますます高くなっています。これまで数多くのシステムがJavaで開発されており、そのメンテナンスを含めると、Java開発者の需要は極めて高いと言えます。

Javaを学習する上で知っておきたい開発環境構築

kuguru,クグル,くぐる

開発環境とは、Javaでシステムを開発するために必要なプログラム群といった意味合いです。まずはコンパイル環境を導入します。Javaを動かすためには、最低限、このコンパイル環境と、実行するためのVM(Virtual Machie)が必要です。どちらも、oracleのHPから無料でダウンロードできます。

これで最低限の環境はできたのですが、開発しやすくするために便利なツールを導入しましょう。ソースコードの作成、コンパイル、デバッグまでをひとつのツールでできる、統合開発環境というものです。Javaの統合開発環境はいくつかありますが、eclipsが有名です。これも無料でダウンロードできます。

JavaでWeb開発をしてみたい!という場合は、Windows標準のIISを使うより、ApacheというWebサーバを使うほうが親和性が高いです。Apacheも無料で下記URLからダウンロードできます。

Javaを学習するメリット

一番のメリットは、開発者のニーズが高いので、開発の仕事が受けやすいことです。これからIT関連企業への就職を目指している方は、企業内で使用される言語がJavaである確率が極めて高いので、知っておくと得をするでしょう。

また、本格的なオブジェクト指向言語なので、オブジェクト指向の勉強にもなります。最近の開発ではオブジェクト指向が当たり前になっていて、設計もオブジェクト指向を知らないとできない状態です。ぜひ、Javaでオブジェクト指向をマスタしてください。

さらに、JavaはC言語ベースなので、他のC言語ベースの開発言語を勉強しやすくなるというメリットもあります。元となったC言語はもちろん、C++やC#、RubyやPerl、PHPなどが候補です。

初めてでも失敗しないJava入門書

これならわかる!Java入門講座

Java初心者だけでなく、プログラミング初心者でもわかりやすく解説してくれています。

楽しく学ぶJava入門[1日目]はじめてのJavaプログラミング

1日から7日にわけて、計7冊が発刊されています。1冊の内容が軽くて1時間くらいで読めるため、分厚い本だと挫折しそうな人には好都合です。

新わかりやすいJava入門編

プログラミングが初めてでも理解できるよう、丁寧に解説されています。「通過テスト」があるので、理解度がどのくらいか確認することができます。

ゼロからわかる Java超入門

実際にプログラムの入力とその実行結果を確認しながら進む形式をとっているため、手を動かす分、理解が進むようになっています。

プログラミングの基礎からしっかり学ぼう!Javaレッスンブック

Javaを通じて、プログラミング特有の考え方や概念も学べるようになっています。

ちょっとはじめるJava

Javaの基礎となる部分だけにフォーカスして、簡単なプログラムを使って説明されています。

わかりやすいJavaEEウェブシステム入門

Java EEという、JavaでWebシステムを構築する時に使用するフレームワークについての書籍です。Javaの言語についての勉強が一段落したら、読んでみるとよいでしょう。

アクティブラーニングで学ぶJavaプログラミングの基礎

豊富な演習問題が掲載されており、手を動かしながら学べるようになっています。

スッキリわかるJava入門 第2版

初心者には理解が難しいとされるオブジェクト指向まで丁寧に解説してくれます。Javaプログラミングの「なぜ?」がわかる解説が光ります。

プロになるためのWeb技術入門

アプリケーション開発の基礎をしっかり学べる入門書です。Javaというよりは、Webシステム構築に必要な知識の学習に向いています。

まとめ

本稿では、Javaの説明を交えながら、入門書についてご紹介しました。プログラミング言語は、実は流行り廃りが激しいジャンルです。これまで主力だった開発言語が、今では見向きもされない、ということが良くあります。その中で、Javaはこれまでも、そしてこれからも廃れることなくスタンダードの地位を維持しつづけるでしょう。これからプログラミング言語を学ぶなら、圧倒的にJavaがおすすめです。

ページ上部へ戻る