Exploring GraphQL as an Alternative to REST
John, Adekunle (2023)
John, Adekunle
2023
All rights reserved. This publication is copyrighted. You may download, display and print it for Your own personal use. Commercial use is prohibited.
Julkaisun pysyvä osoite on
https://urn.fi/URN:NBN:fi:amk-2023121537858
https://urn.fi/URN:NBN:fi:amk-2023121537858
Tiivistelmä
In today's fast-paced software development world, building efficient and flexible APIs is crucial. REST had been the go-to for many developers, but GraphQL had recently emerged as a promising alternative. This thesis project aimed to explore the advantages and disadvantages of using GraphQL as an alternative to REST, helping readers make informed decisions about which approach to take for their API projects.
The thesis discussed the use cases where GraphQL was being adopted by big companies, tapping into its flexibility, performance, and speed. Additionally, in other use cases, GraphQL had been used on top of REST.
Next, the thesis started by giving an overview of REST and GraphQL, including their basic concepts and how they differed in terms of API development. It then delved into the pros and cons of GraphQL compared to REST. For instance, GraphQL allowed for more efficient data retrieval, reduced over-fetching, and offered a more flexible data model. However, there were also challenges, such as a steeper learning curve and a need for specialized tooling.
The thesis project concluded with recommendations for when to use GraphQL instead of REST, based on project-specific requirements. It also suggested tooling and ecosystem when implementing GraphQL.
In summary, this thesis project provided a comprehensive exploration of GraphQL as an alternative to REST. By understanding the benefits and drawbacks of each approach and the scenarios where they were most suitable, readers could make informed decisions about which approach to use for their API development projects.
The thesis discussed the use cases where GraphQL was being adopted by big companies, tapping into its flexibility, performance, and speed. Additionally, in other use cases, GraphQL had been used on top of REST.
Next, the thesis started by giving an overview of REST and GraphQL, including their basic concepts and how they differed in terms of API development. It then delved into the pros and cons of GraphQL compared to REST. For instance, GraphQL allowed for more efficient data retrieval, reduced over-fetching, and offered a more flexible data model. However, there were also challenges, such as a steeper learning curve and a need for specialized tooling.
The thesis project concluded with recommendations for when to use GraphQL instead of REST, based on project-specific requirements. It also suggested tooling and ecosystem when implementing GraphQL.
In summary, this thesis project provided a comprehensive exploration of GraphQL as an alternative to REST. By understanding the benefits and drawbacks of each approach and the scenarios where they were most suitable, readers could make informed decisions about which approach to use for their API development projects.