where-to-learn-this

where to learn this

react-devtools

react-scripts

State Management Architecture

Mobx

Mobx

Akita

Akita

Flux

Flux

很容易看出共同点来,

  1. 单向的数据流。
  2. single source。
  3. state 只能通过 action(或者叫别的名字)来改变。

why react needs immutability

Why is immutability so important (or needed) in JavaScript?

You Might Not Need Redux

函数式编程(functional programming)

  1. wiki
  2. Master the JavaScript Interview: What is Functional Programming?
  3. 函数式编程初探

什么是函数式编程?

回答这个问题并不是那么容易。

面试

  1. 如何面试程序员?

  2. 面试时,如何向公司提问?

Promise

  1. Promises/A+规范
  2. Implementing

MicroTask

  1. process.nextTick
  2. Promises(这里指浏览器实现的原生 Promise)
  3. Object.observe
  4. MutationObserver

MacroTask

  1. script(整体代码
  2. setTimeout
  3. setInterval
  4. setImmediate
  5. I/O
  6. UI rendering

性能监控,首屏时间

  1. 10 分钟彻底搞懂前端页面性能监控
  2. 如何进行 web 性能监控?
  3. Performance API
  4. 7 天打造前端性能监控系统
  5. 关于首屏时间采集自动化的解决方案
  6. 可交互时间的探索和首屏时间的改进之路
  7. spa 项目如何计算首屏
  8. 如何计算首屏加载时间?
  9. 精确并自动化地获取页面首屏时间

mobx 源码

  1. Becoming fully reactive: an in-depth explanation of MobX
  2. mobx v4

martinfowler articles

cast

在 C++中,把子类的对象当做父类对象看待,就称为”向上造型“ (upcast)。 把父类的对象当做子类来看待,称为 downcast.

注意:向上造型是安全的,向下造型是有风险的。

What is “overhead”?

answer link

It's the resources required to set up an operation. It might seem unrelated, but necessary.

It's like when you need to go somewhere, you might need a car. But, it would be a lot of overhead to get a car to drive down the street, so you might want to walk. However, the overhead would be worth it if you were going across the country.

In computer science, sometimes we use cars to go down the street because we don't have a better way, or it's not worth our time to "learn how to walk".