478 - 《TNF 开发笔记 02:Why TNF》
发布于 2024年10月31日
TNF 还是雏形,还是脑子里的想法,所以这篇文章虽然写的是 Why TNF,实际上是对 TNF 的展望,是我对于理想框架的想法。
1、好的框架应该是如何?
我脑暴了一些关键词,不分先后,持续补充。
- 功能完备
- 场景完备
- Edge Case 覆盖
- 速度和内存占用(Rust 等)
- DX(开发者友好)
- Type Safe
- 框架开发者友好
- 性能
- 简单
- 路由
- 安全(Doctor)
- 规则(强约束)
- 最佳实践
- 组装式(开发者对框架的把控度)
- RSC
- SSR(流和非流)
- Server Functions
- React 19
- 兼容(?)
- 做细(多雕花?)
- AI(AI 如何助力前端?)
- 多端友好(MPA)
- 生态友好(TailwindCSS、数据流、shadcn/ui、Css in JS、TanStack Query、CSS Modules 等)
- 插件体系
- …
2、Umi 是大而全,我希望 TNF 应是小而美的。现在的前端框架大多是 Server 优先的,这让本应简单的 CSR 变得复杂,而国内前端大多又都是 CSR 的。TNF 会专注解 CSR 的问题,为此提供极致的研发体验(DX)和产品体验(UX)。DX 包含的东西很多,比如框架速度和内存占用、错误处理、边界 Case 覆盖等,UX 框架层能做的主要是产物性能。同时基于此,要容易扩展,且对 SSR、RSC 和多端等场景友好。
3、大多中台项目对产物性能不敏感(但也不能太差…),而大多对 C 的产品却是很敏感的。我希望 TNF 默认是产物性能友好的。影响产物性能的因素是多维的,我觉得可能有以下这些。
1)产物尺寸。比如 tree shaking 和压缩的效果、产物 gzip 友