当前位置:首页 > 技术分析 > 正文内容

electron-egg: 当代桌面开发框架,轻松入门electron

ruisui884个月前 (03-01)技术分析15

当前技术社区中出现了各种下一代技术或框架,却很少有当代可以用的,于是electron-egg就出现了。

它愿景很大:希望所有开发者都能学会桌面软件开发

当前桌面软件技术有哪些?

语言

技术

优点

缺点

C#

wpf

专业的桌面软件技术,功能强大

学习成本高

Java

swing/javaFx

跨平台和语言流行

GUI库少,界面不美观

C++

Qt

跨平台,功能和类库丰富

学习成本高

Swift


非跨平台,文档不友好,UI库少

JS

electron

跨平台,入门简单,UI强大,扩展性强

内存开销大,包体大。

为什么使用electron?

某某说:我们的应用要兼容多个平台,原生开发效率低,各平台研发人员不足,我们没有资源。

也许你觉得只是中小公司没有资源,no!大公司更没有资源。因为软件体量越大,所需研发人员越多。再加上需要多平台支持的话,研发人员更是指数级增长的。

我们来看看QQ团队负责人最近的回应吧:

“感谢大家对新版桌面QQ NT的使用和关注,今年QQ团队启动了QQ的架构升级计划,第一站就是解决目前桌面端迭代慢的问题,我们使用新架构从前到后对QQ代码进行了重构,而其中选择使用Electron作为新版QQ桌面端UI跨平台解决方案,是基于提升研发效率、框架成熟度、团队技术及人才积累等几个方面综合考虑的结果。”

也许electron的缺点很明显,但它的投入产出比却是最高的。

所以,对企业而言,效率永远是第一位的。不要用程序员的思维去思考产品。

哪些企业或软件在使用electron?

国内:抖音客户端、百度翻译、阿里云盘、B站客户端、迅雷、网易有道云、QQ(doing) 等

国外:vscode、Slack、Atom、Discord、Skype、WhatsApp、等

你的软件用户体量应该没有上面这些公司多吧?所以你还有什么可担心的呢?

开发者 / 决策者不要去关心性能、包体大小这些东西,当你的产品用户少时,它没意义;当你的产品用户多时,找nb的人把它优化。

聊聊electron-egg框架

EE是一个业务框架;就好比 Spring之于java,thinkphp之于php,nuxt.js之于vue;electron只提供了基础的函数和api,但你写项目的时候,业务和代码工程化是需要自己实现的,ee就提供了这个工程化能力。

特性

  • 跨平台:一套代码,可以打包成windows版、Mac版、Linux版、国产UOS、Deepin、麒麟等
  • 简单高效:只需学习 js 语言
  • 前端独立:理论上支持任何前端技术,如:vue、react、html等等
  • 工程化:可以用前端、服务端的开发思维,来编写桌面软件
  • 高性能:事件驱动、非阻塞式IO
  • 功能丰富:配置、通信、插件、数据库、升级、打包、工具... 应有尽有
  • 安全:支持字节码加密、压缩混淆加密
  • 功能demo:桌面软件常见功能,框架集成或提供demo

谁可以使用electron-egg?

前端、服务端、运维、游戏等技术人员皆可使用。我相信在你的工作生涯中,或多或少都接触过js,恭喜你,可以入门了。

为什么各种技术栈的开发者都能使用electron-egg?

这与它的架构有关。

第一:前端独立

你可以用vue、react、angular等开发框架;也可用antdesign、layui、bootstrap等组件库;或者你用cococreater开发游戏也行; 框架只需要最终构建的资源(html/css/js)。

第二:工程化-MVC编程模式

如果你是java、php、python等后端开发者,不懂js那一套编程模式怎么办?

没关系,框架已经为你提供了MVC(
controller/service/model/view),是不是很熟悉?官方提供了大量业务场景demo,直接开始撸代码吧。

开箱即用

编程方法、插件、通信、日志、数据库、调试、脚本工具、打包工具等开发需要的东西,框架都已经提供好了,你只需要专注于业务的实现。

十分钟体验

安装

