あなたにとって重要なトピックや同僚の最新情報を入手しましょう最新の洞察とトレンドに関する最新情報を即座に受け取りましょう。 継続的な学習のために、無料のリソースに手軽にアクセスしましょうミニブック、トランスクリプト付き動画、およびトレーニング教材。 記事を保存して、いつでも読むことができます記事をブックマークして、準備ができたらいつでも読めます。
あなたにとって重要なトピックや同僚の最新情報を入手しましょう最新の洞察とトレンドに関する最新情報を即座に受け取りましょう。 継続的な学習のために、無料のリソースに手軽にアクセスしましょうミニブック、トランスクリプト付き動画、およびトレーニング教材。 記事を保存して、いつでも読むことができます記事をブックマークして、準備ができたらいつでも読めます。
あなたにとって重要なトピックや同僚の最新情報を入手しましょう最新の洞察とトレンドに関する最新情報を即座に受け取りましょう。 継続的な学習のために、無料のリソースに手軽にアクセスしましょうミニブック、トランスクリプト付き動画、およびトレーニング教材。 記事を保存して、いつでも読むことができます記事をブックマークして、準備ができたらいつでも読めます。
はじめに こんにちは!10 月から株式会社ログラスでエンジニアをやっています、Kyosuke です! ログラスでは、エクセルファイルをプログラムから操作する処理が一部存在しており、Apache POIというライブラリを使用しています。(以後POIと呼びます) しかし、POI には処理方式によってはメモリを多量に使用してしまうという問題があります。 今回はその対応として、まずエクセルファイルの読み込みをFastExcelというライブラリに置き換えた話を振り返っていきます。 TL;DR POIのXSSFWorkbookは、ファイルをメモリ内に読み込んで操作するため、大きなエクセルファイルを処理する際にファイルサイズ以上のメモリを必要とすることがある POI の公式ドキュメントより FastExcelは、POIより機能は劣る代わりに、読み書きともにパフォーマンスは大幅に上回る 書き込み Fast
[速報]古い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
Red Hat のソリューションアーキテクトの瀬戸です。 この記事はRed Hat Developerのブログ記事、What's new for developers in JDK 21 | Red Hat Developer を、許可をうけて翻訳したものです。 Java開発者にとってエキサイティングな情報として、今年 9 月 19 日に JDK 21 がリリースされました。 このリリースには、仮想スレッド(Virtual Thread)、レコードパターン(Record Patterns)、順序付コレクション(Sequenced Collections)など、Javaのエコシステムに利益をもたらす多くの新機能が含まれています。JDK 21 のプレビューには、文字列テンプレート(String Templates)、スコープ付値(Scoped Values)、構造化並列処理(Structure
「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
あなたにとって重要なトピックや同僚の最新情報を入手しましょう最新の洞察とトレンドに関する最新情報を即座に受け取りましょう。 継続的な学習のために、無料のリソースに手軽にアクセスしましょうミニブック、トランスクリプト付き動画、およびトレーニング教材。 記事を保存して、いつでも読むことができます記事をブックマークして、準備ができたらいつでも読めます。
原文(投稿日:2022/05/11)へのリンク JEP 425 "Virtual Threads (Preview)"が、JDK 19対象のProposed to TargetからTargetedに昇格した。Project Loomの傘下にあるこのJEPでは、仮想スレッドを導入する。これによって実現される軽量スレッドは、スループットの高いJavaプラットフォーム並列アプリケーションの記述、維持、監視に必要な労力を大幅に軽減するもので、現時点ではプレビュー機能である。 Javaは、メインストリームのプログラミング言語では初めて、並列プログラミング単位としてスレッドを言語のコア機能に取り入れた。従来のJavaスレッド(java.lang.Threadのインスタンス)は、オペレーティングシステム(OS)スレッド(いわゆるプラットフォームスレッド)の1対1のラッパである。一方の仮想スレッドは、OS
原文(投稿日:2022/03/22)へのリンク Oracleは、Javaプログラミング言語と仮想マシンのバージョン18をリリースした。この最終機能セットの9つのJEPは次のとおりである。 JEP 400: UTF-8(デフォルト) JEP 408: Simple Web Server JEP 413: Java APIドキュメントにコードスニペット JEP 416: メソッドハンドルを使ったCore Reflectionの再実装 JEP 417: Vector API(第3インキュベータ) JEP 418: インターネットアドレス解決SPI JEP 419: 外部関数・メモリAPI(第2インキュベータ) JEP 420: switchのパターンマッチング(第2プレビュー) JEP 421: 削除に向けたファイナライズの非推奨 Java 18の機能サイクルでは、以前のリリースよりも機能がわず
あなたにとって重要なトピックや同僚の最新情報を入手しましょう最新の洞察とトレンドに関する最新情報を即座に受け取りましょう。 継続的な学習のために、無料のリソースに手軽にアクセスしましょうミニブック、トランスクリプト付き動画、およびトレーニング教材。 記事を保存して、いつでも読むことができます記事をブックマークして、準備ができたらいつでも読めます。
あなたにとって重要なトピックや同僚の最新情報を入手しましょう最新の洞察とトレンドに関する最新情報を即座に受け取りましょう。 継続的な学習のために、無料のリソースに手軽にアクセスしましょうミニブック、トランスクリプト付き動画、およびトレーニング教材。 記事を保存して、いつでも読むことができます記事をブックマークして、準備ができたらいつでも読めます。
1 Introduction This document serves as the complete definition of Google's coding standards for source code in the Java™ Programming Language. A Java source file is described as being in Google Style if and only if it adheres to the rules herein. Like other programming style guides, the issues covered span not only aesthetic issues of formatting, but other types of conventions or coding standards
ラムダ式とStream APIで学ぶモダンJava ― 関数型を取り入れて変化するJava言語の現在 20年以上の歴史を持つJava言語ですが、近年は関数型を取り入れるなど大きく変化し、リリースサイクルも格段に短くなってますます進化しています。モダンなJavaプログラミングで必要となるラムダ式とStream APIについて、谷本心(cero_t)さんによる詳細な解説です。 1996年にJava 1.0が登場して、もう20年以上がたちました。この間、Javaにはさまざまな言語機能やAPIが追加され、変化し続けています。 これだけ長い歴史を持つプログラミング言語ですから、利用者が多かったり、フレームワークやライブラリが充実していたりする一方で、書籍やWebに掲載されている情報が少し古かったり、研修で学ぶJavaが最新の動向を踏まえていなかったりするなど、長い歴史を持つが故の問題もあります。 特
厳格なnullチェック - Kotlinはコンパイル時エラーとして、nullになり得るコードフローを扱います。そして、nullチェックを扱う追加のシンタックスを提供します。特に、連鎖したコールのNPEに対して、保護を提供します。 Javaとの相互運用性 - Kotlinは、この分野において、他のJVM言語よりもかなり優れています。Javaとはシームレスな互換性があります。フレームワークからJavaクラスをインポートして、Kotlinで利用できます。また、その反対も可能です。明らかに、Kotlinのコレクションは、Javaコレクションと互換性があります。 不変性 - Kotlinは、不変データ構造を促進します。一般的に使われるデータ構造 (Set/ List/ Map)は、可変であることを明確に述べていなければ、不変です。変数もまた、不変(val)と可変(var)を指定されます。これらの変更
Java 9、Java 10と6カ月ごとのリリースを終え、予定通り9月にJava 11がリリースされます。Java 10の連載でも紹介しましたが、Java 11ではサポート面の変更や既存モジュールの一部廃止などが行われます。また、Java 11はLTS版(長期サポート)であり、本格的に利用を始めようと思う方も多いのではないでしょうか。実は筆者もJava 11の状況を見てから現行で動いているシステムの移行対応をしようと思っています。特にJava 8以前の資産を維持しなければいけない開発者にとっては、影響がどのくらい生じるのか興味があるでしょう。また、新しいAPI面では、Java 9から長く待たされているHTTP関連のAPIが大きな変更点です。今回はJava 11での主な変更点の紹介と標準機能になったHTTP Client APIを中心に紹介します。 初めての6カ月定期アップデートで変わったJ
前々回と前回でJava 9での大きな変更であるモジュール機能と新たなツールであるJShellの紹介をしました。今回からはJDKのコアライブラリに関する変更点を見ていきます。まず、ライブラリ面で最も大きな違いは、リアクティブストリームと呼ばれる並行処理に関する機能が新しく追加されていることです。リアクティブストリームといえば、RxJavaが有名ですが、今回追加された機能はRxJavaと比較して非常にシンプルなものです。しかし、十分便利な機能のなのでぜひ、利用してみることをおすすめします。 リアクティブストリームとは リアクティブストリームについては、初回の「Java 9のリリースとこれまでのトレンドを振り返る」でも簡単に紹介しました。並列処理を効率的にするための方法のひとつで、パブリッシュ・サブスクライブ・モデル(以下、PubSubモデル)が使用されています。リアクティブストリームという言葉
ざっくり言うと リスト構造のデータに対してランダムアクセスはしちゃだめだぞ。お兄さんとの約束だ! 発端 数年前に他部署の支援で作ったJavaのシステムに、ちょっとデカめのデータを突っ込んだらありえないほど遅いので助けてくれ、と連絡が入った。 まぁクエリとかインデックスをちょっと見れば直るっしょ・・・と鼻をほじりながら支援に向かった。 処理内容 遅い部分の処理は以下のようなものであった。 処理対象のデータをListで受け取る。 それをforループで1件ずつ前処理する。 処理結果をオブジェクトに格納し、ORマッパーでDBにINSERTする。 これだけ? そう、これだけだ。並列処理なんて高級なことはもちろんやってない。 インフラ調査 処理中のサーバのようすを調査する。今回のインフラは典型的な3層3サーバ構成。 WEBサーバはなにもかもが余裕。 APサーバではCPUを1つ使い切っている。 14コア
Android Studioを使い、Kotlin言語の特徴を解説する本連載「Android Studioで始めるKotlin入門」。連載第1回では、Kotlinの大まかな構文を説明しました。今回からは、Kotlin言語の個々の機能について解説します。 なお本連載では、他言語(特にJava)からKotlinに移行するに当たって重要と思われる機能を中心に解説します。本連載で解説されなかった機能については適宜、下記の公式レファレンスを参照してください。 Reference - Kotlin Programming Language 2種類の変数定義~varとval~ 第1回でも少し解説しましたが、Kotlinには2種類の変数定義用のキーワードがあります。varを使うと、他のプログラミング言語と同様、一般的な「変更可能」な変数が定義できます。一方、valを使うと、「変更不可」の変数となります。 v
リリース、障害情報などのサービスのお知らせ
最新の人気エントリーの配信
処理を実行中です
j次のブックマーク
k前のブックマーク
lあとで読む
eコメント一覧を開く
oページを開く