InfoQ ホームページ プログラミング に関するすべてのコンテンツ
-
Java Persistenceを使ったアーキテクチュア:パターンと戦略
進化し続けるソフトウェア・アーキテクチャの世界で、シニア・エンジニア、アーキテクト、CTOは、Javaアプリケーションの強固で効率的な永続化レイヤの設計という永遠の課題に直面している。よく練られた永続化レイヤは、単なる技術的なディテールではなく、アプリケーションの機能性、スケーラビリティ、および長期的な持続可能性を支えるバックボーンである。この記事では、Javaの永続化レイヤに関連する複雑なデザイン・パターンの領域に深く潜り込み、オブジェクト指向とデータ指向のアプローチを明確に区別することに焦点を当てる。
-
より多く書き、より少なく話す:ドキュメンテーションとインナーソースで組織のレジリエンスを高める
思い浮かべてほしい。あなたは会社に入ったばかりで、社内の共有インフラプラットフォームについて学ぼうとしている。社内のドキュメントサイトを検索しても答えが見つからないので、Slackのような社内メッセージングツールに助けを求めようとしている。 Slackを通じて、別のエンジニアから質問の答えを見つけたが、その情報がどこにも書かれていないことに気づく。これは理想的な答えの見つけ方ではないが、よくあることだ。質問に対する回答は得られるが、次に同じ質問をする人はどうなるのだろうか?この問題は、ドキュメント化、ダイアグラム、アーキテクチャの決定、その他、システムがなぜそのように機能するのかを理解するための一般的な方法である。
-
RMIベースのレガシー・アプリケーションをWebSocketに移行する
Technical debt, especially in enterprise software, is a relevant problem that developers recurrently have to face. This article provides a use case related to removing technical debt in a large enterprise application based on an old fashioned Remote Method Invocation (RMI) protocol, and migrating it toward modern cloud-aware communication technologies.
-
Rustが再評価される:エコシステムの現状と落とし穴
In this article, we share findings and insights about the Rust community and ecosystem and elaborate on the peculiarities and pitfalls of starting new projects with Rust or migrating to Rust from other languages.
-
InfoQ Javaトレンドレポート - 2023年11月
本レポートは、InfoQ Java編集部が現在Javaの領域でどのような技術が採用され、どのようなトレンドが生まれているかをまとめたものである。言語であるJavaだけでなく、KotlinやScalaなどの関連言語、Java仮想マシン(JVM)、Javaベースのフレームワークやユーティリティに焦点を当てている。Javaの新バージョンの採用といったコアJavaのトレンドや、Spring Framework、Jakarta EE、Quarkus、Micronaut、Helidon、MicroProfile、MicroStreamといったフレームワークの進化についても解説する。
-
APIデザインレビューは死んだ。APIデザインレビュー万歳!
To design APIs at scale, it takes deliberate effort to create consistency and make several discrete APIs feel like a platform. This requires an efficient and useful API design review process.
-
Javaの新機能総合ガイド: スイッチのパターンマッチング
switch文は制御フロー文の1つで、もともとは、ある式がどのように評価されるかに基づいて複数の実行経路が考えられるような特定の使用例に対して、if-else if-else制御フロー文に代わる短い形式の制御フロー文として設計された。
-
Low Code/No Codeを採用する:確認するべき6つの適性
LCNC(ローコード/ノーコード)プラットフォームは、プログラマーだけでなくプログラマーでなくても、最小限のコーディングとワンクリックのデプロイメントで、アプリケーションソフトウェアを開発できるよう設計されている。ドラッグ&ドロップ方式のインターフェースなどを利用することで、開発・デプロイメントプロセスを簡素化し、効率的なアプリケーション開発とデプロイメントを実現する。
-
オープンソーステスト: バグ報奨金プログラムを恐れるのではなく、受け入れるべき理由
The growing importance of the Web3 ecosystem based on blockchains shows how important community test programs are. Some within the testing community see this trend as a threat. However, it is actually an opportunity. Bug bounties and open-source test contributions are a great tool for test teams, and there is every reason for testers to embrace this new trend rather than to fear it.
-
メタバースにおけるテストが向かう未来
In this article, Tariq King describes the metaverse concept, discusses its key engineering challenges and quality concerns, and then walks through recent technological advances in AI and software testing that are helping to mitigate these challenges. To wrap up, he shares some of his thoughts on the role of software testers as we move towards a future of testing in the metaverse.
-
デバッグ・プロダクション:eBPFカオス
This article shares insights into learning eBPF as a new cloud-native technology which aims to improve Observability and Security workflows. You’ll learn how chaos engineering can help, and get an insight into eBPF based observability and security use cases. Breaking them in a professional way also inspires new ideas for chaos engineering itself.
-
KafkaFlowでKafkaイベント駆動型アプリケーションを構築する
KafkaFlow, a .NET open-source project, simplifies Kafka-based event-driven app development with features like middleware for message processing, enhancing maintainability, customization potential, and allowing developers to prioritize business logic.