![](https://img-blog.csdnimg.cn/20190918140213434.png?x-oss-process=image/resize,m_fixed,h_224,w_224)
大前端架构设计
专注大前端方向,Web、Flutter、Node、Electron、编译等。
渔子长
这个作者很懒,什么都没留下…
展开
-
我写了一个TypeScript虚拟机。
我写了一个TypeScript虚拟机: Tser。Github地址:tser-project/tser。安装使用$ brew tap tser-project/tser && brew install tser;$ tser ./input.ts;为什么要创造Tser?TypeScript(TS)是一个伟大的发明,让我们在复用JS生态的同时拥有了静态类型语言的开发体验。TS本质是一门预编译语言,编译到JS后再使用JS虚拟机执行,由于强依赖于JS,也因此无法摆脱JS的一些顽疾原创 2020-09-15 18:04:46 · 251 阅读 · 0 评论 -
从0开始设计Flutter独立APP | 第三篇: 一劳永逸解决全局BuildContext问题
鉴于Flutter的高性能渲染、跨平台、多端一致性等优势,闪点清单在移动端APP上,使用了完整的Flutter框架来开发。既然是完整APP,架构搭建完全不受历史Native APP的影响,没有历史包袱的沉淀,设计也能更灵活和健壮。全局BuildContext,几乎是所有Flutter开发者的一个痛点。这个痛点有多痛呢?我们来列举一下场景:路由跳转、弹窗、媒体查询,全部依赖于BuildContext,如果在Service层(或其他非UI层)做这些操作,必须要逐层传递正确的BuildContext实例.原创 2020-07-14 12:11:18 · 1260 阅读 · 0 评论 -
从0开始设计Flutter独立APP | 第二篇: 完整的国际化语言支持
鉴于Flutter高性能渲染和跨平台的优势,闪点清单在移动端APP上,使用了完整的Flutter框架来开发。既然是完整APP,架构搭建完全不受历史Native APP的影响,没有历史包袱的沉淀,设计也能更灵活和健壮。国际化语言的支持,是很多APP都有的一个强需求,APP无论大小,只要还不想放弃国外的客户,一般就需要支持国际化。官方支持Flutter官方方案提供了国际化的基础支持,如Flutter内置组件的国际化、语言代理、Widget使用语言包、语言设置回调等,并支持自定义第三方类来扩展,可以参.原创 2020-06-28 13:42:11 · 237 阅读 · 0 评论 -
从0开始设计Flutter独立APP | 第一篇: 数据库与状态管理
鉴于Flutter高性能渲染和跨平台的优势,闪点清单在移动端APP上,使用了完整的Flutter框架来开发。既然是完整APP,架构搭建完全不受历史Native APP的影响,没有历史包袱的沉淀,设计也能更灵活和健壮。首先列举部分闪点清单的业务特性(较为通用的业务特性):本地有较大数据量的清单数据,离线可用,未登录可用;登录后需要服务器数据同步状态变更场景多,前端状态逻辑较为复杂,跨页面、跨组件状态更新频繁这几个业务点,设计到的技术选型有:本地数据库、前端状态管理,对很多业务来说,这几点都是比较原创 2020-06-18 01:14:11 · 382 阅读 · 1 评论