electron-egg v3 发布,下载量 10 万+以后,重新出发
先说感受
这个项目从最初的一个练手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的过程,算得上一个轻量级的桌面软件开发框架了,后续还规划有模块化,多任务,第三方可嵌入等等。
今年:标准化
随着用户增多,是时候建设一个官方网站,长期运营了。 另外框架在开发中大型项目上还很多不足之处,模块化、多任务、高性能将是今年的重点。
成长
学的东西越多,越能感觉到自己知识的匮乏。从后端技术到前端技术,从编程语言到框架实现,从产品到项目运营。总之一句话:变秃了,也变强了(真让人伤心)。 框架目前有 3000+ start了,今年还加入了dromara组织,算是对项目的认可。那就撸起袖子加油干吧。
v3版本
值得信赖
为什么使用 桌面软件(办公方向、 个人工具),仍然是未来十几年 PC 端需求之一,提高工作效率 electron 技术是流行趋势,百度翻译、阿里网盘、迅雷、有道云笔记 ...... ee 框架使用 b(浏览器)s(主进程)s(远程后端服务)开发思想 前端、服务端同学都能快速入门 愿景 所有开发者都能学会桌面软件研发 简单 只需懂 JavaScript 开源 🍰 gitee: https://gitee.com/dromara/electron-egg 3000+ 🍨 github: https://github.com/dromara/electron-egg 700+
本次更新
新增14模块,新增98个api
- 框架核心ee-core重构,升级到2.0.3
- 整体架构由 单业务进程&大对象 模型 转变为:单业务进程&模块化&多任务。
- ee-core模块划分:
- addon:插件,不提供api
- bin:脚本,不提供api
- config:配置,提供api
- const:常量,提供api
- controller:控制器类,提供api
- core:核心,不提供api
- ee:全局对象,提供api
- electron:electron功能,提供api
- exception:异常处理,提供api
- httpclient:curl请求,提供api
- jobs:任务,提供api
- loader:加载器,提供api
- log:日志,提供api
- message:消息,提供api
- oldUtils:旧的类库,提供api
- ps:进程,提供api
- service:服务层类,提供api
- socket:通信,提供api
- tools:工具,提供api
- utils:类库,提供api
使用场景
1. 常规桌面软件
- windows 平台
- macOS 平台
- linux 平台 (ubuntu)
2. vue、react、web 转换成桌面软件
- vue-ant-design(本地)
- 禅道项目管理(web 项目地址)
3. 用户案例
访问官网 https://gitee.com/dromara/electron-egg
🍰 gitee: https://gitee.com/dromara/electron-egg
🍨 github: https://github.com/dromara/electron-egg

低调大师中文资讯倾力打造互联网数据资讯、行业资源、电子商务、移动互联网、网络营销平台。
持续更新报道IT业界、互联网、市场资讯、驱动更新,是最及时权威的产业资讯及硬件资讯报道平台。
转载内容版权归作者及来源网站所有,本站原创内容转载请注明来源。
- 上一篇
Git 2.40.0 正式发布
Git 项目发布了 Git 2.40 版本,其中包含超过 88 个贡献者的功能和错误修复,其中 30 个是新贡献者。 以下为该版本部分新功能介绍: 在 Git 2.40 中,除了 Vim 之外, git jump 现在还支持 Emacs,允许使用 git jump 将位置列表填充到 Emacs 客户端。[source] 在 v2.38.0 等版本中,git cat-file 的 --batch-check 和 -s 选项都忽略了 --use-mailmap 的存在,当邮件映射重写两侧的名称/电子邮件对长度不同时,可能会导致不正确的结果。 Git 2.40 纠正了这些问题, git cat-file -s 和 --batch-check将忠实地报告对象大小。[source] 过去, check-attr 需要一个索引,这意味着如果想在裸库中使用 check-attr ,必须求助于临时读取索引,Git 2.40 不再需要这种解决方法。在 Git 2.40 中, check-attr 支持新的 --source= 来扫描 .gitattributes。[source] 在 Git 2.40 ...
- 下一篇
每日一博 | 浅析三款大规模分布式文件系统架构设计
什么是文件系统 当提到文件系统,大部分人都很陌生。但我们每个人几乎每天都会使用到文件系统,比如大家打开 Windows、macOS 或者 Linux,不管是用资源管理器还是 Finder,都是在和文件系统打交道。如果大家有自己动手装过操作系统的话,第一次安装的时候一定会有一个步骤就是要格式化磁盘,格式化的时候就需要选择磁盘需要用哪个文件系统。 维基百科上的关于文件系统的定义是: In computing, file system is a method and data structure that the operating system uses to control how data is stored and retrieved. 简而言之,文件系统管理的是某种物理存储介质(如磁盘、SSD、CD、磁带等)上的数据。在文件系统中最基础的概念就是文件和目录,所有的数据都会对应一个文件,通过目录以树形结构来管理和组织这些数据。基于文件和目录的组织结构,可以进行一些更高级的配置,比如给文件配置权限、统计文件的大小、修改时间、限制文件系统的容量上限等。 以下罗列了一些在不同操作系统中比较...
相关文章
文章评论
共有0条评论来说两句吧...
文章二维码
点击排行
推荐阅读
最新文章
- SpringBoot2全家桶,快速入门学习开发网站教程
- CentOS7设置SWAP分区,小内存服务器的救世主
- CentOS7,CentOS8安装Elasticsearch6.8.6
- Hadoop3单机部署,实现最简伪集群
- SpringBoot2更换Tomcat为Jetty,小型站点的福音
- Docker使用Oracle官方镜像安装(12C,18C,19C)
- SpringBoot2配置默认Tomcat设置,开启更多高级功能
- Red5直播服务器,属于Java语言的直播服务器
- CentOS7安装Docker,走上虚拟化容器引擎之路
- SpringBoot2编写第一个Controller,响应你的http请求并返回结果