今天,我决定注意并审查Malte UBL从Vercel讨论的原则
在技术上还是在团队的成长和迭代方面,缩放Web应用程序都比看起来更难。
在吸引数百万用户时,使应用程序表现者的技术方面具有挑战性。
他对扩展有很多思考,只是在React Summit上进行了缩放前端应用程序开发的讨论:
这是缩放应用程序的六个基本原则:
- 1:拆除障碍
- 2:向东删除代码
- 3:逐步迁移
- 4:永远变得更好,永远不会变得更糟
- 5:拥抱缺乏知识
- 6:消除系统的复杂性
现在让每个原则都深入:
原理1:拆除障碍
视频中讨论的第一个原则是拆除可以放缓发展的障碍。这包括诸如团队之间的孤岛,缓慢的构建时间以及可以自动化的手动过程之类的东西。通过消除这些障碍,团队可以更有效地工作,并专注于为用户提供价值。
很好的例子:迁移到可以节省很多次并消除一些障碍
的单声道仓库原理2:使删除代码易于删除
第二个原则是使其易于删除代码。这意味着创建一个样式系统,团队可以保持其代码库清洁和可维护。
很好的示例1:如果您使用CSS-In-JS或tailwind,因为您与代码的CSS共存,您可以轻松地以高信任地删除组件。
好示例2:NextJS 13
原理3:逐步迁移
第三个原则是逐步迁移。这意味着通过采用增量方法,以逐步的方式从旧的API转向新功能,团队可以避免破坏变化并最大程度地降低风险。
的确,他认为只有2种迁移类型:
- 增量迁移
- 失败的迁移
好示例1:next.js 13应用程序路由器
好示例2:TRPC
原理4:永远变得更好,永远不会变得更糟
第四原理都是关于持续改进的。团队应始终寻找改善代码库和流程的方法,而不是让事情停滞不前。这包括引入新代码的新规则,而不是迁移旧代码,寻求代码更改的批准。
很好的例子:介绍棉绒规则渐变
原理5:拥抱缺乏知识
第五原则是拥抱缺乏知识。这意味着在不知道所有事物并在需要时寻找答案感到满意。这也意味着愿意提出问题并挑战假设以改善结果。
一些很好的例子:
- 为了减少对尴尬的恐惧,团队建立了一个匿名问题提交系统
- 鼓励员工提出愚蠢的问题有助于通过自己动手来创造开放和舒适的文化
- 指导和指导
原理6:消除系统的复杂性
最终原理是消除系统的复杂性。这包括版本管理API和引入新字段之类的内容,这些字段可能会增加不必要的复杂性。扬声器建议使用无服务器部署完全消除这种复杂性。通过简化系统,团队可以专注于为用户提供价值,而不是管理复杂性。
很好的例子:版本偏斜
https://youtu.be/tqhLK0Fb5_4?si=Ql-dj-x5w443dEK9
在评论中让我知道您对HESE原则有何看法以及您是否有一个很好的例子
最好的
哈希