Java
トップクラスのシェアを誇るオブジェクト指向のプログラミング言語。
Java(ジャバ)とは?
Javaは広義では、実行環境や開発環境も意味しますが、本記事ではプログラミング言語として扱います。
1995年、Javaはサン・マイクロシステムズ社によりリリースされ、2007年にオープンソース化されており、Oracle社のサイトから誰でもダウンロードして利用が可能です。
Javaはその汎用性やセキュリティの高さから、多くのエンジニアから支持されているプログラミング言語です。
Javaはオブジェクト指向言語
Javaは「オブジェクト指向言語」と呼ばれています。
オブジェクト指向とは、「モノ」に注目した考え方のことを言います。
オブジェクト指向を用いると、プログラムの管理を細かく行えるため、チームで開発するときに作業効率が上がります。
ここでは、オブジェクト指向の詳しい説明は省きますが、初心者の方は「オブジェクト指向を用いるとプログラムの管理が楽になる」ということだけ覚えてもらえれば大丈夫です。
Javaはプラットフォームに依存しない
Javaはプラットフォームに依存しないで動作します。
OSに関係なくWindowsでもMacでも動きますし、スマホでも電化製品の中でも動作可能です。
プラットフォームに依存しないので、Javaは多種多様な使い方ができます。
Javaは現在シェア2位の人気言語
Javaはシェア・人気が高いプログラミング言語です。
PYPL PopularitY of Programming Language Indexでは現在のシェアランキングが記載されていますが、執筆時点ではPythonに抜かれているものの、依然としてJavaの人気は高い言語であることがわかります。
Javaプログラマーの求人案件は数多くあるので、Javaを習得していれば就職に優位に働くでしょう。
また、現在はプログラマー向けの案件紹介やクラウドソーシングなどのプラットフォームもあるので、フリーランスエンジニアとしても活動しやすい言語と言えるでしょう。
Javaでできること
Javaはプラットフォームに依存しないため、Javaで様々なものを作れます。
ここではJavaで良く作られている代表的なものを、4つ挙げたいと思います。
スマートフォンアプリ
スマートフォンのAndroidアプリの開発にはJavaが使われています。
ゲームやライフスタイル、エンタメアプリなど様々なジャンルのアプリをJavaで作ることができます。
ちなみにiPhoneアプリの場合は、Objective-Cという言語が使われることが多いです。
ここ最近だとObjective-Cだけではなく、Swiftという言語も使われています。
自分の作りたいものを踏まえて、勉強する言語を選択しましょう。
またAndoroidアプリはJavaだけではなく、Kotlinという言語が利用されることも多く、Javaよりも簡潔にコードが書ける言語として人気が高まりつつあります。
まとめめると以下のようになります。
Androidアプリ→Java、Kotlin
iPhoneアプリ→Objective-C、Swift
デスクトップアプリ
「OpenOffice」や「一太郎」といった有名なデスクトップアプリも、Javaで作られています。
JavaならWindowsでもMacでも動かせるため、デスクトップアプリを作るのに採用されることが多いです。
webアプリ(業務系システム)
業務システムとは、業務効率化を図るために会社で使われるシステムのことです。
顧客管理システムや経理向け会計システムがこれにあたります。
Javaは安定性が高く、セキュリティー面にも優れている言語です。
会社の大事な情報を扱うシステムの作成には適しているのです。
家電製品
冷蔵庫や洗濯機といった家電製品も、Javaで動くようにできています。
もともとJavaは家電製品向けに作られた言語でした。
あなたの身の回りにも、Javaで動いている家電製品があるかもしれません。
Javaがプログラミング初心者にもオススメの理由
開発環境の準備が容易
Javaは動作環境を用意することが容易です。他の言語ではここで躓き、挫折してしまう人もいる中で容易かつ無料です。開発環境に関しては後ほど記述しておりますので、そちらを参考にしてください。
開発案件が多く、報酬が高い
Javaがなぜおすすめか、それは案件の多さと報酬が高いことが挙げられます。
Javaというのは歴史もあり大規模な案件などでは主力として使用されています。
案件としては多く需要がありますが、エンジニアとしては不足しているところが現状です。
しかし、案件が多く、報酬が高いのですが、Javaは比較的難しい言語なので本腰を入れて習得することを忘れないようにしましょう。
Java初心者の勉強方法
Javaの勉強にかかる時間は?
個人差はあるものの、やや難易度が高いとも言われるJava少なくとも2〜400時間、多い人だと1000時間は必要とも言われています。
ただ、時間だけ書いても分かりにくいので少し分かりやすくするために、1日24時間のうちご自身が勉強に費やせる時間がどのくらいか、まずはみてみましょう。
8時間勉強できる方でも1000時間というと125日(約4ヶ月)、400時間であれば50日ですね。これでも2ヶ月ほどかかってしまいます。
さて、時間だけ提示してみましたが闇雲に1000時間勉強すれば出来るわけでもなく如何に計画性を持って勉強できるかによって1000時間かかる予定だった時間が300時間などに減らすことができるかもしれないのです。
それでは、具体的にどのような順番で学習するのが効率的なのでしょうか。
初心者が勉強する順番
まずは、開発環境を調べましょう。
独学で勉強しようと思ったら、参考書を購入しましょう。そして読み進め、サンプルプログラムなどで手を動かすところから始めます。
その後、フレームワークを勉強します。主に使われているのは、StrutsやSpringなのでこの辺りを学びます。
独学で大丈夫?独学で限界を感じたり短時間でマスターしたい場合は?
独学で進めてもどうしても先に進めない壁や、独学での限界を感じることがあるかもしれません。
そんな時どうしたら良いでしょうか?
1つの手としてはスクールに通うという手段もあります。
担当の方の当たり外れもあったり、やはりどうしても金銭面が高く手が出しにくいということもあります。
私がオススメするのは勉強会などに参加して、横のつながりを深め、出来るエンジニアと関係を作りプログラムを見てもらうことです。
スクールだと相手の実力などが見れませんが勉強会など対面で会ったことのある人ならば信頼度も増しますし、プログラマーとしての実力なども直接見ることができます。
ただ、第一線で活躍するプログラマーが周りにいるのは稀なケースだと思いますので、繋がりがない方はプログラミングスクールに通うか、がんばって独学で勉強を進めていくかのどちらかになると思います。
Javaの勉強で挫折しないためには?
プログラミングを初めて勉強した時に、誰しも考えてしまうこととして「全て覚えなきゃいけないんだろうか…」ということがあります。
実はこれが挫折してしまう1番の原因ではないかと思います。活躍しているエンジニアにも全てを完璧に覚えている人など実は少ないのです。
絶対に覚えないといけないことは「基本的な文法」、「値や変数」、「オブジェクト指向の基本的な知識」この3点です。
なぜ、他のはそこまで重要ではないかというと、Java開発でよく使用される開発ツールの「Eclipse」や「Inteli J」には補完機能などがあり暗記せずともプログラミングができるのです。
また、今の時代は調べるとほとんどの関数、機能で解説などの載っているサイトもあるのでその辺りも活用すれば覚えていなくとも作れてしまうのです。
開発環境について
何度か登場した、開発環境についてこれより解説していこうと思います。
各種本などを読み進めていくと「Javaをインストールしよう」などの箇所でjdk、「Eclipseのダウンロードとインストール」などの箇所でEclipse、「XAMPPをインストールしよう」の箇所でXAMPPをそれぞれいれようとしますが、いきなりやろうとするとそれぞれのインストールで躓きうまく動作しないこともあるので1つずつ必要になったタイミングで各々調べながらやるようにしましょう。
最初はjdkをインストールしてJavaで簡単なプログラムを書いてみる流れが良いと思います。そして、Javaでアプリなどを作れる段階になったらEclipseを調べながら入れてみましょう。
アプリを動かしてみるタイミングでXAMPPを調べながら導入してみると良いと思います。
このように段階を踏むことで躓きを解消できるかもしれません。
Javaの勉強に役立つ書籍
実際に読んだことがあるJavaの勉強に役立つ書籍をご紹介いたします。
以下の2点が定番の書籍となります。
「やさしいJava」著:高橋麻奈
こちらは初学者にもおすすめの書籍となります。なぜかというと、Javaの学び始めではまず基礎の文法を覚える必要がありますが、そのほとんどを収録しています。
また、サンプルコードも充実しているので実際に動かすこともでき入門には最適な1冊と言えます。
オラクル認定資格教科書 Javaプログラマ Bronze SE 7/8
こちらはJavaの認定資格向けの本で、その中でも一番初級向きのBronzeに合わせた書籍となります。
ただ、こちらだけで進めるのはあまりお勧めできません。
なぜかというと、資格取得に特化したものなので説明なども少しずつ省かれているためです。
先述した、やさしいJavaと通称、紫本と言われるこの認定資格むけの本を合わせると良いでしょう。
やや受験料が高いものの、このオラクル認定資格を取得するとJavaはこれだけできますという指標にもなるので未経験者にとっては非常に良いものと言えます。
オラクル認定資格教科書 Javaプログラマ Bronze SE 7/8(Amazon)
Javaが勉強できる無料学習サービス
Javaの基礎部分であれば無料のオンライン学習サービスでも一部の講座は無料で学習することができます。
例えば、Progate(プロゲート)であればJava講座の一部が無料会員でも学習することが可能なほか、paiza(パイザ)ラーニングではJava入門編1、2が無料で勉強できます。
初めてのプログラミングの勉強をされる方は、まずは無料で利用できるオンライン学習サービスから入り、その後独学なり、プログラミングスクールに通うなりステップアップしていくと良いでしょう。
有料会員であればドットインストールでもJavaの勉強ができます。
Javaコースが受講できるオンラインのプログラミングスクール
お金をかけずに独学でJavaの勉強をするのも良いですが、独学の難点は挫折しやすいことです。
今までプログラミングの勉強で挫折した経験がある方は、プログラミングスクールを受講するのがオススメです。
また、仕事などが忙しくて勉強する時間の確保が難しい場合は、自分のペースで学習しやすいオンライン完結型のプログラミングスクールのほうが効率よく学習できます。
プログラミングスクールと言っても、校舎に通って受講できるタイプもあれば、オンラインで完結するスクールなどタイプは様々なので、自分に合ったプログラミングスクールを選びましょう。
以下ではJavaコースがあるオンライン型のプログラミングスクールをまとめています。
受講料金も掲載いたしますが、当サイトが独自に調査した結果となりますので、あくまで参考程度にご覧ください。
スクール | コース | 料金 |
---|---|---|
LINEヤフーテックアカデミー | Webアプリケーション開発コース | 550,000円 補助金適用で最大70%キャッシュバック ※1 |
テックアカデミー | Javaコース | 185,900円~ |
忍者CODE | 独学プラン Javaコース | 98,000円 |
コードキャンプ | Javaマスターコース | 198,000円~ |
DMM WEBCAMP | Javaコース | 169,800円~ |
デイトラ | Javaコース | 129,800円 |
※1 経済産業省リスキリングを通じたキャリアアップ支援事業の対象コースで、条件を満たすことで受講料(税抜)の総額から最大70%キャッシュバックされます。
コードキャンプやテックアカデミーではJava専門のコースが用意されており、受講期間も2~6ヶ月ほどから選ぶことができます。
忍者CODEやデイトラは安い料金でJavaコースを受講することができます。
特に忍者CODEは、金利や手数料なしで分割払いが可能。負担を軽くしながら受講できるのでおすすめ。