ウィリアムのいたずらの開発?日記

ウィリアムのいたずらがコンピューター関係(本家廃止後はその他も)について思ったことを好き勝手に書いているブログです。

Java 14がリリースされて、Javaのバージョンアップの向き合い方を聴いてみた

2020-03-23 08:49:33 | JavaとWeb
この前の、オンライン版?JJUGナイトセミナー

Javaのバージョンアップとの現実的な向き合い方 - Java 14リリース記念
https://www.youtube.com/watch?v=QMUV4h7YbUg

が上記の通りYouTubeにあがっていたので、メモメモ




・自己紹介
・Java14 注目の新機能
 レコード
 JFR(JDKフライトレコーダー)イベントストリーム
 フォーリンメモリーアクセスエリアの話
 Javaパッケージ
 ・・・おいといて、いろんな人たちがコミット
 他にも文法的改善、面白そうな機能

・使いますか
 Java14→LTSではない
  知見をためる
  次17?

・追従は?6か月、3年、しない?
 本心は最新版→使いたいバージョン使えば
 アプリケーションサーバー、下まわり、フレームワークに縛られる
 テストしておく
 Dockerイメージに入っているものになる
 求人のため
 フレームワークのバージョンアップのほうがつらい(Spring)
 ラムダ、モジュール→Java6,7,8使っている人は、いつやるの?
 正論ではやったほうがいい

 6か月:耐えられる証明としてやる

・保守開発でバージョンアップすべき
 脆弱性に対応するのが保守開発
  →正論は置いといて
 ほそぼそとやっている場合(0.5人月)
  →Springはむり
 体制と予算

 サーバーサイドJavaではそんなに・・・
  →だからJavaがはいる

 請負に対する考え方
  →時代的に作って終わりでなくなってきている

・バージョンアップに追従するためにやっておくべきことは
 サイドカーサービス→ルーティング、ロードバランシングなどを担う
  インフラとフレームワークの境界線をうまく切りたい
  ビジネスロジックはサイドカーにHTTP通信する
  →バージョンアップしやすくなる
 Javaとインフラのバージョンアップを別のタイミングにできる
  →ライフサイクルの違うものを分離できる
 横断的関心事を減らしたい

 コンテナがやってくれる

 テスト大事、CI大事。ほかに?
  ろんぼっくはややこしくなるから・・・

 やろうという気、スタンス

 流れが読めない→ビジネスロジックとの分離

 フレームワーク:依存しちゃうと抜けられない

 関数型で書けば?

【質問】追従するとしたら手順は?
 自動テストから
 フレームワーク、ライブラリを上げてからランタイムを上げる
 戻せること→ビジネスロジックが更新してたら?
  →ブランチをきって、両方にロジックを入れる
 Dockerイメージ:戻せる→データ構成変わったら?
 DBを先にあげる?ケースバイケース

・ディストリビューションどれが一押し
 みんなのJava読んでください
 https://www.amazon.co.jp/dp/4297111993

 システムの事情で決まる(システムデフォルト)
  →標準を決める理由がない

 複数言語だとPython,RubyよりJavascriptかも

 組織標準いらない
  →どうしたらいいかわからない

 ディストリビューションのイメージ
  Linux:ちがう そんなかんじではない

 迷うのは決まらないケース:趣味とか

・Java8で稼働中のシステム、これからどうすべき?
 7,6なら:しおずけ?
 9以上にもっていけるか、ビジネス的に価値があるか?
 とりあえずクラウド
 むかしのような大きいサーバーがいる環境では今はない
  →今はコンテナ
 Java11世代のAP 変わりやすい
  jakarta EE はまだまだ
 モノリス、マイクロサービス:やりかた

 Java8の人、変わらないと思って採用した
  →9以降、話が変わった

 ネイティブイメージとそうでないのの共存

 デスクトップアプリ

 2026年までは選択肢を持たせている

 モノリスからマイクロサービスだけではなく、
 システムをリフレッシュしたい

(このへんいろいろはなしてたけど
 はっきりしないのでしょうりゃく)

 15,16で入りそうな機能 →17で?
 
 お金のバランス
 セキュリティー WAFとか手前に
 塩づけ→脆弱性のコスト:それならあげちゃったほうが
 戦略的に塩づけはない?

 OSのアップデートとおなじこと。

 エンジニアが調達できないから、塩漬けする

 コンテナ対応;バックポートされてるけど

 アップデートしたくない理由:
  新規案件8でやりたい人(APサーバーは置いといて)
  8を選んだら11にあげられる気がしない
 Spring Boot Java8で新規案件はないよね

 8に下げてくれと言われた
  →無償で使える8、足並みを合わせる
 ふっと8を入れてしまう
  →CENT OSでインストールしてて。。。
 Oracle JDKからOpenJDKになって、人は不安になる
  →誤解だけど、向き合わないと
  →Python,RubyのSIerが、そこを攻めてくる

 正しい情報で正しく判断するのは難しい
  2000年代 かれているほうがいい
  今      新しいもののほうが安全
   →攻撃のスピードが上がったから
  昔の判断になってしまう
  →Javaはあぶない、Pythonかな?

 Android最近どう?
  あっちから上げる気はない

 正しい:ポジショントーク
 営業さんも混乱する

・他言語に比べ、最近のJava
 ここがだめというのが、減ってきている
  →これから攻めに転じる?
 コード互換性:今書いたソースが10年後動くか

・まとめ:最後にひとこと
 周りの環境大切
 塩漬け:脆弱性きけん
 ダウンロードして使って、コミュニティで使ってる感
 14も通過点
 オンラインイベント、どうだった?→ポジティブな意見

P.Sちなみに、次の動画は
いかにJavaのバージョンアップと付き合うべきか 谷本 心
https://www.youtube.com/watch?v=DTzoPkdicJY
この記事についてブログを書く
« 地球温暖化でCO2を悪者に言っ... | トップ | Kaggleもコロナだって »
最新の画像もっと見る

JavaとWeb」カテゴリの最新記事