Skip to content

cccttt10/creativity-center

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

23 Commits
 
 
 
 

Repository files navigation

前端创意中心

Chuntong Gao's logo

免费试听课录播

课程概要

long

上课时间

课次 温哥华时间 北京时间 内容简介
免费试听课 8.1 6PM - 10PM 8.2 9AM - 1PM - 软件工程是什么
- 为什么学前端
- 环境配置
- 3个 projects 效果预览
- Git 版本控制
- HTML/CSS 入门
- JavaScript/Typescript 入门
- Bonus project: MVC Todo List
- 代码风格/最佳实践
基础课1 8.15 6PM - 10PM 8.16 9AM - 1PM - HTML/CSS/JavaScript 进阶
- 继续 MVC Todo List: 完成 JavaScript
- Project 1: Adidas 商品展示页
- MVC Todo List: 加入 TypeScript
office hour 8.22 6PM - 8PM 8.23 9AM - 11AM - 一对一答疑
- 前两节课知识点巩固
基础课2 8.29 6PM - 10PM 8.30 9AM - 1PM - Project 2: 星球大战商品展示页
- React 入门
- Bonus Project: React TypeScript Todo List
- 工具链:包管理/编译/构建/持续集成
- Project 3.0: 搭建环境+基础架构
进阶课1 9.12 6PM - 10PM 9.13 9AM - 1PM - React 进阶(包含 hooks)
- Project 3.0: 公共组件+工具函数
- Project 3.1: macOS 桌面+任务栏
- CSS 衍生语言: SCSS
进阶课2 10.3 6PM - 10PM 10.4 9AM - 1PM - React 进阶(2020/2021 新特性)
- Project 3.2: macOS 计算器
- 模块化编程
进阶课3 10.17 6PM - 10PM 10.18 9AM - 1PM - 浏览器高级特性: Canvas 和事件监听
- Project 3.3: macOS 画板
结课仪式 10.24 6PM - 8PM 10.25 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

基础课1

  • 根据试听课录播,完成 MVC Todo List 的 HTML / CSS 部分。代码 push 到自己 fork 的 GitHub 仓库。
    • HTML代码:请理解每个 HTML tag 的作用,理解 attribute 的 作用,理解 class 和 id 的区别。
    • CSS 代码:试听课现场写的部分,大致明白就行。剩下没有现场写的部分,请大概浏览一遍,如遇到不明白/好奇的地方,请 Google 相关的 CSS 知识,MDN 和 W3Schools 都是比较好的 CSS 资料,可在搜索关键词后加上 MDN 或者 W3Schools。CSS 不必太纠结细节,查了资料不能立刻看懂的,暂时先不管。
    • 如需对照答案,可以 clone MVC Todo List 的代码仓库,通过git checkout vanilla-js-solution命令查看答案代码。master分支上是初始代码。
  • 复习 git 相关操作,可参考我的教程
  • 回顾 Model-View-Controller 概念,阅读script.js文件中的所有 comments 和 method signatures,理解 event listener 的概念。
  • 请在 GitHub Issue 上,创建一个新 issue。issue 包含以下信息:
    • 你的 GitHub URL
    • 3个 HTML 问题(最好和试听课内容相关)
    • 3个 CSS 问题(最好和试听课内容相关)
    • 3个 JavaScript 问题(最好和试听课内容相关)

基础课2

  • 完成 MVC Todo List,把代码 push 到自己的 GitHub 上,并以 GitHub Pages 的形式发布。
  • 完成 Adidas 商品展示页,把代码 push 到自己的 GitHub 上,并以 GitHub Pages 的形式发布。注意,我课上做这个项目的时候,是在 CodePen 上做的,所以不需要在 HTML 里引入 CSS 和 JavaScript,但是如果在本地开发的话,需要引入,而且需要完成写出 HTML 的 head tag。具体参考基础课1视频的最后部分。
  • 两个项目的代码,不一定要和我一摸一样。最好能做出一些和我不一样的东西,小到更换颜色和样式,大到增加新的功能,希望大家能发挥自己的创意,做一些不一样的东西。
  • 请在 GitHub Issue 上,创建一个新 issue。issue 包含以下信息:
    • 你的 MVC Todo List 的 URL
    • 你的 Adidas 商品展示页的 URL
    • 浏览React 官方文档的 Main Concepts 部分。issue 里回答以下这些问题:React 和我们之前学的 HTML/CSS/JavaScript 是什么关系,有哪些异同?我们为什么要学 React?React 哪里比较难以理解?
  • 下载 Node.js 和 npm(选择 LTS 下面的 Windows Installer 或 macOS Installer)
  • 下载完 npm 之后,通过npm install -g npx命令下载 npx。如果该命令因权限问题执行失败,请输入sudo npm install -g npx,然后会让你输入计算机密码。

