ソフトウェアアーキテクトとして、3年がかりの大型プロジェクトに張り付いていたため、2015年以来の登場です。, 前回の記事は「堅い」「真面目過ぎる」とか皆様の評価が散々だったので、今回の連載はもう少し砕けた感じでやらせて貰おうかと思っています。, さて、弊社は Oracle Database と SQL Server を筆頭とする「データベース」で 目立っている会社なのですが、基本的には企業向けの IT サービス全般を扱う、 いわゆる SI ベンダーです。, 私は主に企業向け(エンタープライズ系)の SI 案件においてソフトウェア /アプリケーションまわりを担当する機会が多いので、何回かに分けてその辺りの お話をさせていただこうかと思います。, 第一回目は、ちょうど旬(?)な話題「Oracle の JDK 提供ポリシーの変更」です。, 2018年、Oracle 社が頒布およびパッチを提供している JDK(Java SE)の無償提供を取りやめる事が発表されました。, この話題は一部では「Java 有償化」と呼ばれ、若干の混乱を引き起こしているようです。, お客様からだけでなく、社内からの問い合わせも非常に多いトピックなので、ちょっと解説しておきたいと思います。, これが最も多い誤解なのですが「Java 言語」が有償化されたわけではありません。Java はかなり以前から JDK とともにオープンソース(OSS)化されており、OSS 版であれば昔も今も無償で使用出来ます。いわゆる「OpenJDK」というものですね。, 有償契約が必要になったのは Oracle 社が提供していた「Oracle JDK」であり、サーバーライセンスと(開発者向けの)ユーザーライセンスが必要になりました。このサポート契約を結んでおかないと、セキュリティパッチなどの提供を受けられません。(なお、Oracle Cloud 上では実質無償で利用可能になったようです), 企業ユーザー様の場合「今使ってる Java」というのはほとんどが Java 8(以前)だと思います。このバージョンは今回の件があってもなくても既にサポート期間が終了していますので、理屈の上では影響を受けません。, また、サーバとして Red Hat Enterprise Linux(RHEL)或いは IBM サーバを使用している場合は、恐らく最初からそれぞれのベンダー独自サポート(もちろん有償です)が付いている筈ですので、やはり影響を受けません。, 前述ですが OpenJDK はオープンソースであり、無償です。なので、OpenJDK を使用すれば無償で Java が利用出来ます。, また、現在の Oracle JDK は OpenJDK とコードベースが同じ、つまり「基本的には同じもの」ですので、安心して使用する事が出来ます。, それは(セキュリティ等の)パッチ提供の保証期間が短い事です。オープンソースなのでバージョン更新が非常に早く、1年でバージョンが2つ上がってしまい、都度前バージョンの「サポート」が打ち切られ(※)ます。, 稼働期間の長い企業内システムでは、パッチ提供の長期サポート(Long-term support/LTS)が欲しいのではないでしょうか。そのための選択肢が「OpenJDK ディストリビューション」です。, OpenJDK には多くの「ディストリビューション(配布形態)」があります。(この辺りは CentOS や Ubuntu といった「Linux ディストリビューション」と似ています), 対象バージョンの制限はありますが、配布ベンダーが独自の長期サポート(LTS)を提供しています。, ・ AdoptOpenJDK  : Eclipse 財団と IBM がメンテナンスするディストリビューション。IBM が持っていた独自の仮想マシン実装も OSS 化され合わせて提供されています。, ・ Amazon Corretto  :Amazon がメンテナンスするディストリビューション。 AWS 上で使用する場合は最も最適化されているとの噂です。, ・ Red Hat OpenJDK  :前述ですが、Red Hat 社は以前から独自のディストリビューションとサポートを提供しています。現在 RHEL サーバを使用している場合は特に悩む事は無いでしょう。, ・ Zulu Enterprise  :Microsoft Azure 環境向けに Azul Systems が提供しているディストリビューション。Azure 上であれば無償利用出来ます。, これ以外にも様々なディストリビューションが存在し、独自の長期サポート(LTS)を提供しています。使用しているサーバ環境やクラウド環境に応じて、最適なディストリビューションを選択するのが良いでしょう。, 「Java は他のオープンソース系言語と同じように、使い始める前に色々と確認・検討 しなければならなくなった」, という事です。 今後は Java の実行環境(サーバ/クラウド)を確認し、提供されている OpenJDK ディストリビューションと長期サポート(LTS)期間を確認しつつバージョンを 選択しなければなりません。また、実行環境側に提供されている OpenJDK ディストリビューションとは別に、 開発用 PC 向けの OpenJDK ディストリビューションも選択する必要があります。, Java で開発を行うために知らなければならない事が増えてしまったので、選択の 際には専門家の助言を受けた方が良いでしょう。 (最新情報を自力で追うのも結構大変なので・・・), です。 ご存知の方も多いと思いますが、いわゆる「Java 9」「Java 10」というバージョンは、 前述の OpenJDK のバージョンと一致した、そもそも長期サポート(LTS)が無い バージョンです。 Java 9 がリリースされたのが 2017年9月、10 は 2018年03月です。そして Oracle の JDK 提供ポリシーの変更について詳細がわかったのは 2018年05月、 主要な OpenJDK ディストリビューションの動向がわかったのは 2018年09月です。, この約一年の間、現行の Java 8 アプリケーションをどのように移行すれば良いのか、 新規に Java 開発を行う際にどれを選択すれば良いのかハッキリしない状況が続いて しまい、結果的に多くの現場で「意図せぬ塩漬け Java アプリケーション」が生まれて しまったように見受けられます。 (しかもこの影響で多くのミドルウェアや OSS フレームワークの更新も滞って しまいました), 移行先は、普通に選択するならば OpenJDK 11 です。バージョンが2つ上がって いるので移行が簡単では無い可能性があり、移行の際は事前の調査・検証作業が 必要です。 結果としてこの問題は多くのユーザー企業に対し多くの「予期せぬ」「見えない」 コストを発生させてしまったと思います。, 社内外から何度も何度も何度も何度も聞かれた内容なので、この機会を利用して ざっと現状をまとめてみました。, この問題の本質は「Java の周辺状況がどうなるのか非常にわかりにくかった」 事だと思います。, 本件に関し弊社では、パートナーである Oracle 社から情報提供を受けると同時に、早期から社内のアーキテクトコミュニティが各 OpenJDK ディストリビューターに関する情報収集に当たり、社内での情報共有とお客様への情報提供を行ってまいりました。今のところ特に混乱なく、以前と同じように Java による開発を行っております。, 現時点でも、Java が企業向けアプリケーション開発に最適な言語の筆頭である事は間違いありません。安心してご相談いただければと思います。, ── もちろん弊社が扱う言語は Java だけではありませんので、どの言語でも 「Java と同様に」お気軽にご相談下さい。, 第七回は、そう言えばこの連載タイトル「ソフトウェアアーキテクト四方山話」なのに「ソフトウェアアーキテクト」という言葉の説明をしていないなあと思い立ち、一度説明しておく事にしました。, 「.NET」と言われて、恐らく多くの方が Windows OS 向けの「.NET Framework」を思い浮かべるでしょう。しかし 2019年現在、実は「.NET Framework」は「.NET」のごく一部でしかなく、また「.NET」の中心的存在でも無いのです。そして今年、Microsoft から .NET 世界を大きく揺るがす大ニュースが発表されました。それが今回の主役「.NET 5」です。, 第五回は技術系の言語の話に触れながら、リサーチエンジニアの仕事についてお話します。, 第二回は「チャットは仕事の一部です」と題し、弊社内の普段の雰囲気をお伝えしたいと思います。. Java有償化というキーワードがよく聞こえてきますが、 まず、 Javaはこれからも無償で利用可能です。 では一体何が変わったのでしょうか? これにはJavaのライセンスについて知る必要があります。 Java関連用語の説明 なによりJavaのプログラマーが多すぎます。, Javaのスペシャリストとしてやってきた人は、Javaだけでやっていけるほど IT業界は、甘い時代ではありません。, こんなこと書くと、Javaスペシャリストの人からお叱りを受けるかも知れませんが、いつまでも同じ環境にしがみついていると危険です。, ここで次の一手を考えないとエンジニアとして生き延びることはできません。 OracleのJavaという共通プラットフォームで安心して開発してきたものが、有料になりました。, 「じゃ、おカネを払いたくないのでオープン系のJavaに移行すればいい」

