当前位置: 首页 > news >正文

你真的了解Elecron吗?

         技术更新非常快,我们也需要不断学习,现在应用广泛,我们如果要开发一些工具等可以用Electron去开发一些桌面应用。比如我们可以自己开发一些方便使用的工具,可以提高团队开发效率

一、Electron由来?

          Electron是由Github开发的一个开源框架,用于创建跨平台的桌面应用程序。它最初由GitHub的开发者2013为了开Atom-shell编辑器而创建。2014年提取出来,一个是Atom-shell,一个是Electron这个桌面应用开源出来。

          Electron的前身是Atom Shell,它是一个基于Chromium和Node.js的框架,可以将Web技术(HTML、CSS和JavaScript)应用到桌面应用程序开发中。Atom Shell的目标是为开发者提供一种开发跨平台桌面应用程序的简单方式。

         在2015年,该项目更名为Electron,并在同年发布了第一个正式版本。自那时以来Electron已成为开发者们喜爱的桌面应用程序开发工具,它被广泛用于开发各种应用程序,包括代码编辑器、音乐播放器、聊天工具等。

       总的来说,Electron的由来是为了让开发者能够使用Web技术开发跨平台的桌面应用程序,它的出现为桌面应用程序开发提供了简单、灵活和强大的解决方案。

二、Electron是什么?

         Electron是一个开源、跨平台桌面应用程序开发框架,它允许开发者使用Web技术(前端三架马车HTML、CSS和JavaScript)来构建桌面应用程序。

三 、Electron的使用有哪些?

         1、 vscode:前端常用编辑器

          2、 postman:一种用于测试和开发API的工具

         3、 yuque:web和pc端的笔记本工具

         4、atom

四、Electron在什么时候使用

         1、开发工具(前端基建):比如团队需要的一些常用工具,可使用Electron开发,或者一些前端工具库等的开发去提高团队效率

         2、打印场景:比如蓝牙打印

         3、可同时开发 web+桌面应用

五、Electron核心技术(三架马车)

         1、chrominun:谷歌为发展chrom浏览器而开源的一个项目,谷歌要开发 什么新功能会优先在chrominun上使用,后续稳定再集成到chrom上。

         2、node:让js能运行在服务端的开发平台,事件驱动+轻量级

         3、native api:如消息通知、弹框等原生api,为Electron提供底层支持原生能力和跨平台

六、Electron优劣有哪些?

        1、优势

              (1)兼容性:Windows、macOSLinux等操作系统都可以,且由于使用chrominu,可使用最新的技术API或者语法,不需要考虑代码兼容性问题

               (2开发效率高:借助于 Web 技术的广泛使用,开发人员可使用熟悉的工具和语言(如 HTML、CSS 和 JavaScript)来构建桌面应用程序,从而提高开发效率

               (3)强大API:可使用强大nodejs的强大API、可以直接操作文件,甚至是系统API、可使用强大的npm模块

                (4)跨域:可直接使用request模块进行网络请求无跨域问题烦扰

                (5)简化开发过程:开发者可以使用熟悉的Web技术构建应用程序,并且能够直接使用各种浏览器特性和第三方库

                (6)社区活跃:Electron 拥有一个庞大而活跃的社区,提供了大量的插件、库示例代码,可以加快开发进度。

          2、劣势

                (1)应用体积过大:集成了chrominun + node + nattive api,应用开发后的打包体积比较大(mac上大概45+M体积,windows大概要100+M打包体积)

                (2)支持度:它基于安全的考虑不是对所有的node或者api都支持,渲染进程会有所限制,渲染系统调用底层系统的通讯会属于一种分发而不直接修改的

                (1)开发速度较慢:它的开发使系统用底层语言,没有经过

                 (2)技术要求高:因为现在前端很多用的框架,使用变得简洁,但是Electron需要对底层逻辑语言有了解,如用windows 需要了解C++  MFC,开发macos 需要了解oc  swift

                 (3)性能问题:相比原生桌面应用程序,Electron 应用程序的性能可能会稍慢一些,特别是对于需要处理大量数据或者进行复杂计算的应用。

七、传统桌面端应用开发

          1、原生开发:

             直接将语言编译成可执行文件 .exe

               优势:运行效率高

               劣势:开发速度慢、技术要求高

               windows开发需要: c++ MFC

               macos开发 oc swift

          2、托管平台

             一次编译,得到中间文件,通过平台或者虚拟机完成二次加载编译或者解释运行,

但是需要了解

          C#  .net framework windows

           java / swing

     总的来说,传统桌面应用开发不管是对技术还是开发速度来说会更高一点,对于前端来说选择Electron进行开发会相对简单、高效、且灵活


http://www.mrgr.cn/news/44482.html

相关文章:

  • 面试官:如何实现分布式系统的限流?
  • ‌图片编辑为底片,智能工具助力,创作精彩视觉作品
  • 影刀RPA实战:Excel排序、替换与格式
  • 超强AI绘画工具StableDiffusion,SD整合包V4.9 来了 版本win加mac安装包以及搭载PS安装说明
  • 基于springboot vue 研究生科研文档资料管理系统设计与实现
  • 产品经理内容分享(二):AI产品经理的入门路线图
  • SpringBoot企业级开发(SpringSecurity安全控制+pringBatch批处理+异步消息+系统集成SpringIntegration)
  • 利用LLMs自动寻找量化投资策略
  • 医院管理新趋势:Spring Boot技术引领
  • 安卓如何实现双击触摸唤醒点亮屏幕功能-Android framework实战开发
  • mmdetection实战,训练自己的数据集
  • C语言复习概要(四)
  • 基于SpringBoot vue3 的山西文旅网java网页设计与实现
  • 国庆练习(Day24)
  • vscode提交修改Failed to connect to github.com port 443: Timed out
  • 一个典型的cmakelists.txt
  • 【星汇极客】单片机竞赛之2024睿抗机器人大赛-火线速递赛道(持续更新)
  • 向量数据库!AI 时代的变革者还是泡沫?
  • 产品经理内容分享(一):AI产品经理需必备那些能力
  • [Day 85] 區塊鏈與人工智能的聯動應用:理論、技術與實踐