当前位置: 首页 > 后端技术 > Java

我们真的需要全栈开发吗?

时间:2023-04-02 01:25:39 Java

Web应用程序的开发涉及许多活动,例如:捕获用户故事创建原型设计开发核心组件构建原型开发可运行的应用程序部署测试并最终被业务用户接受Web应用程序开发的整个生命周期需要很多技术。最近,我们看到对全栈开发人员的持续高需求。假设有一支足球队(或任何其他运动队)。我们需要专业的前锋、中场、后卫和守门员。有时候全能选手可以帮助我们赢得一场比赛,甚至是一系列比赛的胜利。但是,所有团队都需要一些专业人员。全栈开发人员是必要的,但仅仅全栈开发是不够的。为什么我们需要全栈开发人员?简单来说,也许我们需要有人同时处理后端API和UI组件。公平地说,全栈开发人员在以下情况下会有很大用处:小团队,最多3-4名成员改进项目,支持和维护项目的预算非常有限,开发人员需要对应各种工作但是,如果团队有很多成员,那么成为全栈开发人员不会带来任何好处,甚至会带来负面影响。为什么?服务/API的基本原则是服务抽象:服务抽象包含了服务内部封装的所有细节(如逻辑、用于实现和构建服务的技术等),可以为服务使用者提供关于服务的详细说明,用户可以通过特定方式使用该服务。现在,当我们想到这一点时,负责端到端实施的开发人员很容易被他们的行为和责任所误导。这样的代码库会有很多问题,团队需要等到未来才能发现。相反,我们可以让全栈开发人员充当UI或后端专家,并随着项目的进展将他们转换为其他角色。从开发周期的角度,这里有几个方法可以让团队不再依赖全栈开发人员:API合约模拟服务如果你觉得以上两种方法只是小事,那最好。但是,如果您认为这两项任务既费时又有益,请记住以下几点。API合同并不意味着必须具有OpenAPI/Swagger文档。API合同也可以只是API和UI开发人员之间的书面或电子邮件协议。测试驱动开发(TDD)是一个不错的选择。然而,正确理解和执行TDD并不是一件容易的事。相反,您应该从模拟服务开始,该服务将帮助您进行单元测试或端到端测试。React获得168,000颗星,Vue获得183,000颗星。Mirage获得4,000星,MSW获得5,000星。GitHub上的这些数字表明,前端开发社区才刚刚开始采用测试驱动的方法。Mirage减少了对API的依赖并加快了Web应用程序的开发。总结我自己是一名全栈开发人员,同时也是一名架构师。本文所表达的意思完全是我个人的看法,希望对你的团队有所帮助。