※ MSIはインストーラーであるため、実行でインストールができます。ZIPの場合は手動で展開して設置する必要があります。同じインストーラーでも、Amazon CorrettoはPATHを設定しませんが、ZuluはPATHを設定します。ZIPの場合はPATH等は手動で設定する必要があります。 と思っている担当者や経営者の皆さん。, 詳しくは、自社のシステム担当者か開発を担当しているIT企業と相談したほうが手っ取り早いです。, 無料で使えるシステムの開発環境は、たくさんあります。 ※ OpenJDkのサイトで配布されるバイナリ(Oracle社提供)はサポート期間は半年しかありません。検証等の目的以外での使用を推奨しません。 Java SE 10 2018年9月でサポート終了, Java SEで無償でサポートを受けられるのは、Java SE 8のみとなっています。 今回のことでOracle離れ=Java離れを検討している企業もあるのです。, 企業がどれも技術にあかるいわけではありません。 世界のJavaのトップクラスが執筆したJava is Still Freeというドキュメントを読んでください。 コメントのように Java有償化というが、本質はサポート・ライフサイクルの変更。 有償化と言うのは、恐らくOracle Java11以降が商用で無償利用できなくなる点を指す。 選択肢はそれ以外にもあるので、≒ 有償化というのは語弊があるが、 Javaは、これまでの資産が多いので簡単にはなくならないと思うけど、柔軟な感覚を養うべきです。, そして、オラクル社が、手にしているもう一つの大きな「オープンソース」 これまでも紆余曲折ありましたが、現在の最新情報では2019年1月中にOracle Java SEの有償化が実施されます。今回はOracle Java SEの有償化について簡潔にとりまとめ、そして今後の企業の取るべき方策についても紹介していきます。 さてオラクル Java の有償化とはどういうことでしょうか。 今までは、それも無料で使えたのですが、今度からおカネが必要になります。, では、バージョンの説明をします。 お時間があればこちらも読んで見てください。. AIだけではなく、多方面に使われることは必須、ギャラの面でも急上昇中。, 今は、Javaの開発が多くても いつ、なくなってしまうかも知れません。 6 Java有償化の影響. みなさんJava使ってますか?ついにOracleがやってくれました。もうすぐJava8の無償サポートが終了します!!Java案件死亡じゃ、、ということでJava有償化の価格とか影響とかまとめです。 スポンサーリンク 目次 1.サポート期間について 2.価格について 3.な Webの開発で使いうことが多いのでJava SEと合わせ技的に使います。, 正式名は、 ということです。 なんか変ですね、Java SE 8という2014年3月18日(米国時間)に発表されたものが、一番長いサポートって ※データベースのサポート料金の値上げを考えたら、わかりますよ。, これらのことを考えると企業がシステムを構築するときにどうするか?