Electron 应用开发实践指南--掘金小册课程推荐/优惠
版权声明
本站非掘金小册官网,与官方无任何关系。我们不提供课程下载或详细内容,仅作为课程分享和推荐平台。我们鼓励大家支持正版,尊重创作者的劳动成果,这样不仅能帮助创作者持续产出优质内容,也能让自己获得更好的学习体验。请通过官方渠道购买和学习课程,感谢您的理解与支持。
课程详情
课程介绍
作者介绍
muwoo,前端技术专家。曾就职于蚂蚁集团,掘金小册《Vue 3 技术揭秘》、《从零开发 H5 可视化搭建项目》 作者。
开源爱好者,和 Electron
相关的开源项目:
Rubick
(6.2k+ star)项目作者:https://github.com/rubickCenter/rubickPicGo
(21.9k+ star)项目贡献者:https://github.com/Molunerfinn/PicGo
个人相关主页如下:
小册介绍
作为开发者,我们经常会和各种桌面端软件、开发工具打交道,比如图床、json 格式化、抓包代理&mock、二维码生成等工具。这些工具有的是一个个桌面端 APP,有的是一些 Web 网页,用起来操作链路比较长。也有的工具使用起来非常鸡肋,食之无味、弃之可惜。
基于以上痛点,如果你有“自己造轮子”的念头产生,但是又对桌面端应用开发一点也不了解,那么 Electron
将会是可以快速验证你的想法、快速上线发包的最佳选择。举个知乎上有趣的回答的例子:
Electron 作为一个强大的跨端的桌面端应用框架,受益于其基于 Chromium
+ Node.js
的实现,可以让前端开发者快速构建跨平台的桌面端应用。
但是如果你立刻被这些优势冲昏了头脑,马上上车体验 Electron
开发,那么你可能会碰到各种各样的问题:
-
首先,还是因为集成
Chromium
+Node.js
运行时的原因,这会导致应用特别吃内存,如果在写代码的时候又不注意内存优化,会导致占用电脑的内存越来越大。 -
其次,虽然
Electron
号称跨平台,但大多是其基于Chromium
的部分,其部分Native APIs
,还有一些操作系统层面的交互依然要十分注意跨平台的兼容性。 -
再者,
Electron
虽然提供了大量和操作系统交互的原生API
,但是一旦我们遇到一些需要额外原生能力支持的时候,这些 ElectronAPI
就显得不够用了,所以如何使用C++
、Rust
开发一些扩展API
就显得特别重要。 -
最后,桌面端应用和传统 Web 开发还是存在着大量差异性,Web 打个包发到 CDN 上就可以通过
URL
访问、更新。但是桌面端应用有打包、更新、包体积、性能、内存占用等等各种问题需要处理。
所以,本小册内容设置逻辑如下:
-
首先试着从
Electron
基础篇讲清楚开发一个 Electron 桌面应用你需要具备的基础知识,带你快速建立起 Electron 知识树。 -
再以开源项目 Rubick 6.2k+ star 为原型、开发一款桌面端工具为实例,讲清楚
Electron
开发中碰到的各种兼容性、原生扩展、操作系统底层调用等各种问题。 -
最后再教会你打包、更新、自动化测试你的应用并不断分析优化
Electron
内存占用和性能。相对于其他 Electron 教程而言,我们的实战部分绝对不是开发一个玩具的demo
项目然后草草收场,所有示例代码都在开源项目中应用,因此会有更强的带入感和业务应用性。
你会学到什么?
小册大纲如下:
本小册主要分成三大模块介绍 Electron
开发中需要学习、处理、解决的问题。
-
模块一:Electron 基础篇。以最通俗易通的方式介绍
Electron
的一些核心概念和Electron
的原生能力。希望通过该模块的学习让你对Electron
的整体骨架有一个清晰的认知,可以开始入坑Electron
。 -
模块二:Electron 实战篇。通过基础篇的学习后,相信你一定希望动手实操,本模块将会从零开始以 Rubick 为原型来揭秘桌面端工具开发的核心秘密。本模块所有源码都源自 Rubick,你可以边调试边看,进一步加强理解。
-
模块三:Electron 通用篇。本模块重点介绍开发
Electron
会遇到的一些通用问题,包括:应用的打包、更新、自动化测试、性能优化、内存优化等等,并给出一些常用的解决方案。
希望通过这三个模块的学习,你可以学到:
- 开发 Electron 应用必备的基础知识和概念;
- 学会使用 C++ 开发 Electron 的原生扩展程序;
- 学会使用 Rust 开发 Electron 的原生扩展程序
- 学习并开发一款自己的桌面端工具箱;
- Electron 应用的兼容性处理方案;
- Electron 应用打包、更新、自动化测试、内存优化、性能优化策略。
适宜人群
因为 Electron
是使用 JS
、HTML
、CSS
构建的跨平台的桌面端应用。所以本小册适合人群为:
- 有 Web 开发基础的小伙伴。
- 想学习桌面端应用程序开发的小伙伴。
名人推荐
课程目录
- 开篇:Electron 带来的边界扩展
- 基础篇:Electron 的基础概念
- 基础篇:Electron 进程间的通信
- 实战篇:如何支持工具插件化
- 基础篇:Electron 跨平台兼容性措施
- 基础篇:Electron 的原生能力
- 实战篇:开发环境搭建
- 实战篇:需求概述
- 实战篇:实现应用快速检索
- 实战篇:插件的安装、发布、卸载
- 通用篇:Electron 应用打包
- 实战篇:系统插件的加载和取色插件的开发
- 通用篇:Electron 应用安全性指南
- 实战篇:实现超级面板
- 实战篇:自定义窗口的拖拽和缩放
- 实战:Electron 应用注入到系统右键菜单
- 实战篇:本地数据库和多端数据同步
- 结语:我与 Electron &开源的那些事
- 通用篇:Electron 应用更新
- 通用篇:Electron 应用性能优化
- 通用篇:Electron 的一些疑难杂症
- 基础篇:Electron 菜单和托盘
- 实战篇:Electron 实现屏幕截图
- 通用篇:Electron 应用的自动化测试
- 通用篇:使用 Rust 开发 Electron 原生扩展