前端进阶相关

个人整理内容,仅供参考。

  • 安全:XSS CSRF 中间人攻击 http-only csp 转译用户输入 same-site:lax
  • 协议:HTTP/HTTPS Websocket TCP/IP UDP
  • 加密:base64编码、md5、RSA、SHA256(对称加密、非对称加密)
  • 网络: HTTP/0.X 1.X 2 长连接 管道 Keep-Alive 一个tcp连接可以发起多个http请求 队头阻塞 多路复用 Hpack算法
  • 缓存:强缓存协商缓存 Cache-control:max-age Expires Last-Modified If-Not-Modified-Since Etag If-None-Match Cookie/LocalStorage/SessionStorage
  • DNS:输入URL到页面展示经过的步骤 本地DNS缓存 本地DNS服务器 根服务器 顶级域名服务器
  • 内核JS引擎线程/定时触发器线程/http以部请求线程/GUI渲染线程: 页面渲染流程 重绘 回流 如何提升页面性能(debounce、throttle、按需加载、懒加载、首屏优化、SSR)
  • CSS基础:flex/BFC/预处理语言 布局 动画
  • JS基础: 原型/原型链 构造 继承 this指向 作用域 上下文 变量提升 闭包 es6相关 函数式编程(pure function、 functor、curryeffect)
  • 工程化:webpack配置 treeshaking pluign/loader差别 Mock服务原理 跨域解决方案(本地代理与Nginx反向代理) hash/history路由异同
  • NPM相关:

    1. 版本号语义化
    2. 主版号.次版号.修订号( x.y.z )
    3. 主版号:当你做了不相容的 API 修改,
    4. 次版号:当你做了向下相容的功能性新增,
    5. 修订号:当你做了向下相容的问题修正。
  • 测试:单元测试、e2e测试(Mocha、Chai、puppeteer)
  • 大前端:node(express、koa2、eggjs)、redis、mongodb(非关系型数据库)、mysql(关系型数据库)、docker、k8s、中间层(graphQL)、自动化工具(jenkins+hooks CI/CD)、基础建设系统(监控平台、发布系统、性能分析如利用lighthouse及一系列页面性能指标)、埋点、low-code、webIDE、微前端
  • 算法基础:队列/栈/链表/树(二叉树、二叉搜索树)/图 排序(冒泡、快排、计数排序、堆排序) 原地哈希 双指针 滑窗算法 递归 迭代 背包 动态规划 二分查找 DFS BFS 最短路径 剪枝 贪心
  • 模块化:CMD、AMD、CommonJS、ES6模块化
  • 组件库:如何设计一个组件库、storybook、文档生成
  • 框架基础:Vue/React源码 diff算法 组件通信 路由原理 状态管理(redux/vuex/dva/mobx)新特性(react-hooks、composition-api)
  • 设计模式:观察者 工厂 发布-订阅 建造者 策略 原型模式
  • 架构:RBAC(Role-Based Access Control )基于角色的访问控制RBAC0~3、管理后台类项目设计、技术栈选型的原则
  • 跨平台:Taro、各类小程序平台(一套代码多处使用、抽象层、不同平台编译器、v-dom本质作用)、dart、mpaas(原生开发、热部署、热修复)
  • 跨领域:计算机图形学(Canvas、WebGL、Threejs、数据可视化、VR/AR)、机器学习(tenserflow)

前端涵盖的东西越来越多,需要接触了解的只是也越来越不局限于以往理解的前端工作内容了。

tag(s): 前端
show comments · back · home
Edit with markdown