进阶课1

无额外作业,但请尽快观看基础课2的视频。尽量留出观看两遍的时间,知识点较多,一遍可能不够。有任何问题,请随时问我。进阶课1及以后的内容将会基于基础课2。

FAQ

  • 课程有录播吗?

有录播。但是建议参加直播,直播有互动,如果有问题,可以得到实时反馈、帮助。如果时间实在排不开,可以观看录播,但是观看录播时,一定要和我一起动手写代码,有问题及时问我,把录播当成直播一样学习。

  • 跟其他类似课程相比,我的课程有什么特性/优势吗?

首先,我的课不是传统意义上的“听老师讲课”,我的课非常强调“一起动手做”。在上课的过程中,我会让大家和我一起写代码,大家的动手编程能力会得到极大提升,同时也能收获到属于自己的编程项目。

其次,跟其他常见的 project 课相比,我的 project 都是精心挑选、设计的,不仅能让大家学习前端常见的编程理念,而且也能感受到编程的乐趣。尤其是 project 3,会在浏览器里模拟一个 macOS 操作系统,可以说是绝无仅有的镇店之宝,不管是写在简历上,还是面试中谈到,都会让人惊叹。

然后,同学们得到的帮助和服务,远不仅仅上课的几十个小时。课后做拓展作业时,如有不理解的地方,我会随时为大家解惑。我还会为大家的代码提供 code review,确保大家代码质量,模拟公司中工作的场景。

甚至完成课程后,如果需要根据 project 撰写简历或者准备面试,我也会尽可能提供帮助,为大家提供职业上的建议。我现在在 Citi 花旗 工作,公司每年十月份会招聘实习生和应届生,我可以为大家提供内推。其他公司的内推也可以,我的朋友/同事遍布于各大知名公司。

  • 我没有任何编程经验,我能跟上课程的节奏吗?

能。我的课程适用于零基础、入门级、中级选手,任何背景的人,都能从我的课中,学到自己需要的东西。对于零基础或者入门级选手,我的课会带你进入编程世界,让你不再迷茫;对于中级选手,我的课会让你对软件工程有更深的理解,逐渐成长为一名优秀的工程师。有基础的选手,请着重看下一个问题。

  • 我以前有过前端编程经验,对 HTML/CSS/JavaScript 比较熟悉,请问可以跳过基础课,直接上进阶课吗?

可以,但是大多数情况下不建议。

  1. 是真的比较熟悉(比如在大公司做过前端工程师),还是仅仅是用过?如果是后者,建议不要跳过基础课。后面的进阶课,和前面的基础课是环环相扣的,需要非常扎实的 HTML/CSS/JavaScript 基础。而且基础课讲解的,远不仅仅是 HTML/CSS/JavaScript,也会介绍 TypeScript、优秀的编程习惯和前端完整工具链。这些全都是进阶课的基础。
  2. 免费试听课,算是基础课的前奏,大家可以来试听。试听课和基础课上,我会讲一些看似很简单,但实际上没那么简单的东西,哪怕对于接触过前端的同学,也会非常有帮助。比如,我在试听课上,会讲如何用 JavaScript 做一个 todo list。在 UBC 上过 CPSC210 的同学基本都做过类似的project,但是做出来不等于做得好,仅仅实现功能,对于一个优秀的工程师来说是远远不够的。大家以前做的 todo list,真的严格执行模块化编程了吗?真的严格遵循“高内聚、低耦合”了吗?可拓展性如何,是否能快速加入新功能?代码的可读性、可维护性如何?能否让第一次接触项目的人快速理解? 是否有代码风格和最佳实践的检测?是否考虑到了团队合作中的代码规范问题?这些问题,我在试听课和基础课上,都会反复强调。所以,哪怕是接触过前端的同学,我也强烈建议不要跳过基础部分。
  • 每个人的 Project 一样吗?

Yes and no. 以“Project 3: 复刻 macOS“为例,每个同学都会尝试复刻 macOS。我会在课上演示基础功能的代码,并在写代码的过程中,穿插讲解相关知识点。每节课快结束的时候,我会给大家一些 ideas/inspirations,让大家课后自己写一些额外的 features,这部分额外的东西,大家是自由发挥的,所以每个人都不一样。额外 features 部分,我也会为大家提供指导和帮助。

参考代码

About

No description, website, or topics provided.

Resources

Stars

6 stars

Watchers

1 watching

Forks

Releases

No releases published

Packages

 
 
 

Contributors