Javaという言語(環境)を知っていますか?
Java
このお茶(本当はCoffeeだと言われてますが)と同じ名前がついているコンピュータ言語(環境も含む)は、スマートフォン(主にAndroid)の開発から大型コンピュータ、そしていまこうしてあなたが見ているWebサービス裏方で使われている環境の一つです。
このJava 今までは、無料で使うことができました。
ところが、どうやら雲行きが怪しくなってきたのです。
今回の「IT小僧の時事放談」は、
「オラクル社がJavaを有料化 それって既定路線? Javaは、使われなくなるのでしょうか?」
と題して
「Javaを巡る騒動がおきている」
について考えてみよう。
最新ニュース
2018年10月3日
記事にご指摘があったので一部訂正いたしました。
ご指摘ありがとうございます。
Java 11からOracle Java SEは有償になります。
リリースは、2018年9月 リリースとなりました。
今回も小難しい話をできるだけ簡単に解説しながらブログにしました。
最後まで読んでいただけたら幸いです。
スポンサーリンク
目次 [閉じる]
新しいバージョンのJavaがインストール可能になりました。
WondowsやMacintoshのパソコンを使っていると
「アップデートを入手可能 新しいバージョンのJavaがインストール可能になりました。」
と表示されることありませんか?
Javaなんて知らねぇよ
というあなた
「オンラインゲーム、チャート表示」などなど ブラウザで表示していてリアルタイムで動作しているものの多くが、Javaで動作しています。
少なくなったと言え、金融系、お役所関連は、まだまだネット上で使われています。
Javaという環境は、インターネットで動作しているものが多いので、ハッキングのターゲットになっています。
古いバージョンだと狙われます。
「アップデートのお知らせ Java」が来たら更新することをオススメします。
更新手順の詳しい手順は、パソコン会社のページに記載されているのでください。
https://www.sony.jp/support/vaio/beginner/dialogue/082.html
コンピュータ言語
Javaは、コンピュータ言語の一つです。
コンピュータ言語って???
あなたが、このブログを見る時にChromeとかFirefoxとかSafariとかEdgeとかIEなどブラウザと呼ばれる「もの」を使っています。
これをアプリケーションと呼んでいるのですが、このアプリケーション(アイコンになっています)
コンピュータ言語をつかってプログラマーが造っています。
コンピュータって一般的には、パソコンの事を指していますが、iPhoneやXperiaなどのスマートフォンもコンピュータの仲間です。
コンピュータのアプリケーションは、突き詰めると2進数の並びでできていますが、人間が2進数で造るのは、困難です。
そこでコンピュータ言語という
比較的、英語の文法に近い形でコンピュータに命令を出せる言語を考えつきました。
これが、コンピュータ言語です。
例えばこんな形です。
え???
よくわからない!
ごもっとも「英語の文法に近い形」なので英文を書くのとは、違っています。
このようなコンピュータ言語は、用途によって数千とも言われています。
そして、コンピュータ言語は、得意不得意があって、適材適所で使い分けられています。
インターネットの世界では、PHPとかRuby、そしてJavaがよく使われています。
最近流行りのAIは、 Python (パイソン)という言語が大流行中
コンピュータ言語にも流行廃りがあって次々と新しいものが登場しては、消えるものもあります。
そのため、コンピュータ技術者は、マルチリンガルが当たり前なのです。
Javaは、古くから使われてきたCとかC++などの欠点を改良し新しい概念(オブジェクト指向)に柔軟に対応できるよう開発された言語の一つです。
Java
Javaは、1990年代にサン・マイクロシステムズという会社に勤めていたジェームズ・ゴスリン、ビル・ジョイという人達によって開発されました。
それまで使われてきた言語の欠点を解消するのと同時に いろいろな種類のコンピュータ(正確には、プラットフォームと呼ばれています)で動作するように考えられてきました。
先進的な考え方といろいろなもので動作するので普及が進み、インターネット上で多く使われてきました。
最近は、大型コンピュータ上でも使われていて、銀行のシステムなどもこのJavaで動作しているものが多くなっています。
そして、Java最大の魅力は、基本、無料で誰でも使用することができたのです。
こんなに便利なJavaですが、サン・マイクロシステムズ社が、2010年1月27日にオラクル社に買収、会社が消滅、Javaの権利は、オラクル社のものとなりました。
Javaについての説明は、こちらにありますので読んでいただければ幸いです。
-
-
Javaが使えればインターネットの王になれるかも プログラム言語夜話 第1話 Java
大塚製薬が販売していた JAVA というお茶がありました。 今でも売っているかな? 「まだ甘い飲み物で食事をしているんですか?」 発売が、1983年 今から35年前の話です。 ネットで検索したら「シン ...
オラクル社(Oracle)が有料化
オラクル社(Oracle)
データベースの分野では、世界のトップクラスです。
データベースの値段もトップクラスで小さな企業では、使えないほど値段が高いです。
一番お安くて、210万円から 数千万、数億円は当たり前の世界です。
年間の保守料も半端なく、保守の契約をしないと
「バグがあっても教えてくれない」
という徹底ぶりです。
確かに製品の先進性、安全性、堅牢性などは、凄い
絶対(限りなく)ミスがあってはならない、超ハイレベルなスピードが必要ならば、抜群の性能を持っていると思います。
一般企業だとそこまでハイレベルが必要ということは、少ないのですが・・・
そのオラクル社(Oracle)が、Javaを入手した段階で
予感はあったのですが
2019年1月からは有償版になってしまいます。
正確には、開発するものが、有償になるのでつくられたアプリには、影響ありません
といっても開発する側は、セキュリティの問題もあるので最新版を使わざる得ない。
今まで無料だったものが、有料になります。
オラクル社(Oracle)の言い分は、わかります。
今まで無償でサポートしてきたんだから、カネとってもいいだろ!
そのとおりです。
まったく異論は、ありません。
しかし、言いたい
Javaが無償で広く使われるようになったタイミングで有料にします。
むむむ!
企業ですから儲けるのは当たり前ですが、普及したところで有料に切り替えられるのは、厳しい
オラクル社を悪く言っているわけではないですよ。
企業ですから 儲けるのは、あたりまえです。
しかし、これで、Javaを使うユーザーは、確実に減ってゆくことでしょう。
Javaは、やがて縮小して消えてゆく運命かも知れません。
Java以外で今、注目されるのがScala(スカラ)とPython(パイソン)
Javaしか書けないエンジニアは、他の言語にも対応できないと仕事がなくなるかも知れません。
Javaしかできない状態は、非常にヤバそうです。
-
-
Java SE 11は無料じゃないよ 先が見えてきたJavaにさようならを言おう
有料版 Java 11 Releasedが、リリースされました。 https://www.infoq.com/news/2018/09/java11-released これまで無料で使えていたものが有 ...
無償で使う可能性もある
無償版のJavaとしてオープンソースの「OpenJDK」というものがあります。
これを使えば、無償なのでいままでどおりのものが使えます。
では、なぜ高い金を払ってまでオラクル社のJavaを使わなければならなくなるのか?
それは、長期サポートです。
オラクル社のサポートという看板と保証が欲しいからです。
ORACLEのページから抜粋します。
無償アップデートの終了時期と有償サポートの提供
オラクルがビルドした公式OpenJDKバイナリは、新バージョンがリリースされたタイミングで旧バージョンの更新を終了します。無償版を利用するユーザーは、新バージョンに移行することでJDKを引き続き無償で更新できます。特定バージョンでJDKの更新を継続したいユーザーには、JDK 11から3年ごとにLTS指定されるフィーチャー・リリースに対してOracle JDKバイナリを有償で提供します。
問題はここです。
オラクルがビルドした公式OpenJDKバイナリは、新バージョンがリリースされたタイミングで旧バージョンの更新を終了します。
年6回の定期リリース・サイクル
新機能が追加される6カ月に1回(毎年3月、9月)のフィーチャー・リリースに加え、脆弱性対策などを施したアップデート・リリースを1年に4回(毎年1月、4月、7月、10月)提供します。
OpenJDKバイナリの更新は、6カ月毎となります。
脆弱性対策などを施したアップデート・リリースしてくれるのは、6ヶ月間だけ
つまり6ヶ月単位で新バージョンにリリースしなければ、そのバージョンは、以後、脆弱性対策は行われません。
商用環境で6カ月ごとにOpenJDKバイナリの更新して試験を行うのは、コスト的に合いません。
打ち合わせやシステムの開発、試験の途中でOpenJDKバイナリの更新が発生するかも知れません。
もし、試験中にバージョンアップとなったら、その試験をしていたバージョンは、脆弱性対策などを施したアップデートがなくなってしまいます。
システムの完成後、半年以内でセキュリティ更新がされないプラットフォームになってしまいます。
そんな状況をユーザーに了解してもらえるかどうか疑問です。
ですからOracleの長期サポートが必要になるのです。
このように、JDKは今後、オラクルが有償で提供していた機能も含めて全てが無償化され、6カ月に1回のサイクルでバージョンアップされます。ただし、ユーザーの中には、「ベンダーのサポートを受けながらJavaを利用したい」といったニーズや、さまざまな事情から「利用しているJDKを特定バージョンで固定したい」、「更新のペースを落としたい」といったニーズが存在します。これらのニーズに応えるために、オラクルはJDK 11より、公式OpenJDKバイナリのアップデート終了後もLTS指定のフィーチャー・リリースに対して有償サポートを提供します。
商用環境で利用できるという意味では、OpenJDKでも同じであると言う意見もりますが、6ヶ月間毎に次のバージョンに更新されるプラットフォームで開発するのはリスクがあります。
「利用しているJDKを特定バージョンで固定したい」
「ベンダーのサポートを受けながらJavaを利用したい」
と記述があるようにシステムを提供する側は、これが通常となるはずです。
脆弱性が対策されないプラットフォームを使い続けることは、企業として大きなリスクでしょう。
金融系や個人情報を扱うサービスでは、信頼が重要です。
携わった方ならご存知かと思いますが、慎重にも慎重を重ねた開発が必要なので
問題が発生した場合のリスクを考えるとしたらOracleの長期サポートが必要になるのです。
そう考えるとここまで対策を続けてくれたオラクル社は、凄いと思いますよ。
オラクル社(Oracle)におカネを払うか? 払わないか?
米オラクル社(Oracle)のOracle JDKは、有償となりおカネを払わなければなりません。
そのかわり、セキュリティをはじめ、サポートを受けることができます。
無料で使いたい場合、オープンソースのJava SE「OpenJDK」を利用することになるわけですが
OpenJDKは、6カ月ごとにバージョンアップというスケジュールになっています。
そこでオラクル社(Oracle)におカネを払いたくないとしたら
- 6カ月ごとのバージョンアップを続けて、バージョンアップごとにシステム屋さんにおカネを払って対応してもらう。
- AdoptOpenJDKなどのOpenJDK以外のJDKを使う。
- セキュリティを担保した上でバージョンアップしない。
- Javaを使わないで他の環境に載せ替える。
4つの方法が考えられるのですが、企業としてどうしたいかを明確にする必要があります。
古いバージョンやアップデートをせずにセキュリティに問題があるものを使っていた場合、そこが原因で個人情報などの漏洩が起きてしまったら企業として大きな痛手を受けることでしょう。
それを考えるとオラクル社(Oracle)におカネを払ってサポートしてもらったほうが安上がりかも知れません。
参考値段としてこちらに「価格表」があるので検索してみてください。
https://faq.oracle.co.jp/app/answers/detail/a_id/2685
https://www.oracle.com/assets/e-pl101005-101005a-n-176288-ja.pdf
この価格表から読み取れる情報から大まかな金額がわかります。
Java SE Advanced Desktop
主にデスクトップ環境での利用
1ユーザー:4800円
年間サポート:1056円
Java SE Advanced
一般的なJava SEの利用
1ユーザー:1万2000円
年間サポート:2640円
または
1プロセッサ:60万円
年間サポート:13万2000円
正確なお見積りは、オラクル社に問い合わせるか、開発会社と相談してください。
Javaの後釜
Microsoft社のC#という環境が広がるかも知れません。
また、Androidの開発は、GoogleのKotlin(コトリン)が使われることになると思います。
OpenJDKが必要なことには、違いありませんが、Javaを使うことは、減るでしょう。
Kotlinスタートブック -新しいAndroidプログラミング
- 著者長澤 太郎
- 価格¥ 3,780(2018/10/05 15:41時点)
- 出版日2016/07/13
- 商品ランキング17,721位
- 単行本(ソフトカバー)356ページ
- ISBN-104865940391
- ISBN-139784865940398
- 出版社リックテレコム
問題は、世界中に数億を超えているJavaで書かれたプログラムをどうするのか?
黙ってオラクル社にお金を払い続けるのか?
それとも、ここで切り替えるか?
IT屋さんの仕事は、まだまだ増えそうですね。
その意味では、Javaが有料になることで新しい案件が増えるので
ありがとう
と思っている会社がありそうですね。
Kotlin(コトリン)は、サーバサイドでも使えそうです。
Kotlin Webアプリケーション 新しいサーバサイドプログラミング
- 著者長澤 太郎
- 価格¥ 3,240(2018/10/05 16:28時点)
- 出版日2017/10/06
- 商品ランキング86,473位
- 単行本(ソフトカバー)284ページ
- ISBN-104865940669
- ISBN-139784865940664
- 出版社リックテレコム
プラットフォーム
これまでも何度か、ブログで話してきましたが、
ITの世界は、プラットフォームを握った企業が、富を得る世界なのです。
Javaという環境をオラクル社が握っていたことで利益が発生することになります。
しかもJavaは、オラクル社が造ったものではなく別の会社の人達が考案したものです。
そして、恐れていることがもう一つあります。
世界中のWebサービスで使われているデータベース
MySQL(マイ・エスキューエル)
大規模システム、高速、信頼性も高く、そして無料(オープンソースで公開)で公開されています。
もちろん業務でも広く使われています。
このMySQL、2008年オラクル社が権利を取得しました。
オラクル社は、データベースが本業です。そしてMySQLもデータベースです。
となると
やがて・・・ 完全有料化?
もうおわかりですよね。
無料で普及させて、それ以外に逃げ場が無くなったところで有料化
これは、
無料で普及させて、みんなが離れられなくなったところで広告媒体
インターネットの世界では、ごく当たり前に行われていることです。
実践ハイパフォーマンスMySQL 第3版
- 著者Baron Schwartz,Peter Zaitsev,Vadim Tkachenko
- 価格¥ 5,184(2018/10/05 16:28時点)
- 出版日2013/11/25
- 商品ランキング287,243位
- 大型本864ページ
- ISBN-104873116384
- ISBN-139784873116389
- 出版社オライリージャパン
まとめ
オラクル社に対して、悪意をもってブログを書いたわけではありません。
サン・マイクロシステムズが危うくなったとき、つまり Javaがどうなるかわからない時に権利を手に入れて、ここまで無料でメンテナンスをしてきたわけです。
企業とすれば、これまでかけてきたコストを回収するのは、当然のことです。
しかし、Javaという言語が、今回のことで縮小することは、残念です。
無償で使う方法もありますが、ビジネスと考えた場合、OpenJDKは、オススメし辛くなります。
プログラム言語は、流行廃りがあります。
最新のテクノロジーに合わせて、次々と新しい言語が登場してきます。
すぐにJavaがなくなるというのではないでしょう。
しかし、新規案件では、Java以外の選択肢が増えると思います。
Javaを使ったシステムは、これからどうなるのか?
暫くの間、Javaの周りが騒がしくなるかもしれません。
-
-
Java SE 11は無料じゃないよ 先が見えてきたJavaにさようならを言おう
有料版 Java 11 Releasedが、リリースされました。 https://www.infoq.com/news/2018/09/java11-released これまで無料で使えていたものが有 ...
スポンサーリンク