为什么开发团队采用 GraphQL?
GraphQL是一种 API 查询语言,最初由 Facebook 构建,它描述了如何从服务器向客户端询问和获取数据,其独特之处在于响应格式是在查询中描述的,由客户端而不是服务器定义。
2018 年底,npm 公司发布了关于 2019 年 JavaScript 的见解和预测的年度预测,其中提到:
开发人员很有可能在 2019 年的新项目中使用 GraphQL,并且 GraphQL 将成为 2019 年一股不容忽视的技术力量。
你猜怎么着?他们说对了!越来越多的公司采用 GraphQL,并取得了巨大的成功!
为什么公司采用 GraphQL?
一家采用 GraphQL 的公司开展了一项调查,询问了多家公司的 CTO 和首席开发人员,了解他们实施GraphQL的经验及其效果。他们收集的数据非常出色,既包括Uber、Paypal 等顶级公司,也包括拥有 1 到 100 多名软件工程师的中小型开发团队的公司。
调查结果让我们了解到:
- 为什么他们选择实现 GraphQL,
- 他们在过渡过程中遇到了哪些障碍,
- 成功实施后他们能够发现哪些主要好处。
让我们来看看开发人员必须面对的问题。
问题与解答
严格来说,这些并非问题,但这项调查要求受访者对他们决定转型的原因进行排序,采用 1 到 6 的等级,其中 1 代表最重要的原因,6 代表最不重要的原因。调查制定者确定了六大主要优势(开发速度、模块化、可扩展性、性能、可靠性、安全性),并询问受访者对以下陈述的同意/不同意程度:
我们能够使用 GraphQL 加快开发速度
我们能够使用 GraphQL 更快地扩展项目
统一我们的 API(例如微服务、遗留端点、第三方服务等)变得更加容易
使用 GraphQL 后性能有所提升
我们的架构更加稳定,停机时间减少,错误更少
结果如下:
来源:Novvum@medium
下表总结了调查结果的解读。最重要的一点是,GraphQL 成功地满足了中小型企业团队的需求。
团队规模 | 他们想要实现的目标 | 他们取得了什么成就 |
---|---|---|
50-100 和 100+ 名开发者 | 更快的开发速度、更好的可扩展性、更好的模块化 | 更快的开发速度,更好的可扩展性 |
10-50名开发人员 | 更好的模块化,更高的性能 | 更快的发展,更好的基础设施 |
最多 10 位开发人员 | 更快的开发速度,更好的模块化 | 更快的开发速度,更好的可扩展性 |
奖励:获得启发!
如果你还没看过,一定要看看这部关于 GraphQL 起源及其发展历程的纪录片。这部精彩的作品由 GraphQL 的联合创始人 Lee Byron、Dan Schafer 和 Nick Schrock 以及社区中的其他大咖主演。
鏂囩珷鏉ユ簮锛�https://dev.to/graphqleditor/why-development-teams-are-adopting-graphql-11mh《GraphQL:纪录片》探讨了 GraphQL 诞生的原因和方式,以及它对全球大型科技公司(包括 Facebook、Twitter、Airbnb 和 Github)的影响。