【プログラミング言語】Java(ジャバ)

当ページのリンクには広告が含まれています。

こんにちは、KiYOです。

システムエンジニア歴20年オーバー。製造現場に特化したシステム開発を主にやってます。

新しい物好きで色々なIT技術を勉強しては、仕事に使って行ってます。

KiYO
KiYO

今回はJavaについて紹介します。

スマホやWebなど幅広く利用されているオブジェクト指向言語Javaを解説します。

この記事でわかる事
  • Javaの特徴
  • Javaの歴史
  • Javaの利用シーン

今回はこの本を参考に、私の独断と偏見で記事を書いています。

言語を5点中評価

容易性容易に言語習得できるか?
将来性将来性があるか?4.5
普及度普及しているか?
保守性保守性が高いか?
中毒性ハマるか?
20.5
目次

Javaの特徴

Javaはあらゆる分野で利用されるユーザも多い王道の言語です。

言語の特徴
  • Javaはオブジェクト指向の最も代表的な言語
  • 開発当時(1995年発表)、先進的なオブジェクト指向を取り入れた
  • プラットフォーム非依存を目標として高性能な仮想マシン上で稼働(JVM)
  • マルチスレッドを言語仕様に含み並列計算を可能とした

Javaの歴史

開発者Sun Microsystems
James Arthur Gosling(ジェームズ・アーサー・ゴスリン)
Bill Joy(ビル・ジョイ)
JavaCommunity Process
誕生1995年に発表
公式サイトhttps://java.com/
分類静的型付け、オブジェクト指向
影響を受けた言語C
C++
Eiffel
Smaltalk
Objective-C
C#
影響を与えた言語C#
Scala
Kotlin
D
Dart
Clojure
Groovy
Haxe
PHP
Python
JavaScript
TypeScript
Processing

言語の歴史

1995年Sun MicrosystemsでJames Goslingを中心に開発
1997年JDK1.1リリース(日本語対応、JDBC、JavaBeans)
2002年J2SE 1.4 (オープンな開発体制)
2018年JavaSE10以降、半年に1度のリリースサイクル切り替え
オブジェクト指向
  • Javaはクラスベースのオブジェクト指向言語
  • C++やSmalltalkと比べると比較的記述がわかりやすい
  • 静的型付けとオブジェクト指向の代表的な言語として、多くの言語に影響を与えている
サーブレット/JSP/Tomcat
  • サーブレットとJavaServerPage(JSP)は、Webサーバ上で動くアプリを作るのに便利
  • サーブレットはWebページを動的に生成できる技術
  • JSPはサーブレットをHTMLテンプレート上に書ける技術
  • これらを動かすのに使われるソフトウェアがApacheTomcat
JRE(Java Runtime Engine)
  • Javaのプログラムは、Javaバイトコードにコンパイルされ、JRE(Java実行環境)上で実行されます。
  • javacというjavaソースコードをバイトコードにコンパイルするコマンドがある
  • javaというバイトコードを実行するためのコマンドがある
コラム

Javaの特徴はクラスベースのオブジェクト指向を採用した点です。オブジェクト指向に従って整然としたプログラムを作成できるため、大規模システムの開発においても威力を発揮します。

有効にオブジェクト指向を扱うには、ただJavaを使うだけではいけません。オブジェクト指向への基本的な理解が求められます。

オブジェクト指向で開発を行う際の代表的なパターンを集めた「デザインパターン」などを学んでおきたいところです。

業務で開発をする場合には、エンジニアの教養として、Java言語だけでなくオブジェクト指向に精通することが求められることもあります。

Javaの利用シーン

スマートフォンアプリ(Android)、Webアプリを中心に幅広い分野で使われています。大規模システムでの実績が多く、セキュリティにも配慮されているため、業務システムでこので利用されます。

AndroidとJava
  • Androidアプリの開発では主にJavaが使われている
  • Androidの登場でJavaがリッチなスマホアプリ向け言語として認識される
  • Androidのシェアはスマートフォン市場で75%を超えている(2020年時点)
JVM-Java仮想マシン
  • JVMはJava Virtual Machine(Java仮想マシン)の略で、Javaのプログラムを動かすために必要なソフトです。
  • JREがJava実行環境を包括的に言い表す
  • JVMはJavaバイトコードとして定義された命令セットを実行するスタック型の仮想マシンのこと
  • JVMは実行速度に優れていることで知られています
  • JVM上で動作するプログラミング言語の開発も進みました。Scala、Groovy、Kotlinなどが代表的
フレームワークでWeb開発を加速
  • Web開発でもJavaは人気が高い
  • JavaにはWeb開発を容易にするため、様々なフレームワークが用意されている
  • SpringPlayやJava EE後継のJakarta EEなどのフレームワークがある

まとめ:Androidアプリシェア70% Java圧勝

今回はJavaについて解説しました。

新人時代にJavaの勉強して先輩に色々しごかれたなぁ〜って、思い出しました。

あの時は徹夜徹夜で辛かった😭 いい思い出です。

Javaの必要性
  • 1995年に発表された言語でユーザ数が多く、案件数も多い
  • AndroidアプリやWeb開発など幅広く開発で利用できる
  • フレームワークやライブラリも豊富で開発効率がいい

やりたいことを実現するために、Javaの使い方をマスタしましょう。

何事も覚えることに遅いことはありません。今日が一番若い日です。行動していきましょう!

以上です。KiYOでした!

今回参考にさせていただいた本はこちらです。今回紹介した言語やその他言語も紹介されているので大変勉強になりました。

Udemyというオンライン講座でもプログラミング学習はできます。 再生速度を早めてみたり、何度も見返すことができるのでおすすめです! 私も色々なプログラムをここで学習しています。

[affi id=2]

まとめページで、他のプログラミングも紹介していますので、ご覧ください。

よかったらシェアしてね!
  • URLをコピーしました!
  • URLをコピーしました!

この記事を書いた人

ITの事や自分の経験談など綴っていきたいと思っています。

コメント

コメントする

CAPTCHA


目次