大家好,我是哆啦好梦,electron-egg 框架开发者。
明天实现了 官网 的搭建。掐指一算,往年指标实现了 2 / 3 了,哈哈。
成果如下:
回归正题,这篇文章是对 electron-egg 我的项目的一个总结,聊一聊它的倒退历程。
先说感触
这个我的项目从最后的一个练手 demo,倒退到现在的问题,感觉挺神奇的。
初始
犹记得最后接触 electron 技术时,发现市面上比拟火的框架 electron-vue 和 electron-react-boilerplate 都是与前端技术深度绑定的,对于我这种服务端开发来说并不敌对。大多数后端开发者或者高级前端尽管能懂一些,但要真正利用起来,还是要学习一番的。
想法
因而我在想,能不能开发一个相似前后端拆散的框架(UI 与业务离开),这样开发者就能够抉择 vue\react\html 等任何前端技术,业务层也与 UI 隔离,让它们各司其职。这便是 electron-egg 框架最开始的想法。
摸索
回顾这两年的开发思路,仅供大家参考。
第一年:摸着石头过河
我自身并不做桌面相干开发工作。但没有需要,不晓得应用场景,怎么写框架?那就是:没有需要,发明需要也要上!
于是开始整顿剖析桌面软件的利用场景和性能,汇总社区用户的需要。以用户为核心,解决他们的问题。这就框架 1.0 版本。
它尽管并不欠缺,但的确解决了开发者的问题,这便是它的价值所在。
第二年:提炼
1.0 版本的 electron-egg 解决了开发者的理论问题,更像是一个综合的库或组件。框架应该是能提供代码工程化的骨架。
期间参考过 node.js 的框架 egg.js/koa.js/express.js,php 语言的框架 yii/laravel,go 语言框架 beego/goframe,前端 vue/layui 等。
学习它们提供了哪些性能,又是怎么实现的。于是通过重构,实现了框架外围包 ee-core,并提供内部调用的 api。
此时 electron-egg 算是实现了从 0 - 1 的过程,算得上一个轻量级的桌面软件开发框架了,后续还布局有模块化,多任务,第三方可嵌入等等。
往年:标准化
随着用户增多,是时候建设一个官方网站,长期经营了。
另外框架在开发中大型项目上还很多不足之处,模块化、多任务、高性能将是往年的重点。
成长
学的货色越多,越能感觉到本人常识的匮乏。从后端技术到前端技术,从编程语言到框架实现,从产品到我的项目经营。
总之一句话:变秃了,也变强了(真让人伤心)。