分析总结Technology Radar出现的后端和前端(Web)技术。
后端发展趋势
- 聚合点
此外,GraphQL Inspector可以作为CI管道的一部分运行,以验证graphql模式,查找相似或重复的类型并将其与以前的版本进行比较以捕获重大更改并将通知发送给Slack。
- 事件驱动EDA
Kafka是一个非常知名的消息传递系统,可以用作各种系统之间的中间层。例如,将数据从SQL数据库卸载到数据仓库中。可以使用Kafka Connect框架,尤其是JDBC源连接器来解决此任务。也可以使用称为Tamer的独立连接器Scala应用程序。
提到的两个工具,Kafka和Pulsar,都非常适合事件驱动的体系结构。尽管您可能在使用同步REST API的过程中熟悉OpenAPI(以前称为Swagger),但AsyncAPI是通常在任何EDA中都可以找到的异步API的补充部分。
我们的任务是标准化基于消息的通信,并提高不同系统之间的互操作性。
这个项目将要建立一个标准并提供工具,例如代码和文档生成器,模拟和测试库以及验证器。
- 微服务
在部署新版本的应用程序时,测试HTTP API对于确保客户端安全至关重要。同样,在现代微服务体系结构中,您需要确保在此处更新一项服务不会破坏那里的另一项服务。在Spring Cloud世界中,您可以使用Spring Cloud合约,但除此之外,还有很多可用的选择,其中之一脱颖而出:Karate。对于不需要技术的人(例如产品所有者,领域专家或测试人员),他们可以使用特定领域的语言(例如Cucumber)特别有用,而无需编写胶水代码或步骤定义。此外,随着UI测试自动化的推出,Karate 已成为完整的端到端测试框架。
前端开发
- 微服务正在渗入前端开发
到目前为止,我们一直在尝试使用Frint和single-spa,并且渴望将这种技术引入更大规模的前端应用程序中。但是请记住,Fritt是一个完整的框架,需要您所有的应用程序都遵守其规则。
- 前端测试
在Jest中编写单元测试和集成测试时,您可能会发现“Testing Library ”是一个有趣的扩展。适用于最常见的框架:React,Angular和Vue,它允许使用用户友好的API查询DOM节点,例如按标题,标签,文本,角色和测试ID进行搜索。
另一种测试是视觉回归/验证测试。您可以验证整个页面及其部分,布局以及特定元素,例如按钮,文本字段和图像。BackstopJS是此类测试中的领先工具之一。它支持并行测试运行,可以模拟用户交互,不仅可以针对图像的参考集合进行测试,还可以针对整个环境(如暂存,UAT或生产)进行测试。
- 另一个构建工具,另一个CSS工具
诸如CRA(Create React App)之类的启动器应用程序试图掩盖这种过度复杂性,并且似乎有一个新的后起之秀-Snowpack-完全消除了对捆绑器的需求,至少在Web开发开始时,它承诺更快地启动开发环境,立即在浏览器中反映更改后的效果,并支持TypeScript,Babel,JSX,Sass和CSS模块。它可以与React和Vue一起使用,并与webpack捆绑器集成以生成针对生产进行优化的构建。Snowpack App策略 是关于使用现代ESM语法和Snowpack启动新项目来安装npm依赖项的,该依赖项在浏览器中本机运行,完全不需要捆绑程序。
除了过于复杂之外,Tailwind CSS是另一个CSS框架,但是它的扩展性较差。没有预先设计的组件,因此不会覆盖不需要的样式,也不会调试特定性规则。它支持响应式设计,并允许提取重复的模式,最终设计为自定义:不仅仅是CSS框架,它还是创建设计系统的引擎。
- 其他
您不再需要功能强大的笔记本电脑来编程了,Gitpod在Chromebook上的运行也同样流畅。您甚至可以使用平板电脑随时随地进行编码。
banq注:以上是主流媒体的观点,其他观点参考:
服务器端渲染是大多数人不同意的真理 - timr
90年代Web又重新回归 - Max Böck