Code Monkey home page Code Monkey logo

2018.6's People

Contributors

loskael avatar zhulin2609 avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

2018.6's Issues

第十一节课预习

本节课的主要内容是React 基础、原理React 数据流两部分

React or Vue

这一部分不用全部看完,挑自己感兴趣的。

  1. JavaScript Frameworks by the Numbers — Winter 2018
  2. Vue和React大比拼,你pick谁?
  3. 现代 js 框架存在的根本原因 - 众成翻译
  4. 框架选型 - 小火柴的蓝色理想 - 博客园
  5. JavaScripting.com - The Database of JavaScript Libraries: 一个帮助框架选型的网站,可以查看各个框架的生态

React 基础、原理

1-6的reactjs官方文档重点阅读,后面的选读。

  1. Introducing JSX - React
  2. Rendering Elements - React
  3. Components and Props - React
  4. State and Lifecycle - React
  5. Handling Events - React
  6. Conditional Rendering - React
  7. 译 图解 React
  8. React.js 的介绍 - 针对了解 jQuery 的工程师(译) - 杂七杂八的感想 - SegmentFault 思否
  9. 深入浅出React(一):React的设计哲学 - 简单之美
  10. 前端已不止于前端-ReactJs初体验 · Issue #21 · kuitos/kuitos.github.io · GitHub

React 数据流

  1. React 实践心得:react-redux 之 connect 方法详解 | Taobao FED | 淘宝前端团队
  2. Redux Tutorial: Learn Redux from Dan Abramov on egghead
  3. Redux状态管理之痛点、分析与改良 - kpaxqin - SegmentFault 思否
  4. 图解 Flux

练习

  1. https://github.com/FE-star/exercise13【文坚注:这个作业感觉给错了,不建议大家看】
  2. https://github.com/FE-star/react-pattern 这个选看,我会主要讲解redux的应用

扩展阅读

  1. 现代 js 框架存在的根本原因 - 众成翻译
  2. React 路由状态管理总结
  3. Rematch: 重新设计 Redux
  4. Redux从设计到源码
  5. React 状态管理库: Mobx - 前端学习之路 - SegmentFault 思否
  6. react+redux渲染性能优化原理 – 积木村の研究所

一次还没开始就结束的面试分享

上周五有位大厂的大神向我要简历,心想着就体验一把吧,没想到面试下来不到10min就结束了,不过还是有收获。

面试过程

1、自我介绍

  • 12年开始接触前端,传统
  • 毕业1年左右
  • 中间接触过一些项目,但用的不深

2、引申如何学习前端知识?

  • 基础 和 业务
  • 基础学习,着重记录和总结
  • 框架,视频 + 文档

3、webpack模块懒加载原理?

一脸懵...完全没答上来

4、介绍一下React?

组件、虚拟DOM、JSX => 评价说理解比较片面

5、挂……

感受

其实问我的两个问题我毫无招架之力,本来以为会从基础入手的,哈哈哈。问的都是现代前端的原理。

补充

我抓紧问:传统前端和当今大前端的学习?

原问题介绍是这样的,我认为自己传统前端的基础其实也还很薄弱,很多东西虽然掌握了,但是老感觉自己没学到位。再加上现代大前端的趋势,模块化、工程化等等,感觉学起来更是懵,很多高大上的概念。感觉自己啥也不会了,针对这两者的学习,有什么建议吗?

答:建议去看看webpack的源码,里面其实用的都还是那些东西,其实看了源码就能够把传统前端的很多东西串起来。

get.

课前要说些什么

  • 讲讲为什么开这个课
  • 如何达到课程目标?
  • 扩展下现在的面试情况

第一节课预习

第一节课时主要讲课程介绍和Javascript测试,希望大家准备下面一些内容
其中 https://github.com/FE-star 是我们教学项目的 Github 地址

课程还包含一些分享计划,具体参见:
FE-star/long-plan#1

口嗨

总有人问我为什么要学测试,emmmmmmmm~,给你们举个反例吧:
https://www.zhihu.com/question/278016044

第二节课预习

设计模式

事件模型、事件处理机制

事件代理和委托

AJAX & fetch

异步流程控制

callback

Generator + function*

Promise + async/await

RxJS

风之谷分享

7.8(暂定),新一期的助教,第一期学员风之谷给我们分享他的成长之旅。

第八节课预习

前端性能优化(二)

这篇是 Google 出的性能优化的系列文章,大家可以花点时间全部再看一遍,有问题可以在下面回复

执行优化

JIT(Just In Time)
Lazy
  • throttle & debounce
  • setTimeout & requestAnimationFrame
  • lazyload & preload
  • 大列表优化

其他

  • MTU + inline + base64
  • 小图 vs 大图
  • progressive vs baseline
  • webp + webm
  • HTTP/2 ?
  • QUIC ?

面试分享

