GraphQL
-
Boosting Performance and Efficiency: Enhancing React Applications With GraphQL Over REST APIs
In web development, optimizing and scaling applications have always been an issue. React.js had extraordinary success in front-end development as a tool, providing a robust way to create user interfaces. But it gets complicated with growing applications, especially when it comes to multiple REST API endpoints. Concerns such as over-fetching, where excessive data is required, can be a source of performance bottlenecks and a poor user experience. Among the solutions to these challenges is adopting the use of GraphQL with…
-
Designing Scalable Java APIs With GraphQL
Have you ever wondered if there’s a better way to fetch data for your applications than REST APIs? In back-end development, GraphQL has emerged as a powerful alternative, offering a more flexible and efficient approach to data fetching. For developers familiar with Java, integrating GraphQL into a modern backend opens the door to scalable and high-performing APIs tailored for a wide range of use cases. This blog will explore the key differences between GraphQL and REST, highlight the unique benefits…
-
Optimizing Fine-Grained GraphQL Access Control and Query Performance
GraphQL is both a query language for APIs and a runtime for executing those queries with your existing data. It offers a comprehensive and clear description of the data available in your API, allows clients to request precisely what they need without excess, facilitates the evolution of APIs over time, and supports robust developer tools. GraphQL Access Control and Query Optimization Access Control Authorization is a set of rules or business logic that determines whether a user, session, or context…
-
A Beginner’s Guide to GraphQL Interfaces and Unions
What is GraphQL? GraphQL is an open-source query language for APIs, initially developed by Facebook in 2012 and released to the public in 2015. It offers a flexible and efficient alternative to traditional REST APIs by allowing clients to request only the specific data they need, solving issues of over-fetching and under-fetching that often occur with REST APIs. One of the reasons for GraphQL’s growing popularity is its client-driven nature. This makes it particularly well-suited for modern applications where performance,…
-
Serverless Computing and GraphQL: Modern App Development
In this article, I will guide you through the process of creating a serverless GraphQL API using TypeScript, AWS Lambda, and Apollo Server. Serverless Computing Serverless computing is a cloud-computing execution model where cloud providers automatically manage the infrastructure for running applications. In this model, developers write code, and the cloud provider takes care of running, scaling, and maintaining the servers, meaning developers don’t need to worry about server management, infrastructure provisioning, or scaling. The term “serverless” doesn’t mean that…
-
Leveling Up My GraphQL Skills: Real-Time Subscriptions
For a few years now, I’ve tried to identify frameworks, products, and services that allow technologists to maintain their focus on extending the value of their intellectual property. This continues to be a wonderful journey for me, filled with unique learning opportunities. The engineer in me recently wondered if there was a situation where I could find a secondary benefit for an existing concept that I’ve talked about before. In other words, could I identify another benefit with the same…
-
How To Migrate Terraform State to GitLab CI/CD
As a software professional handling Infrastructure as Code (IaC), chances are you work a lot with Terraform. When helping new clients use IaC, it is common to simplify things, but managing a Terraform state file is the first challenge you face. Essentially, Terraform state contains sensitive information, which shouldn’t be stored by source control but, at the same time, won’t scale if you have multiple users working on the same Terraform state. The answer to that? Backends. It is important…
-
Cross-Platform Mobile App Prototyping With Flutter and AWS Amplify
I’m going to show you how you can use Flutter and AWS Amplify to quickly go from nothing to a working cross-platform mobile application with authentication and backend infrastructure. What would usually take a small dev team a week or so to setup can be achieved in a fraction of the time using this toolkit. If you follow along with this tutorial, it should take you no more than an hour. Well, it took me several hours fighting with various…
-
Understanding API Technologies: A Comparative Analysis of REST, GraphQL, and Asynchronous APIs
Editor’s Note: The following is an article written for and published in DZone’s 2024 Trend Report, Modern API Management: Connecting Data-Driven Architectures Alongside AI, Automation, and Microservices. APIs play a pivotal role in the world of modern software development. Multiple types of APIs can be used to establish communication and data exchange between various systems. At the forefront lies the REST approach, which has dominated the industry due to its simplicity and scalability. However, as technology has evolved, the demands of…