bash复制代码# 下载
git clone https://gitee.com/dromara/electron-egg.git

# 安装依赖
npm install

# 启动
npm run start

效果

界面中的功能是demo,方便初学者入门。

项目案例

EE框架已经应用于医疗、学校、政务、股票交易、ERP、娱乐、视频、企业等领域客户端

以下是部分开发者使用electron-egg开发的客户端软件,请看效果

后语

我是 哆啦好梦 ,一个码农。喜欢唱、跳、rap、篮球、music ......

仓库地址,欢迎给项目点赞!

gitee gitee.com/dromara/ele… 2300+

github github.com/dromara/ele… 500+

关于 Dromara

Dromara 是由国内顶尖的开源项目作者共同组成的开源社区。提供包括分布式事务,流行工具,企业级认证,微服务RPC,运维监控,Agent监控,分布式日志,调度编排等一系列开源产品、解决方案与咨询、技术支持与培训认证服务。技术栈全面开源共建、 保持社区中立,致力于为全球用户提供微服务云原生解决方案。让参与的每一位开源爱好者,体会到开源的快乐。

Dromara开源社区目前拥有10+GVP项目,总star数量超过十万,构建了上万人的开源社区,有成千上万的个人及团队在使用Dromara社区的开源项目。

electron-egg已加入dromara组织。



转自链接:
https://juejin.cn/post/7181279242628366397

扫描二维码推送至手机访问。

版权声明:本文由ruisui88发布,如需转载请注明出处。

本文链接:http://www.ruisui88.com/post/2382.html

分享给朋友:

“electron-egg: 当代桌面开发框架,轻松入门electron” 的相关文章

Vue3 中有哪些值得深究的知识点?

众所周知,前端技术一直更新很快,这不 vue3 也问世这么久了,今天就来给大家分享下vue3中值得注意的知识点。喜欢的话建议收藏,点个关注!1、createAppvue2 和 vue3 在创建实例时,有很大的区别,具体对比如下://Vue 2 Vue.use({ router, store,...

抖音 Android 性能优化系列:启动优化实践

启动性能是 APP 使用体验的门面,启动过程耗时较长很可能使用户削减使用 APP 的兴趣,抖音通过对启动性能做劣化实验也验证了其对于业务指标有显著影响。抖音有数亿的日活,启动耗时几百毫秒的增长就可能带来成千上万用户的留存缩减,因此,启动性能的优化成为了抖音 Android 基础技术团队在体验优化方向...

USB电池充电基础:应急指南

USB为便携设备供电与其串行通信功能一样,已经成为一种标准应用。如今,USB 供电已经扩展到电池充电、交流适配器及其它供电形式的应用。应用的普及带来的一个显著效果是便携设备的充电和供电可以互换插头和适配器。因此,相对于过去每种装置都采用专用适配器的架构相比,目前的解决方案允许采用多种电源进行充电。毋...

江西省文化和旅游厅厅属事业单位2022年公开招聘工作人员公告

根据省人力资源社会保障厅2022年省直事业单位公开招聘统一安排,省文化和旅游厅厅属7家单位面向社会公开招聘工作人员35名,具体详见省人力资源社会保障厅公告。(http://rst.jiangxi.gov.cn/art/2022/4/15/art_47810_3922327.html)招聘岗位表来源:...

FANUC PMC设计与编程-机床控制信号

一、机床控制信号1.控制装置准备完成信号MA(machine ready)电源接通及CNC控制软件正常运行准备完成后,该信号为1,通知上级控制装置电源已经接通,该信号可以作为常开信号使用。2.伺服准备完成信号SA(servo ready)紧急停止解除及伺服系统准备完成后,该信号为1。3.紧急停止信号...

Django前后端分离跨域请求问题

一、问题背景之前使用django+vue进行前后端分离碰到跨域请求问题,跨域(域名或者端口不同)请求问题的本质是由于浏览器的同源策略导致的,当请求的响应不是处于同一个域名和端口下,浏览器不会接受响应,同源策略也是浏览器针对请求的安全问题所作出的一种保护行为。针对跨域问题,可以有下面的解决方式:JSO...