首先谢谢老师给了这个面试的机会,这场面试确实是一场非常棒的面试,这里我想结合我之前的一些面试做一点小分享。
一、知识覆盖度
一场面试下来,基本会将前端的一些基础知识都覆盖到,JS基础知识比如闭包、作用域、原型,ES6,框架,http,缓存等等,我自己的话会将这些知识点分类,然后用思维导图整理出来,差不多像这样:
image
然后分好大类之后再一点点填充每一类的知识点,复习的时候就可以一点点地过,自己心里也有个框架。
二、知识深度
上面的知识覆盖度这一块我觉得知识考察你知不知道某些知识,如果知道都不知道,更别谈能说得出有什么深度的东西了。
我遇到的面试上对知识深度的考察是这样的,问你一些基础知识的时候深挖这个知识的背后原理,一步一步往深里问直到你答不上来,这样就知道到底你对这个知识点理解程度到哪。就像这次的面试,面试官问,你知道XXX(知识点)吗?我说知道,然后面试官就会问你知道XXX是怎样实现的吗,你自己有实现过吗?继续往下深挖,你知道XXX的使用场景吗?如果不用XXX还可以怎样做?那使用XXX有什么优点,有什么缺点?基本一顿这样下来,对知识理解得不够深的话,都招架不住了(我就是招架不住的人,非常惭愧)
印象最深的是面试官的一句话:任何技术都有优点缺点。这句话对我启发很大,反观自己平时的学习真的是比较浅,一个知识点不仅仅要知道,还要去了解原理,懂得优劣,这样才能知道什么时候使用什么东西,而不是人云亦云。
三、总结
总的来说,不管是应对面试还是为了提高自己,学习某个知识时,还是需要纵横兼顾。纵向是对该知识点背后原理的深挖,横向是对该知识点的类比与拓展,思考该知识点还与哪些知识点有关,还有没有更好的方案等。希望通过这三个月的学习,大家能一起查漏补缺,提升巩固,争取更上一层楼。共勉哈。

第九节课预习

安全 & Node.js(一)

安全

安全是一个非常重要的话题,要了解其攻击的原理和防范的方法,这里推荐两本书给大家,有时间可以先看一下 Web前端黑客技术揭秘白帽子讲Web安全

Node.js 基础

进阶

第十二节课预习

第四节课预习

正则表达式

模块化

扩展知识(非预习内容)

  • 上古大神“张云龙”的一些模块化和工程的思考,虽然有些古老了,但是很多问题是一些通性问题:https://github.com/fouber/blog

课程提问

1、dom标准级别。。帮完善知识点。。

2、ppt 思路

oberser 引出事件。。 固然大多数事件是异步的,之后又引入了异步事件。。 ajax也可概括为大多数常用为异步。。是不是ajax单独拉出来的知识点更合理呢(也就有了下面的第三个问题)。。 也请老师讲一下这个ppt思路吧。。

3、拿ajax模型来讲

像打电话一样。建立一个xhr对象,然后通过一些协议连接请求拨号像opensend呀,之后等待电话的回复。个人觉得像ajax呀、fetch很熟悉,即使某些参数不熟悉在开发中查阅stackoverflow mdn一些参数在和后台人员沟通即可节。一般人都会这么回答本人也是一直了解到这个程度。
&&
但是reqeust 和 服务端的交互这方面的知识呢? 我们是接下来的课程会有这方面的知识还是自己去拓展了解。。?

4、例如的一个知识点基本上都有一个了解的及格程度。。那么如果深入到什么样的程度会是一个及格点呢?拿这个第三点问题reqeust 和 服务端的交互这方面的知识来说呢?

第七节课预习

前端性能优化(一)

这篇是 Google 出的性能优化的系列文章,大家可以花点时间全部看一遍,有问题可以在下面回复

了解常用性能测试工具

这个工具可能你天天都在用,但是很多功能可能你并没有用到,有时间可以系统的了解一下,性能优化很多时候都是需要这个工具帮助你找到性能瓶颈

  • 了解 ySlow 及其 23 条规定 http://yslow.org/
  • 熟悉 PageSpeed
  • 熟悉 Lighthouse

HTTP 缓存相关

有兴趣可以从 rfc7234 这个标准开始,了解相关的规定,另外,就是 rfc2616 已经废弃了

客户端缓存

  • localStorage + sessionStorage
  • App Cache (manifest)
  • Service Worker

练习

1、https://github.com/FE-star/exercise19
2、尝试 PWA,至少写个 demo 玩玩 https://codelabs.developers.google.com/codelabs/your-first-pwapp/

第十节课预习

Node.js(二)

这里有一个系列文章,及源码分析,有时间可以多看看

DEBUG

DEPLOY

可以尝试使用 pm2 和 docker 部署

  • 了解 pm2,并熟悉常用命令
  • [可选] 安装 docker,并熟悉常用命令

APM

日志 & ELK

第三节课预习

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.