课程简介
Electron 的坑,大多不在「怎么把网页塞进窗口」这一步,而在主进程与渲染进程怎么划权、信令怎么走、打包更新怎么不出事。邓耀龙这套《Electron 开发实战》的价值就在这里:它不是把 API 文档念一遍,而是带着一个能跑起来的桌面项目,把架构决策和工程细节摊开讲。下面按技术栈、项目结构、可复用模块和自学路径四个角度,说清这份资料该怎么用。 技术栈与课…
Electron 的坑,大多不在「怎么把网页塞进窗口」这一步,而在主进程与渲染进程怎么划权、信令怎么走、打包更新怎么不出事。邓耀龙这套《Electron 开发实战》的价值就在这里:它不是把 API 文档念一遍,而是带着一个能跑起来的桌面项目,把架构决策和工程细节摊开讲。下面按技术栈、项目结构、可复用模块和自学路径四个角度,说清这份资料该怎么用。
技术栈与课程定位
课程覆盖的是典型的 Electron 全链路:主进程 / 渲染进程模型、preload 与上下文隔离、IPC 通信、Node 能力在桌面端的边界、原生模块与系统 API 的对接。从目录结构能看出它并不停留在「写个窗口」的层面——信令服务单列一讲,说明项目里存在实时通信场景;打包与更新各占若干讲,说明它把「能交付」当成一个独立课题来处理。最后一讲专门谈 Electron bad parts,用辩证视角讨论内存占用、包体积、安全模型这些常被绕开的问题,这种收尾方式在同类教程里不多见,也决定了它更像一份工程参考而不是入门演示。
项目结构:从一个真实应用反推分层
跟着课程走,你会看到一个分层逐渐清晰的过程。渲染层负责界面与交互,主进程负责窗口生命周期、系统级能力和跨进程调度,preload 作为两者之间唯一受控的通道。信令相关的内容会把这条链路拉长到多端:一端发起、一端响应,中间还有状态同步和断线处理。这些不是抽象概念,而是具体到「哪个进程持有状态、消息格式怎么定、错误怎么回传」的工程问题。
建议在动手时先不急着写业务,把这三层的边界画出来,再对照课程里的实现看哪些逻辑被放在了主进程、哪些留在了渲染层。这个对照过程比抄代码更有意义,因为它决定了你后面遇到性能或安全问题时能不能快速定位。
可复用模块与交付链路
课程里打包与更新是相对独立、也最容易直接搬走的部分。打包讲的是从 HTML 到安装包的完整过程:构建配置、资源路径处理、不同平台的产物差异;更新则先讲痛点——增量还是全量、签名校验、回滚策略、用户提示时机——再落到实现。这两块内容在真实项目里几乎必然遇到,且各家做法差异很大,有一套能跑的参考实现,比翻文档试错省太多时间。
自动化测试部分同样值得单独拎出来。Electron 的测试相比纯前端多了进程维度的复杂度,课程里涉及的对主进程和渲染进程分别验证、以及如何组织测试用例,是可以直接套用到自己项目里的结构。建议把这几讲的实现抽象成自己的脚手架,后续新项目直接从这套结构起步。
自学路径建议
- 先过一遍环境搭建与前期准备,把本地跑通,确认 Node 与 Electron 版本匹配,别在这一步卡太久。
- 按主进程、渲染进程、preload、IPC 的顺序理解架构,动手改一改通信逻辑,观察进程间数据的流向。
- 跟进信令服务部分时,重点是消息协议和状态管理,而不是照抄服务端代码。
- 把打包、更新、测试三块当作独立的工程课题来练,每一步都产出一个可复用的配置或脚本。
- 最后再看 bad parts 那一讲,带着前面踩过的坑去读,收获会比一开始就看大得多。
整体而言,这份资料适合拿来对照实践:边看边改、边改边抽象,让每一讲都落成自己项目里的一段代码或一份配置,而不是看完就搁置的视频。
极客时间-邓耀龙-Electron开发实战
Electron实战,打造桌面应用
编辑点评
深入解析Electron架构,实战项目教学,助你掌握桌面应用开发。
⭐ 编辑推荐
从环境搭建到项目实战,全面解析Electron技术,打造跨平台桌面应用。
✨ 课程亮点
✦Electron架构解析
✦实战项目教学
✦跨平台桌面应用开发
课程目录
课程目录34 集
- 22丨信令服务:如何连接两端(下).mp4 [744.2 MB]
- 34丨Electron bad parts:辩证看待Electron技术.mp4 [86.2 MB]
- 26丨Electron 应用打包:从HTML到安装包.mp4 [251.3 MB]
- 27丨Electron 应用更新(一):软件更新的痛点.mp4 [178.6 MB]
- 06丨Electron开发准备:环境搭建及前期准备.mp4 [49.8 MB]
- 31丨Electron 自动化测试:如何编写端到端测试?.mp4 [202.2 MB]
- 16丨主页面基础业务:Real World IPC.mp4 [433.3 MB]
- 09丨与Web开发不同(一):主进程与渲染进程.mp4 [73.5 MB]
- 04丨揭秘Electron架构原理:Chromium + Node-js是如何一起工作?.mp4 [106.5 MB]
- 25丨项目完善与总结(下):原生GUI.mp4 [597.8 MB]
- 33丨Electron客户端的安全:从XSS到RCE.mp4 [166.4 MB]
- 32丨Electron体验优化:如何优化白屏问题?【整理不易‖记得关注:CunWorkNotes】.mp4 [183.2 MB]
- 21丨信令服务:如何连接两端(上)【整理不易‖记得关注:CunWorkNotes】.mp4 [303.3 MB]
- 24丨项目完善与总结(上):App特性.mp4 [201.8 MB]
- 10丨与Web开发不同(二):进程间通信.mp4 [143.7 MB]
- 01丨课程介绍.mp4 [157.7 MB]
- 07丨第一个Electron应用:开发一个简单版的番茄钟(上).mp4 [63.5 MB]
- 18丨傀儡端实现(二):如何接收&响应指令?.mp4 [604.3 MB]
- 11丨与Web开发不同(三):Native能力及原生GUI.mp4 [102.2 MB]
- 19丨傀儡端实现(三):基于WebRTC传输视频流(上).mp4 [641.8 MB]
- 20丨傀儡端实现(四):基于WebRTC传输视频流(下).mp4 [272.3 MB]
- 02丨内容综述:学完这门课程你能得到什么?.mp4 [48.4 MB]
- 30丨使用原生能力:如何集成C++能力?.mp4 [465.8 MB]
- 12丨与Web开发不同(四): 释放前端想象力,基于Electron能做什么?.mp4 [136.5 MB]
- 17丨傀儡端实现(一):基于Electron能力捕获桌面视频流.mp4 [341.5 MB]
- 03丨Electron介绍:为什么Electron这么火?【更多精选‖公众号:CunWorkNotes 获取】.mp4 [73.1 MB]
- 05丨桌面端技术选型:如何选择合适的桌面端技术?.mp4 [75.1 MB]
- 14丨设计思路:做远程控制有几步?.mp4 [44.2 MB]
- 13丨实战项目综述:整体需求分析.mp4 [71.6 MB]
- 29丨Electron 质量监控:桌面端的质量抓手是什么?.mp4 [466.6 MB]
- 08丨第一个Electron应用:开发一个简单版的番茄钟(下)【优质资源‖关注:CunWorkNotes 解锁】.mp4 [281.6 MB]
- 23丨指令传输实现:如何建立数据传输?.mp4 [179.2 MB]
- 28丨Electron 应用更新(二):线上项目如何更新?.mp4 [1.2 GB]
- 15丨项目架构与基础业务:Electron 与 React 框架结合.mp4 [647.4 MB]
🎯 学习收获
- 掌握Electron技术
- 开发跨平台桌面应用
- 提升项目实战能力