並び順

ブックマーク数

期間指定

  • から
  • まで

41 - 80 件 / 127件

新着順 人気順

Javaの検索結果41 - 80 件 / 127件

  • 【ネタ】コメントだけしか書いていないのに「Hello, world!」と表示されるJavaプログラム - Qiita

    これはJavaでポインタで使えるというネタから着想を得たプログラミングネタです。 厳密には 「コメントだけ書いてあるようにしか見えない」 です。 コメントだけしか書いていないのに「Hello, world!」と表示されるJavaプログラム % java --version openjdk 16.0.2 2021-07-20 OpenJDK Runtime Environment Microsoft-25298 (build 16.0.2+7) OpenJDK 64-Bit Server VM Microsoft-25298 (build 16.0.2+7, mixed mode) import java.util.*; public class Main { public static void main(String[] args) throws Exception { //\u000a

      【ネタ】コメントだけしか書いていないのに「Hello, world!」と表示されるJavaプログラム - Qiita
    • Javaでクリーンアーキテクチャする方法 Part.1:ヘキサゴナルアーキテクチャ

      開発者にはしばしば必要なものがないという状況が訪れます。デベロッパーエバンジェリストの成瀬氏が、実際に10名弱のチームで新規プロダクトを作る際にクリーンアーキテクチャの構成を実践してみた話をしました。 Part.1はヘキサゴナルアーキテクチャについて。動画はこちら。 新規開発では理想どおりにならないことはよくある 成瀬允宣氏:さぁ、じゃあやっていきましょうか。(コメントで)「Javaより時代はKotlin」。そう、Kotlinね、そうですね。今回はアーキテクチャの話なので、たぶんKotlinとかでも使えると思います。 (コメントで「設計の講座助かります!」)設計の講座はなかなかないですからね。あと、今日最後のほうで「次何やろうか?」って話もしようかなと思っているので、もしよければ、そのときに僕の相談に乗ってください。 よし、じゃあいきましょう。「先行開発!Javaでクリーンアーキテクチャ」

        Javaでクリーンアーキテクチャする方法 Part.1:ヘキサゴナルアーキテクチャ
      • PostgreSQLのPub/Sub機能とJavaのクライアント実装 | フューチャー技術ブログ

        本記事は「珠玉のアドベントカレンダー記事をリバイバル公開します」企画のために、以前Qiitaに投稿した記事を改訂したものです。 はじめにPub/Sub型のメッセージングアーキテクチャを採用するにあたっては、kafkaなどのブローカーミドルウェアや、Amazon SNS、Google Cloud Pub/Subなどのマネージドサービスを利用するケースが多いかと思います。ところでPostgreSQLでも実はPub/Subができます。 すでに業務でPostgreSQLを使っていれば、新たにPub/Subブローカーを構築しなくても、疎結合なシステム間通信を簡易的に実現できます。 本記事ではこの機能の紹介と、Pub/SubクライアントをJavaで実装する場合の選択肢、考慮点を示しています。 ※実行環境はPostgreSQL 16.2とJava 21です ※データベースの文字コードはUTF-8としてい

          PostgreSQLのPub/Sub機能とJavaのクライアント実装 | フューチャー技術ブログ
        • Java 14新機能まとめ - Qiita

          Java 14が2020/3/17にリリースされました。 Java SE 14 Platform JSR 389 ダウンロード OpenJDKサイトからダウンロードできます。 https://jdk.java.net/14/ MacやLinuxでのインストールにはSDKMAN!をお勧めします Oracle OpenJDK以外に無償で商用利用できるディストリビューションとしては、次のようなものがあります。 AdoptOpenJDK Azul Zulu Community Liberica JDK LTSではないのでAmazon Correttoではリリースされないようです。 アップデートは4月に14.0.1が、7月に14.0.2がリリースされることになります。 Oracle JDKは開発用途には利用できますが、商用利用にはJava SE Subscriptionを購入する必要があります。 J

            Java 14新機能まとめ - Qiita
          • Java 21新機能まとめ - Qiita

            Java 21が2023/9/19にリリースされました。 https://mail.openjdk.org/pipermail/jdk-dev/2023-September/008267.html The Arrival of Java 21! LTSであり、パターンマッチングや仮想スレッドが正式化され、プレビューとして入ったString Templatesや無名クラス&インスタンスメインメソッドも面白い機能なので、大切なリリースになっていると思います。 詳細はこちら JDK 21 Release Notes Java SE 21 Platform JSR 396 OpenJDK JDK 21 GA Release APIドキュメントはこちら Overview (Java SE 21 & JDK 21) 追加されたAPIまとめはこちら https://docs.oracle.com/en/

              Java 21新機能まとめ - Qiita
            • WebAssemblyでOpenJDKのJavaランタイムを実装、JarファイルをそのままWebブラウザで実行できる「CheerpJ 3.0」正式リリース

              WebAssemblyでOpenJDKのJavaランタイムを実装、JarファイルをそのままWebブラウザで実行できる「CheerpJ 3.0」正式リリース Webブラウザ上で実行可能なWebAssembly製JavaVM 前バージョンのCheerpJは、Javaのバイトコードを事前コンパイルによりJavaScriptコードに変換することで、Webブラウザ上でJavaアプリケーションを実行可能にするコンパイラを中心とするツール群でした。 今回の新バージョン「CheerpJ 3.0」では、WebAssemblyによってOpenJDKのJavaランタイムを完全に実装したと説明されています。これにより、JITコンパイラなどを含むJavaVMの機能をWebブラウザ上で実行できるようになりました。 Javaアプリケーションのソースコードは不要で、ビルド済みのJarファイルをそのままWebブラウザで実行

                WebAssemblyでOpenJDKのJavaランタイムを実装、JarファイルをそのままWebブラウザで実行できる「CheerpJ 3.0」正式リリース
              • Java 19が正式リリース。より軽量な仮想スレッド、RISC-Vへの移植など新機能。1年後のJava 21が次のLTS版に

                Java 19が正式リリース。より軽量な仮想スレッド、RISC-Vへの移植など新機能。1年後のJava 21が次のLTS版に Javaの新バージョン「Java 19」正式版がリリースされました。 Java 19 is now available! #Java19 #JDK19 #openjdk Download now: https://t.co/dKovWtNGrs Release notes: https://t.co/EOyaGTLHrl API Javadoc: https://t.co/ViIj9H4JrI Features: https://t.co/XuEExSR7gs Inside Java on JDK 19: https://t.co/q5WGZwxMzb pic.twitter.com/XYYA06ll0m — Java (@java) September 20, 2

                  Java 19が正式リリース。より軽量な仮想スレッド、RISC-Vへの移植など新機能。1年後のJava 21が次のLTS版に
                • Java17雑感 - 日々常々

                  LTSとなるJava17が出ました。組織が今後もJavaを使っていけるかの試金石になるバージョンだと思います。 実際のとこLTSだから特別安定してるとかそんなことはないと思うし、6バージョン(3年)ごとにLTSにするってのもたぶんOracleさんが言ってみただけで、いろんなとこがそれに乗っかってるから、実質的に節目になってるに過ぎない。はず。 その程度のものなんだけど、私のようなのは乗っかりますし、たぶん多数派なんじゃないかなぁ……この派閥が運用で使うJavaのバージョンは8、11、17で、他のバージョンは評価に使うくらいでしょう。 11から17のジャンプになるんで、かなりたくさんの変更がありますが、業務アプリケーションの表層に関係するものはそこまで多くありません。パフォーマンスとかに影響のあるものは多々ありますが、基本的には早くなるはずで、問題になることは稀です。稀なことはよくあるんです

                    Java17雑感 - 日々常々
                  • JavaScriptはJavaのScript版(であろうと努力はした) - きしだのHatena

                    JavaとJavaScriptを混同する人に、名前がかぶってるだけの別モノという指摘がされることもあります。間違いではない。 技術的にも実務的にもコミュニティ的にもそのとおりではあります。 ただ、そう言い続けられた結果、ほんとに単にLiveScriptの名前にJavaをもってきてJavaScriptにしただけという誤解があるようです。 JavaScriptはJavaのScript版、少なくともそうであろうという努力はされていました。 JavaScriptリリース時のCNETの記事には「JavaScript is based on Java」という記述があります。 Netscape and Sun Unveil JavaScript - CNET 実際には、LiveScriptにJavaから文法やライブラリなどを持ち込んでリリースにこぎつけたというのがあります。 JavaScriptのDat

                      JavaScriptはJavaのScript版(であろうと努力はした) - きしだのHatena
                    • Javaを使うなら知っておきたい技術、フレームワーク、ライブラリ、ツールまとめ

                      Javaの開発と言っても、各種ミドルウェアやフレームワーク、ライブラリ、ツールなどが豊富にあり選択に悩むことは少なくないと思います。 そこで関連技術のインデックスになればと作成しました。 あくまで知っている範囲で記述しているので、コメントしてもらえれば随時追加します! すべてを書くと膨大な量になるため、現状採用が減ってきているものや、そもそもあまり採用されていないもの、後継があったり、類似のものと比較した場合に明らかに劣っているものは省いています。 ちなみにライブラリには高機能なものも多いので、分類は参考程度にご覧下さい。 サーバ系 Apache HTTP Server 世界中でもっとも多く使われているWebサーバ。 nginx フリーかつオープンソースのWebサーバで、処理性能・高い並行性・メモリ使用量の小ささに焦点を当てて開発されている。 Tomcat Java ServletやJSP

                        Javaを使うなら知っておきたい技術、フレームワーク、ライブラリ、ツールまとめ
                      • [速報]古いJavaや.NETのコードを最新のJavaにAIが自動変換する「Amazon Q Code Transformation」、AWSが発表。AWS re:Invent 2023

                        [速報]古いJavaや.NETのコードを最新のJavaにAIが自動変換する「Amazon Q Code Transformation」、AWSが発表。AWS re:Invent 2023 Amazon Web Services(AWS)は、ラスベガスで開催中のイベント「AWS re:Invent 2023」の基調講演で、生成AIを用いて多様なAIサービスを提供する「Amazon Q」を発表。Amazon Qの機能の一部として、古いJavaや.NETのコードを最新のJavaや.NET対応に自動変換する「Amazon Q Code Transformation」を合わせて発表しました。 参考:[速報]AWS、Copilot対抗となる「Amazon Q」発表。生成AIによるシステム開発支援や業務支援など、多様なAIサービスを提供。AWS re:Invent 2023 Amazon Q Code

                          [速報]古いJavaや.NETのコードを最新のJavaにAIが自動変換する「Amazon Q Code Transformation」、AWSが発表。AWS re:Invent 2023
                        • macOS Sonoma 14.4にアップデートするとJavaがクラッシュするとオラクルが注意喚起。Appleシリコン搭載Macで

                          macOS Sonoma 14.4にアップデートするとJavaがクラッシュするとオラクルが注意喚起。Appleシリコン搭載Macで オラクルは、Appleシリコン搭載のMacでmacOS Sonoma 14.4にアップデートを行うと、Java 8以降のすべてのバージョンでJavaが予期せず終了する現象が発生するとして、Macユーザーに注意喚起を行っています。 今のところ回避策はなく、macOSをバージョンアップしてしまうと元に戻す簡単な方法もないため、Appleシリコン搭載のマシンでJavaを利用している開発者やユーザーは、この問題が解決するまでは最新のmacOSへの移行を延期することをオラクルは勧めています。 Javaが正常に動作しないことで、Javaに依存しているツールもmacOS Sonoma 14.4では動作しなくなります。Kotlinの開発元などで知られるJetBrainsは、J

                            macOS Sonoma 14.4にアップデートするとJavaがクラッシュするとオラクルが注意喚起。Appleシリコン搭載Macで
                          • マイクロソフト、Javaの仕様を策定するJava Community Process(JCP)への参加を発表。Javaへのコミットをさらに強める

                            マイクロソフト、Javaの仕様を策定するJava Community Process(JCP)への参加を発表。Javaへのコミットをさらに強める マイクロソフトは、Javaの仕様策定や関連技術の開発、実装などを行う「Java Community Process」(JCP)への参加を発表しました。 Microsoft Deepens Its Investments in #Javahttps://t.co/9nHnyCpEIP pic.twitter.com/8ijU3TYeAn — Java at Microsoft (@JavaAtMicrosoft) November 4, 2021 JCPにはオブザーバ、パートナーメンバー、アソシエイトメンバー、フルメンバーなどのメンバーの種類がありますが、今回マイクロソフトは Java Specification Participation Agr

                              マイクロソフト、Javaの仕様を策定するJava Community Process(JCP)への参加を発表。Javaへのコミットをさらに強める
                            • サーバレスに最適化したJava実行基盤「GraalOS」、オラクルが発表。Javaをネイティブバイナリにコンパイルし瞬時に起動

                              オラクルはJavaをサーバレス環境で実行するのに最適化した技術「GraalOS」を発表しました。 同時に、Oracle Cloudのサーバレス実行基盤である「Oracle Cloud Functions」でGraalOSの機能を提供することも発表されました。 Javaをコンパイルし、ネイティブバイナリを実行 GraalOSは名称にOSと付いているものの、LinuxやWindowsのようなOSではなく、Javaをデプロイする新たな技術とその基盤を指します。 具体的には、同社が提供しているJava実行環境である「GraalVM」のコンパイラを用いてJavaをコンパイルしてネイティブバイナリを生成し、それをサーバレス基盤にデプロイし実行することで、サーバレスアプリケーションの瞬時の起動と高速な実行などを実現するというものです。 参考:Javaのネイティブバイナリ生成可能なGraalVMの全機能が

                                サーバレスに最適化したJava実行基盤「GraalOS」、オラクルが発表。Javaをネイティブバイナリにコンパイルし瞬時に起動
                              • 「Apache Log4j」の脆弱性が話題だけど、そもそもApacheとかJavaの語源って知ってる?

                                「Apache Log4j」の脆弱性が話題だけど、そもそもApacheとかJavaの語源って知ってる?:ヤマーとマツの、ねえこれ知ってる?(1/3 ページ) 経歴だけは長いベテラン記者・編集者の松尾(マツ)と、幾つものテック系編集部を渡り歩いてきた山川(ヤマー)が、ネット用語、テクノロジー用語で知らないことをお互い聞きあったり調べたりしながら成長していくコーナー。交代で執筆します。 ヤマー 昨日のヤマーとマツ+キーチ副編集長によるLog4j解説回、けっこう反響ありましたね。 「Log4j」のトラブルってどうヤバいの? 非エンジニアにも分かるように副編集長に解説させた 副編をこき使ってしまいましたが、われわれも勉強になりました。 「Apache」の由来って何? マツ 私も調べているうちに、そういえば、世間の方はLog4jなどを手掛けている「Apache」って何のことだか知らないんじゃないかと

                                  「Apache Log4j」の脆弱性が話題だけど、そもそもApacheとかJavaの語源って知ってる?
                                • Java Champion・谷本心が3段階の技術レベルに合わせて読んでほしいJava本6選

                                  谷本 心 EverforthとAcroquestの2社で正社員として働くエンジニア。仕事のかたわらでコミュニティ活動も行っており、日本Javaユーザーグループの代表を務めるほか、アメリカで開催されたJavaOneやSpringOneなど国内外のイベントで登壇。その実績から日本で3人目の「Java Champion」に任命された。著書に『Java本格入門』(技術評論社)。趣味は対戦格闘ゲームと、BABYMETALを追いかけて世界中を旅すること。 X: @cero_t Blog: https://cero-t.hatenadiary.jp/ 1. 『Java本格入門~モダンスタイルによる基礎からオブジェクト指向・実用ライブラリまで』(谷本心、阪本雄一郎、岡田拓也、秋葉誠、村田賢一郎 著) 2. 『プロになるJava―仕事で必要なプログラミングの知識がゼロから身につく最高の指南書』(きしだなおき

                                    Java Champion・谷本心が3段階の技術レベルに合わせて読んでほしいJava本6選
                                  • 技術に対するモチベーションが下がったらどうする?Javaスペシャリストを20年以上支えてきた思考法とは - Findy Engineer Lab

                                    世の中にはさまざまなタイプのエンジニアがいます。流行に合わせて次々と新しいプログラミング言語やフレームワークを習得する人もいれば、特定の技術に長く携わり専門性を高める人もいるでしょう。 後者のタイプの代表格と言える一人が、Javaのスペシャリストとして知られるLINE Fukuoka株式会社のきしだなおき(@kis)さん。 彼は20年以上にわたり、この言語と向き合いスキルを突き詰めてきました。 最近では、書籍『プロになるJava*』を執筆するなど、Javaの認知拡大・普及のための活動も行っています。 きしださんは、Javaへの興味が長く続いた理由として「技術コミュニティの存在が大きく影響している」と語ります。 今回はきしださんに、技術コミュニティに関連したエピソードとともに、キャリアを振り返っていただきました。 *…技術評論社より2022.3.19出版。きしだなおきさん、山本裕介さん、杉山

                                      技術に対するモチベーションが下がったらどうする?Javaスペシャリストを20年以上支えてきた思考法とは - Findy Engineer Lab
                                    • ソートできるUUID v7をJavaで使うときの話

                                      JJUG CCC 2024 Spring の発表資料です

                                        ソートできるUUID v7をJavaで使うときの話
                                      • Javaのスペシャリストが教える、Java9からJava14で細かく変更された機能

                                        LINEが定期的に開催する技術者向けミートアップ「LINE Developer Meetup」。65回目の は「Java」というテーマで、JavaのスペシャリストであるLINE Fukuoka株式会社のきしだなおき氏が、Java 9から14での細かい機能変更について紹介しました。関連資料はこちら。 Java9からJava14までの4つの細かい仕様変更 きしだなおき氏(以下、きしだ):よろしくお願いします。僕のセッションでは「Java9からJava14までをおさらいをする」という話をします。 自己紹介ですが、きしだと言います。LINE Fukuokaで働いていて、最近7年ぐらい放置していた洗濯機をやっと買い替えて、「文明って便利だな」と思っているところです。 今日の話ですが、Java9からJava14まで、けっこういろいろな変更が積み重なっていて、大きい言語仕様の変更などはけっこう話題になる

                                          Javaのスペシャリストが教える、Java9からJava14で細かく変更された機能
                                        • アルゴリズムの基本をJava、C#、Pythonで学ぼう - データを集計し、言語ごとの違いを知る - エンジニアHub|Webエンジニアのキャリアを考える!

                                          今回は、以下のように指定しました。表示オプションはデフォルトのままです。 地点を選ぶ:東京 項目を選ぶ(データの種類):時別値 項目を選ぶ(項目):気温 期間を選ぶ:2019/1/1~2019/12/6 データの項目は「日時」「気温」「品質情報」「均質番号」の4種類。品質情報、均質番号は、観測値が正常かどうかに関する情報です。各項目の詳細については、同サイトの「ダウンロードファイル(CSVファイル)の形式」ページを参照してください。 ファイルの先頭5行には、次の画像のような項目が入っています。このまま使うとやや面倒なので、あらかじめ先頭5行分は削除し、全てデータ行のみのCSVファイルに加工しておきます。 CSVファイルの仕様にはバリエーションがあり、その全てに対応するとコードが複雑になりますので、今回は気象庁のCSVデータに基づき、次の仕様を前提とします。 文字種は、ANK(1バイト文字)

                                            アルゴリズムの基本をJava、C#、Pythonで学ぼう - データを集計し、言語ごとの違いを知る - エンジニアHub|Webエンジニアのキャリアを考える!
                                          • Java 21の概要 / outline of Java 21

                                            2023/10/20に行われたJava 21リリースイベント@福岡での登壇資料です。 https://javaq.connpass.com/event/298600/

                                              Java 21の概要 / outline of Java 21
                                            • 「Java 20」正式リリース。スレッド間で共有できるScoped Values、複数スレッド処理をまとめるStructured Concurrencyなど新機能

                                              「Java 20」正式リリース。スレッド間で共有できるScoped Values、複数スレッド処理をまとめるStructured Concurrencyなど新機能 オラクルはJavaの最新バージョン「Java 20」正式版のリリースを発表しました。 Java 20 is now available! #Java20 #JDK20 #OpenJDK Download Now: https://t.co/6hZhod56WB Release notes: https://t.co/3eTwYKn1Cw API Javadoc: https://t.co/QUNgT4ol6Y Features: https://t.co/enLcqDmBQX Inside Java on JDK20: https://t.co/WIzDOeTgZl pic.twitter.com/7ahbOPF4LQ — Ja

                                                「Java 20」正式リリース。スレッド間で共有できるScoped Values、複数スレッド処理をまとめるStructured Concurrencyなど新機能
                                              • GoでもJavaでもPythonでもPHPでもRubyでも作るものは大体一緒なのに

                                                どの言語の方が偉いとかダサいとかあって面倒だよね

                                                  GoでもJavaでもPythonでもPHPでもRubyでも作るものは大体一緒なのに
                                                • それでもRuby、Python、JavaScript(あるいはJava)を使う方々へ.md · GitHub

                                                  それでもRuby、Python、JavaScript(あるいはJava)を使う方々へ.md 前置き この記事は静的型付け言語が理解されないことに業を煮やし……いや、ブチギレてしたためたものです。そのため多少過激な表現を伴います 性質上どうしても特定の人々に攻撃的な内容になります リーナスの下品な発言の引用は非現実的です。わたしが5人くらいいれば現実的なのですが…… Pythonの機械学習分野は例外です。ですがここもいずれ静的型付け言語に取って代わられるべきであると考えています(そもそもFFIが得意と言うだけでPython使われてるだけだし) 「型」の概念が石器時代で止まっている方へ まずはこちらをお読みください。 私と型システムとポエム - The curse of λ https://myuon.github.io/posts/type-system-poem/ 特に「よくある誤解」のこ

                                                    それでもRuby、Python、JavaScript(あるいはJava)を使う方々へ.md · GitHub
                                                  • Java 18正式リリース。デフォルトのCharsetが「UTF-8」に、シンプルWebサーバ搭載など新機能

                                                    Java 18正式リリース。デフォルトのCharsetが「UTF-8」に、シンプルWebサーバ搭載など新機能 Javaの新バージョン「Java 18」が正式にリリースされました。 Java 18 is now available! #Java18 #JDK18 #openjdk Download now: https://t.co/hTJU1ZzAWQ Release notes: https://t.co/Xdkj5TObNP API Javadoc: https://t.co/izFBPlYkd9 Features: https://t.co/3z0l5sXyDX pic.twitter.com/Ct1BvYmDYs — Java (@java) March 22, 2022 Javaは6カ月ごとに「フィーチャーリリース」と呼ばれるバージョンアップが行われ、そのなかの1つのバージョンが

                                                      Java 18正式リリース。デフォルトのCharsetが「UTF-8」に、シンプルWebサーバ搭載など新機能
                                                    • AWS、「Java 8」を2026年まで、「Java 11」は2027年まで、現行より3年サポート期間延長を発表。独自JavaディストリビューションのCorretto 8とCorretto 11で

                                                      AWS、「Java 8」を2026年まで、「Java 11」は2027年まで、現行より3年サポート期間延長を発表。独自JavaディストリビューションのCorretto 8とCorretto 11で Amazon Web Services(AWS)は、同社が無償で提供しているJavaディストリビューション「Amazon Corretto」の長期サポート期間を延長すると発表しました。 Java 8に相当する「Amazon Corretto 8」は2023年6月までだったのが2026年5月までに延長、Java 11に相当する「Amazon Corretto 11」は2024年8月までだったのが2027年9月までにサポート期間が延長されます。 ユーザーはこの日まで無償でAWSからセキュリティパッチなどを受け取ることができます。 New #AWSLaunches! Announcing 3 new

                                                        AWS、「Java 8」を2026年まで、「Java 11」は2027年まで、現行より3年サポート期間延長を発表。独自JavaディストリビューションのCorretto 8とCorretto 11で
                                                      • JenkinsがJava 8の対応を終了し、Java 11が必須に。Java 17の対応も開始

                                                        Jenkins開発チームは、6月28日リリースのJenkins 2.357および9月にリリース予定のJenkins LTS版からはJenkinsの実行環境としてJava 11が必須になることを、ブログ「Jenkins requires Java 11」で明らかにしました。 これまでJenkinsはJava 8もしくはJava 11を実行環境としていましたが、Java 8の対応がなくなることになります。 Jenkins 2.357 released today as the first Jenkins version to require Java 11. @bcrow shares the history of Java support in Jenkins and the benefits of the update. https://t.co/FPTNBTG3jK pic.twitte

                                                          JenkinsがJava 8の対応を終了し、Java 11が必須に。Java 17の対応も開始
                                                        • 「Spring Native」ベータ版公開、GraalVMによりSpring FramworkのJava/Kotlinアプリをネイティブイメージにコンパイル。JavaVMに依存せず瞬時に起動可能

                                                          「Spring Native」ベータ版公開、GraalVMによりSpring FramworkのJava/Kotlinアプリをネイティブイメージにコンパイル。JavaVMに依存せず瞬時に起動可能 Spring Frameworkの開発チームとGraalVMの開発チームは、GraalVMを用いてSpring Frameworkのアプリケーションをネイティブイメージにコンパイルする「Spring Native」がベータ版として公開されたことを発表しました。 Announcing Spring Native Beta! Read the blog post https://t.co/5klXV6kSVB and check out the video for more details. #spring #native #graalvm https://t.co/83pI3vNYEr — Spri

                                                            「Spring Native」ベータ版公開、GraalVMによりSpring FramworkのJava/Kotlinアプリをネイティブイメージにコンパイル。JavaVMに依存せず瞬時に起動可能
                                                          • オラクル、Java開発を効率化するVSCode用拡張機能「Oracle Java Platform Extension for Visual Studio Code」を公開

                                                            オラクル、Java開発を効率化するVSCode用拡張機能「Oracle Java Platform Extension for Visual Studio Code」を公開 New Oracle open source project released! Oracle Java Platform extension brings full featured @Java development (edit-compile-debug & test cycle) for Maven and Gradle projects to VS Code. Get started: https://t.co/knjeFPRY1Q Learn more: https://t.co/77SIeky3cE#OracleOSS pic.twitter.com/whXIKFsBHV — Oracle Open So

                                                              オラクル、Java開発を効率化するVSCode用拡張機能「Oracle Java Platform Extension for Visual Studio Code」を公開
                                                            • 「ソースないけどバグ直して」をランタイムで可能にするJavaバイトコードプログラミング - Qiita

                                                              はじめに この記事はシスコ同志によるAdvent Calendarの25日目として投稿しています。 幸いタイトルのような無茶振りには遭ったことはありませんが、シスコではJavaバイトコードを操作する技術を使った監視製品を開発しているので、その技術について本記事でサンプルを交えて紹介します。 この記事を読んで出来ること おわかりでしょうか?HelloWorldはAliceに対して挨拶するプログラムだったのに、-javaagent:agent.jarというオプションを付けて実行すると、Malloryに挨拶するプログラムに変わってしまいました。 このカラクリはJVMが読み込んだJavaバイトコードを実行時に書きかえ、変数の値をAliceからMalloryに変えています。HelloWorldのソースコードも、コンパイル後の.classファイルも変えていないにも関わらず、実行時に処理を変更できてしま

                                                                「ソースないけどバグ直して」をランタイムで可能にするJavaバイトコードプログラミング - Qiita
                                                              • クラウドネイティブ時代のコンテナ環境におけるJavaアプリケーションのメトリクス・ログ・トレースモニタリング

                                                                Java Developers Summit (2023-02-28)

                                                                  クラウドネイティブ時代のコンテナ環境におけるJavaアプリケーションのメトリクス・ログ・トレースモニタリング
                                                                • Visual Studio CodeのJava環境が強化。Call Hierarchyで呼び出し元を次々にドリルダウン、変数が特定の値になると自動停止するデバッガ新機能など

                                                                  Visual Studio CodeのJava環境が強化。Call Hierarchyで呼び出し元を次々にドリルダウン、変数が特定の値になると自動停止するデバッガ新機能など マイクロソフトが開発している無償のコードエディタ「Visual Studio Code」におけるJava開発環境の機能強化が発表されました。 Happy New Year and welcome back to our first update of #Java on VS @code in 2020! “Call Hierarchy” and compact folder view will help Java developers a lot. Debugger and Test Runner updates along with performance improvements are also worth ch

                                                                    Visual Studio CodeのJava環境が強化。Call Hierarchyで呼び出し元を次々にドリルダウン、変数が特定の値になると自動停止するデバッガ新機能など
                                                                  • 「Java 21」正式リリース。仮想スレッドが正式版に、入門者向けに「void main」と簡潔な記述、世代的ZGCなど新機能

                                                                    「Java 21」正式リリース。仮想スレッドが正式版に、入門者向けに「void main」と簡潔な記述、世代的ZGCなど新機能 オラクルはJavaの最新バージョン「Java 21」正式版を今日リリースします。 Java 21は長期でセキュリティパッチやバグフィクスなどが提供されるLTS(Long Term Support:長期サポート)版です。企業向けのシステム開発などで安定したJavaのバージョンをある程度長期間使いたい場合には、このJava 21は有力な候補となるでしょう。 日本時間22時からJava 21のローンチイベントも開催予定です。「with a few surprise reveals」(いくつかサプライズ発表があるよ)というのが少し気になります。今年は昨年復活したJavaOneがないので、その代わりに何かあるのでしょうか。 We're just 1 day away fro

                                                                      「Java 21」正式リリース。仮想スレッドが正式版に、入門者向けに「void main」と簡潔な記述、世代的ZGCなど新機能
                                                                    • 「Java8からJava11」で何が起きたのか、どう環境構築すればいいのか - Qiita

                                                                      この記事の目的 「Javaの環境構築」で絶対にハマったり、錯綜する情報にいつも惑わされる人に向けた記事です。 2017年以降のJavaは、移り変わりが激しい世界になりました。このことを認識し、「軸となる考え方」や「重要な動向」を把握できるように、調べた情報をまとめました。 「5年ぶりに(Java|JVM言語)触るんだけど環境周りが全然わからん」とか、「CorrettoとかAdoptOpenJDKとか、みんな何を言っているんだ」という人(つまりちょっと前の筆者)が、「今後に渡って2度とハマらないための基礎知識を得られること」を目的にしています。以下の3本立てです: ざっくりとした歴史 2020年におけるローカル開発環境構築 情報源と参考URL APIや言語仕様の変更点には触れません(他の良い記事があります)。 I. ざっくりとした歴史 2017年9月、OracleはJavaのリリース・モデル

                                                                        「Java8からJava11」で何が起きたのか、どう環境構築すればいいのか - Qiita
                                                                      • Java の enum を使いこなせるあなたに sealed interface

                                                                        はじめに Java の enum は大変便利で非常多くのシーンで活用されています。例えば区分を表すようなオブジェクトを表現したい際にもよく使われていますね。 Java 14 で正式機能となった switch式にて網羅性検査が行えるようになり、それまで以前ではどうしても抽象メソッド等を活用する必要があった処理についても、switch式を利用する事で簡潔に表現することができるようになりました。 また、Java 17 で正式機能となった sealed classes/interfaces と Java 21 で正式機能になった Record Patterns によって、これまで必要だった区分値のような enum を必ずしも定義しなくて良い場合も出てきました。 この記事では、今まで enum を使っていたコードがこれらの機能によってどのように変わるのかを紹介し、盲目的に enum を定義するのでは

                                                                          Java の enum を使いこなせるあなたに sealed interface
                                                                        • Java における乱数生成器とのつき合い方 / #JJUG CCC 2019 fall に登壇してきました

                                                                          一般公募の枠で CfP 出してあえなくリジェクトされたテーマを、スポンサー枠で勝手に敗者復活させてお話してきました。 はじめに Java 標準のクラスライブラリには、いくつかの乱数生成器の実装 (クラス) が存在しています。長年 Java でアプリケーションを書いている方であれば状況に応じてそれらの実装を使い分けることも難しい話ではありませんが、Java を扱い初めて間もない方にとってはそう簡単な話ではありません。 たとえば java 乱数 のようなクエリでググるとその状況がうかがい知れるのですが、巷にはプログラミングスクール各社の SEO を目的としたコンテンツが溢れていて、それらはいずれも「java.util.Random とか Math.random() とかなんでそんなレガシーなクラス/メソッドしか紹介しないの? この記事を書いたライターというかエンジニアの人たちは J2SE 1.

                                                                            Java における乱数生成器とのつき合い方 / #JJUG CCC 2019 fall に登壇してきました
                                                                          • 元・Java専門記者がLog4j 2脆弱性に見た「複雑性と魔神のかけら」 Javaの歴史とバザールの矛盾

                                                                            元・Java専門記者がLog4j 2脆弱性に見た「複雑性と魔神のかけら」 Javaの歴史とバザールの矛盾(1/6 ページ) Javaのライブラリ「Apache Log4j 2」に深刻な脆弱性が発見されたことは記憶に新しい。1カ月以上経過した現在も、注意喚起や新たな情報提供が続いている。問題は完全に収束したとはいえない。 今回の記事の主題は脆弱性対策ではない。「Javaの歴史的経緯と、今回騒ぎになっている脆弱性の話を、うまく1本の記事にしてください」という編集部のオファーに応じて書いたものだ。記事の半分は「元・Java専門記者のナイショ話」である。現実の情報システムへの対処が必要な方は、まず下記ページから最新情報をチェックしていただきたい。 IPA Apache Log4j の脆弱性対策について(CVE-2021-44228) Apache Log4j 2公式ページ Log4j 2で今回問題

                                                                              元・Java専門記者がLog4j 2脆弱性に見た「複雑性と魔神のかけら」 Javaの歴史とバザールの矛盾
                                                                            • Javaのネイティブバイナリ生成可能なGraalVMの全機能が無料に、最適化コンパイラやG1ガベージコレクションを含む。本番環境でも利用可能

                                                                              Javaのネイティブバイナリ生成可能なGraalVMの全機能が無料に、最適化コンパイラやG1ガベージコレクションを含む。本番環境でも利用可能 オラクルは、同社がJavaディストリビューションとして提供しているGraalVMの新ライセンス「GraalVM Free Terms and Conditions」(GFTC)を発表し、あわせてこれまで有償版のGraalVMに含まれていた全ての機能を含む新ディストリビューション「Oracle GraalVM」の提供を開始しました。 GFTCでは、これまで有償版のGraalVMで提供してきた最適化コンパイラやG1ガベージコレクションなどを含むすべての機能が無料で利用可能となり、本番環境での利用も許諾されます。 Introducing a new distribution — Oracle @GraalVM! Use all the greatest G

                                                                                Javaのネイティブバイナリ生成可能なGraalVMの全機能が無料に、最適化コンパイラやG1ガベージコレクションを含む。本番環境でも利用可能
                                                                              • Concurrency in modern programming languages: Rust vs Go vs Java vs Node.js vs Deno vs .NET 6

                                                                                This is part of my "Concurrency in Modern Programming Languages" series Concurrency in modern programming languages: IntroductionConcurrency in modern programming languages: RustConcurrency in modern programming languages: GolangConcurrency in modern programming languages: JavaScript on NodeJSConcurrency in modern programming languages: TypeScript on DenoConcurrency in modern programming languages

                                                                                  Concurrency in modern programming languages: Rust vs Go vs Java vs Node.js vs Deno vs .NET 6
                                                                                • Java 注目の機能:Sealed クラス

                                                                                  クラスまたはインタフェースはsealedと宣言されている場合があります。これは特定のクラスやインタフェースの集合だけがそれを直接拡張できることを意味します。 sealed interface Shape permits Circle, Rectangle { ... } これは Shape と呼ばれる Sealed インタフェースを宣言します。permits リストは、Circle と Rectangle だけが Shape を実装できることを意味しています。(場合によっては、コンパイラが permits 句を推論できるかもしれません)。 Shape を拡張しようとする他のクラスやインタフェースは、コンパイルエラーを受けます(または、Shape をスーパータイプとして宣言しているラベル外のクラスファイルを生成しようとした場合は、実行時エラーとなります)。 私たちは、final クラスを介し

                                                                                    Java 注目の機能:Sealed クラス