Javaって何がすごいの? ーEvernoteもMinecraftも作れるらしい!

  • 2018年8月22日
  • 2019年7月10日
  • Java





習得したいプログラミング言語として、Javaを選択した理由を前回書きました。
でも私は、「そもそもJavaってなに??」と思うほどのプログラミングのド素人です。
今回は、Javaがどのようなプログラミング言語なのか、詳しく見ていきます。

Javaは、1995年にSun Microsystems社からリリースされたプログラミング言語です。
現在は、Oracle社から提供されています。

プログラミング言語の中でも人気が高く、公式サイトによれば、世界には900万人以上のJava開発者がいるとか。
そんなにたくさんいるんですね。
20年以上、人気を博し続けるとは、すごい言語だと思います。
なぜJavaは人気なのか、Javaの特徴は3つあるようです。

Javaのすごいところ ー1. OS環境に依存しない

調べていく中で、私が一番すごいと感じた点は、JavaがOS環境に依存せず機能する言語だということです。

つまり、プログラムを一度書きさえすれば、Windows、Mac、Linuxなどのどんな環境でも動かせるというメリットを持っています。

開発者とユーザー間でも、OSを気にすることなくやりとりできるということだと思います。
汎用性が高ければ、それだけ広がりやすいということでもあるので、非常に使い勝手の良い言語であると言えます。

Javaのすごいところ ー2. たくさんのものに使われている

以下、Java公式HP https://java.com/ja/ からの抜粋です。

“ノートブックからデータセンター、ゲーム・コンソールから科学計算用スーパーコンピュータ、携帯電話からインターネットにいたるまでJavaはあらゆるところにあります。”

“Javaを使用すれば、ゲームで遊んだり、写真のアップロードやオンラインでのチャット、バーチャル・ツアーへの参加ができるほか、オンライン・トレーニング、オンライン・バンキング、インタラクティブ・マップなどのサービスを利用することも可能です。”

いろいろ書かれすぎて、もはやよく分かりませんが(笑)、
この文章からも、Javaがいろんなところで使われている言語だということが分かりますね。

私が調べた限りだと、Javaが使われているものの具体例として、以下のものがあるようです。
・Android
・Twitter
・Evernote
・ゲーム(Minecraft)
・企業内システム(銀行など)
・家電製品

個人的には、Minecraftが一番の驚き。
あんなに複雑そうなゲームでさえ、Javaで作れるとは!

ここに挙げただけでも、生活で接する数多くのものにJavaが使用されていることが分かります。
それだけ応用が利き、将来性があることを意味しているのではないでしょうか。
考えさえすればどんなものでも生み出せるような気がして、夢のある言語だなーと思います。




Javaのすごいところ ー3. オブジェクト指向型言語であるところ

Javaはオブジェクト指向型言語の一つです。
「オブジェクト指向型言語」って、プログラミング言語を調べ始めると必ず出会うワードです。
でも、なかなか言葉が難しくて、素人にはなんのことやら。

「オブジェクト指向」は、プログラミングの考え方の一つ。
プログラミングを ”部品一つ一つのように書く” という考え方のようです。
そのため、同じ部品を何回も使い回すことができ、同じことを書かなくて済むから、大きなプロジェクトでも複雑になりにくい。
…と、現時点では理解しています。

とりあえずJavaはオブジェクト指向型であるが故に、大規模なことができるみたいです。
かなりざっくりした説明(汗)。
ちゃんと説明するにはまだまだ知識が足りないので、また別の機会に詳しく書けたらいいなと思います。

Javaの難しいところ

逆に、Javaのデメリットは2点あるようです。

1. 環境設定が難しい
前回のブログでも書きましたが、Javaはバックエンドに分類されます。
そのため、動作させるためにはそのための環境構築をする必要があり、この構築がなかなか難しいようです。

2. コードが複雑
メリットとしてオブジェクト指向型言語であることを挙げましたが、これはデメリットでもあります。
オブジェクト指向を理解するのが難しく、理解できないとコードが複雑に思えて書けないようです。

2番については、自分の理解力次第といった部分もありそうです。

ですが、1番の環境設定については、なんとか対策できる気もします。
私が購入した本「スッキリわかるJava入門」では、難しい環境設定の必要なくJavaでのプログラミングを可能にするシステムが構築されています。
プログラマーとして働くためには、もちろん最終的には環境設定を学ぶ必要がありますが、まずは環境設定抜きで言語を学んでみるというのも一つの手ではないでしょうか。

さいごに

Javaについて調べるうちに、すごくマルチな言語なんだなーと感じました。
自分がどんなものを開発できるか、ワクワクしながら学んでいきたいと思います。