Redbattle
踩坑
环境
项目
配置
知识点
踩坑
环境
项目
配置
知识点
  • 浏览器/网络
  • HTML
  • CSS
  • JS
  • Vue
  • ES6
  • TS
  • 格式化上下文
  • 工程化
    • 常用 Web 坐标转换
    • 算法
    • 安全性
    • CSS 选择器
    • CSS 函数
    • CSS 属性
    • CSS @
    • CSS 过渡与动画
    • CSS 预处理器
    • knowledge
    2022-01-21

    工程化

    # Webpack

    • 模块打包工具,可以管理模块依赖,并能编译出模块需要的静态资源文件
    • 可以很好的管理打包 web 需要的 html、css、js、image、font 等,让开发过程更高效
    • 对不同类型的资源有对应的模块加载器
    • 打包器会分析模块间的依赖关系生成优化且合并后的静态资源
    • 构建优化
      • 减少编译体积,IgnorePlugin,babel-plugin-import,babel-plugin-transform-runtime
      • 并行编译,happypack,thread-loader,uglifyjsWebpackPlugin
      • 缓存,cache-loader,hard-source-webpack-plugin,babel-loader
      • 预编译,dllWebpackPlugin,DllReferencePlugin,auto-dll-webpack-plugin
    • 性能优化
      • 减少编译体积,Tree-shaking,scope hositing
      • hash 缓存,webpack-md5-plugin
      • 拆包,splitChunksPlugin,import,require.ensure

    # 异步编程

    • 回调函数
      • 优点:简单容易理解
      • 缺点:不利于维护,代码耦合高
    • 事件监听(采用事件驱动模式,取决于事件是否发生)
      • 优点:容易理解,可以绑定多个事件,每个事件可以绑定多个回调函数
      • 缺点:事件驱动型,流程不够清晰
    • 观察者模式(发布订阅)
      • 类似于事件监听,但是可以通过消息监听可以了解现在有多少个订阅者和发布者
      • promise 对象
        • 优点:可以用 then 方法链式调用,可以书写错误时的回调函数
        • 缺点:编写和理解比较难
      • Generator 函数
        • 优点:函数体内的数据交换、错误处理机制
        • 缺点:流程管理不方便
      • async 函数
        • 优点:内置执行器,更好的语义,更广的适用性,返回的是 promise,结构清晰
        • 缺点:错误处理机制

    # 函数式编程

    # 脚手架工具

    # 自动化构建

    # 自动化测试

    # 自动化部署

    # 开发规范

    # 重构

    # MVC 和 MVVM 的区别

    • MVC 单向数据绑定,需要手动绑定事件来影响数据
    • MVVM 双向数据绑定
    • MVC 比 MVVM 少了视图改变影响数据
    • MVC
      • View 接受用户交互请求
      • View 将请求转交给 Controller 处理
      • Controller 操作 Model 进行数据更新保存
      • 数据更新保存之后,Model 会通知 View 更新
      • View 更新变化数据使用户得到反馈
    • MVVM
      • Model,Model 代表数据模型,也可以在 Model 中定义数据修改和操作的业务逻辑
      • View,View 代表 UI 组件,它负责将数据模型转化为 UI 展现出来
      • ViewModel,ViewModel 监听模型数据的改变和控制视图行为、处理用户交互,简单理解就是一个同步 View 和 Model 的对象,连接 Model 和 View

    # 设计模式

    • 观察者模式/发布订阅,
    • 工厂模式,解决重复实例化,可以消除对象间的耦合
    • 构造函数模式,既解决了重复实例化的问题,又解决了对象识别的问题,直接将方法和属性赋值给对象
    最近更新
    01
    烧虾球
    05-13
    02
    二次开发
    12-20
    03
    文字展开收起
    10-17
    更多文章>
    Theme by Vdoing
    • 跟随系统
    • 浅色模式
    • 深色模式
    • 阅读模式