InfoQ Homepage Languages Content on InfoQ
-
InfoQ Java Trends Report - November 2023
This report provides a summary of how the InfoQ Java editorial team and several Java Champions currently see the adoption of technology and emerging trends within the Java and JVM space in 2023. We focus on Java the language, as well as related languages like Kotlin and Scala, the Java Virtual Machine (JVM), and Java-based frameworks and utilities.
-
Efficiently Arranging Test Data: Streamlining Setup with Instancio
The need to ensure code quality is ubiquitous, regardless of the development paradigm. Continuous Deployment and Continuous Delivery indicate that reliable test suites are directly connected to the speed of development and quicker customer feedback loop. Instancio automates the data setup step - the A in Arrange-Act-Assert. So, it allows you to put more emphasis on the business feature tested.
-
How to Sustain Quality and Velocity in a JavaScript or TypeScript Project?
The JavaScript language and its ever-changing ecosystem of packages and practices can make codebases quickly become hard to maintain. The resulting loss of development velocity and/or code quality can be prevented without rewriting everything from scratch, nor pausing the development of new features. In this article, we have analyzed a few best practices to help avoid that.
-
Simplifying Persistence Integration with Jakarta EE Data
Jakarta Data streamlines Java enterprise data integration. Supporting various databases, it boosts productivity, is open-source, and community-driven. GitHub offers hands-on experience for modernizing enterprise architectures.
-
Dealing with Java CVEs: Discovery, Detection, Analysis, and Resolution
This article delves into the importance of integrating Software Composition Analysis (SCA) in CI/CD pipelines for security. It highlights the need for human oversight to accurately assess vulnerability impact and cautions against "alert fatigue." The article also recommends specialized tools for effective vulnerability management.
-
Streamlining Code with Unnamed Patterns/Variables: a Comparative Study of Java, Kotlin, and Scala
Explore the use of the Unnamed Patterns/Variables in programming languages like Java, Kotlin, and Scala. Enhancing code readability, allowing omission of unnecessary components, and simplifying code are key features. Expect further innovative uses as languages evolve.
-
Leveraging Eclipse JNoSQL 1.0.0: Quarkus Integration and Building a Pet-Friendly REST API
Eclipse JNoSQL 1.0.0 modernizes NoSQL integration with advanced features, standardized specs (Jakarta NoSQL & Jakarta Data), enhanced queries, schema migration, and Quarkus framework compatibility. It simplifies NoSQL use, boosts performance, scalability, and integrates seamlessly, empowering developers with tools to streamline data management in modern apps.
-
Evolving the Federated GraphQL Platform at Netflix
This article describes the journey of the migration towards a Federated GraphQL architecture. Specifically, it shows the GraphQL platform Netflix has built consisting of the Domain Graph Services framework for implementing GraphQL services in Java using Spring Boot and graphql-java, and tools for schema development. It also describes how the ecosystem has evolved at various stages of adoption.
-
AI-Based Prose Programming for Subject Matter Experts: Will This Work?
In this article, author Markus Völter discusses the future of programming using Large Language Model (LLM) tools like ChatGPT and GitHub’s Copilot for prose-to-code generation. He also talks about what new approaches and language changes need to be in place to help non-programmers take advantage of the "program in prose" techniques.
-
Creating Your Own AI Co-Author Using C++
While using ChatGPT through a web interface is one thing, creating your own autonomous AI tool that interfaces with ChatGPT via its API is a different story altogether. As strong proponents of C++, in this article we are going to present a GPT tool written in C++ to ease the pain of dealing with the daunting task of editing endless editorial comments.
-
A Comprehensive Guide to Java's New Feature: Pattern Matching for Switch
Java brings an update with Pattern Matching for Switch. This article provides a detailed exploration of this feature, examining its support for any reference type, inclusion of null values, and introduction of guarded patterns. It also delves into the new runtime exception class - MatchException, and illustrates the compatibility of this feature with traditional switch statements.
-
Exploring Java Records beyond Data Transfer Objects
Records are a concise and easy-to-use syntax for creating immutable classes. By using Records, you can ensure that your APIs are bulletproof and less prone to errors. Additionally, Records can be applied with Domain-Driven Design (DDD) principles to create more robust and maintainable code. Learning to use Records and apply them with DDD can help you make more resilient and scalable applications.