课次 | 温哥华时间 | 北京时间 | 内容简介 |
---|---|---|---|
免费试听课 | 8.1 6PM - 10PM | 8.2 9AM - 1PM | - 软件工程是什么 - 为什么学前端 - 环境配置 - 3个 projects 效果预览 - Git 版本控制 - HTML/CSS 入门 - JavaScript/Typescript 入门 - Bonus project: MVC Todo List - 代码风格/最佳实践 |
基础课1 | 8.8 6PM - 10PM | 8.9 9AM - 1PM | - HTML/CSS/JavaScript 进阶 - Project 1: Adidas 商品展示页 - Project 2: 星球大战商品展示页 |
基础课2 | 8.15 6PM - 10PM | 8.16 9AM - 1PM | - React 入门 - Bonus project: React Todo List - TypeScript 进阶 - 工具链:包管理/编译/构建/持续集成 - Bonus Project: React TypeScript Todo List - Project 3.0: 搭建环境+基础架构 |
进阶课1 | 8.22 6PM - 10PM | 8.23 9AM - 1PM | - React 进阶(包含 hooks) - Project 3.0: 公共组件+工具函数 - Project 3.1: macOS 桌面+任务栏 - CSS 衍生语言: SCSS |
进阶课2 | 8.29 6PM - 10PM | 8.30 9AM - 1PM | - React 进阶(2020/2021 新特性) - Project 3.2: macOS 计算器 - 模块化编程 |
进阶课3 | 9.5 6PM - 10PM | 9.6 9AM - 1PM | - 浏览器高级特性: Canvas 和事件监听 - Project 3.3: macOS 画板 |
总课仪式 | 9.12 6PM - 8PM | 9.13 9AM - 11AM | - 持续学习: 后端/算法/数据结构/前端其他框架 - 如何把 project 运用到简历/面试中 - 优秀作品展示 |
-
请按照顺序完成课前准备,如有疑问,请尽量在课前问我。
-
知道如何打开 Terminal
-
注册 GitHub 账号
-
下载 Chrome 浏览器
-
下载 Git
-
Windows 用户:下载 Git Bash
-
下载 VS Code
-
下载 Node.js 和 npm(选择 LTS 下面的 Windows Installer 或 macOS Installer)
-
下载以下 VS Code 插件(如何下载插件)
-
实在不会下载也没事,上课会讲。划线插件是必备插件,建议课前下载好。
-
Auto Close Tag
-
Auto Rename Tag
-
Bracket Pair Colorizer
-
Color Highlighter
-
EditorConfig for VS Code
-
ESLint
-
Highlight Matching Tag
-
HTML Boilerplate
-
HTML CSS Support
-
Image Preview
-
IntelliSense for CSS class names in HTML
-
Live Server
-
Material Icon Theme
-
npm
-
npm Intellisense
-
Path
-
Prettier - Code formatter
-
Prettier Now
-
- 课程有录播吗?
有录播。但是建议参加直播,直播有互动,如果有问题,可以得到实时反馈、帮助。如果时间实在排不开,可以观看录播,但是观看录播时,一定要和我一起动手写代码,有问题及时问我,把录播当成直播一样学习。
- 跟其他类似课程相比,我的课程有什么特性/优势吗?
首先,我的课不是传统意义上的“听老师讲课”,我的课非常强调“一起动手做”。在上课的过程中,我会让大家和我一起写代码,大家的动手编程能力会得到极大提升,同时也能收获到属于自己的编程项目。
其次,跟其他常见的 project 课相比,我的 project 都是精心挑选、设计的,不仅能让大家学习前端常见的编程理念,而且也能感受到编程的乐趣。尤其是 project 3,会在浏览器里模拟一个 macOS 操作系统,可以说是绝无仅有的镇店之宝,不管是写在简历上,还是面试中谈到,都会让人惊叹。
然后,同学们得到的帮助和服务,远不仅仅上课的几十个小时。课后做拓展作业时,如有不理解的地方,我会随时为大家解惑。我还会为大家的代码提供 code review,确保大家代码质量,模拟公司中工作的场景。
甚至完成课程后,如果需要根据 project 撰写简历或者准备面试,我也会尽可能提供帮助,为大家提供职业上的建议。我现在在 Citi 花旗 工作,公司每年十月份会招聘实习生和应届生,我可以为大家提供内推。其他公司的内推也可以,我的朋友/同事遍布于各大知名公司。
- 我没有任何编程经验,我能跟上课程的节奏吗?
能。我的课程适用于零基础、入门级、中级选手,任何背景的人,都能从我的课中,学到自己需要的东西。对于零基础或者入门级选手,我的课会带你进入编程世界,让你不再迷茫;对于中级选手,我的课会让你对软件工程有更深的理解,逐渐成长为一名优秀的工程师。有基础的选手,请着重看下一个问题。
- 我以前有过前端编程经验,对 HTML/CSS/JavaScript 比较熟悉,请问可以跳过基础课,直接上进阶课吗?
可以,但是大多数情况下不建议。
- 是真的比较熟悉(比如在大公司做过前端工程师),还是仅仅是用过?如果是后者,建议不要跳过基础课。后面的进阶课,和前面的基础课是环环相扣的,需要非常扎实的 HTML/CSS/JavaScript 基础。而且基础课讲解的,远不仅仅是 HTML/CSS/JavaScript,也会介绍 TypeScript、优秀的编程习惯和前端完整工具链。这些全都是进阶课的基础。
- 免费试听课,算是基础课的前奏,大家可以来试听。试听课和基础课上,我会讲一些看似很简单,但实际上没那么简单的东西,哪怕对于接触过前端的同学,也会非常有帮助。比如,我在试听课上,会讲如何用 JavaScript 做一个 todo list。在 UBC 上过 CPSC210 的同学基本都做过类似的project,但是做出来不等于做得好,仅仅实现功能,对于一个优秀的工程师来说是远远不够的。大家以前做的 todo list,真的严格执行模块化编程了吗?真的严格遵循“高内聚、低耦合”了吗?可拓展性如何,是否能快速加入新功能?代码的可读性、可维护性如何?能否让第一次接触项目的人快速理解? 是否有代码风格和最佳实践的检测?是否考虑到了团队合作中的代码规范问题?这些问题,我在试听课和基础课上,都会反复强调。所以,哪怕是接触过前端的同学,我也强烈建议不要跳过基础部分。
- 每个人的 Project 一样吗?
Yes and no. 以“Project 3: 复刻 macOS“为例,每个同学都会尝试复刻 macOS。我会在课上演示基础功能的代码,并在写代码的过程中,穿插讲解相关知识点。每节课快结束的时候,我会给大家一些 ideas/inspirations,让大家课后自己写一些额外的 features,这部分额外的东西,大家是自由发挥的,所以每个人都不一样。额外 features 部分,我也会为大家提供指导和帮助。