zoukankan      html  css  js  c++  java
  • 前端集成方案——理论(一)

    集成方案在项目中的地位?
     
    书面解释
    前端集成方案指的是将前端开发领域中所有的技术元素集中到一起,对常见问题提供一套解决方案。
     
    为什么要有集成方案?
    前端达到一定规模后,一些孤立的技术元素(模块化、打包、部署、压缩合并、组件管理...)就成为束缚了研发人员的瓶颈。
     
    好,接下来我们以研发流程为主线, 来探讨集成方案究竟应该包含哪些,需要哪些。
     

    首先,你需要建个工程,工程在前端就是目录结构

      

      包划分讲究得是以什么为核心,为什么这么划分。至于命名,尽量遵守通用的命名。

    其次,编码阶段

      写法要统一,你一个JS类太大了,要拆分成几个类,几个文件,他们之间要依赖吧。这叫写法规范和依赖管理。这两者合起来叫模块化。

    类型 代表框架 优点 缺点 目的 原理
    AMD RequireJS  依赖不需要字面解析
    和NodeJS遵循的规范不一致 统一写法
    按需加载依赖的JS
    通过关键字define强制你按模块化的规范写;
    加载依赖<script src>标签+load事件
    CMD SeaJS 和NodeJS遵循的规范相同 不能直接压缩,需屏蔽require字符等
    依赖需通过toString静态分析


    推荐大家使用SeaJS,因为它的源码中文注释,书籍github一大堆。非常容易看懂。像我这种有英文障碍的就很高兴。而且它是国人开发的,具体谁我就不说了,反正你们都知道。   

    接下来,编得差不多了,需要编译打包

    gzip压缩是配置apache的http.conf文件,响应头Content-Encoding:gzip

    图片不进行gzip压缩,是压缩后不一定不小,甚至会稍微变大。

    我想问个问题,模块化有前端框架,压缩合并有没有。没有!为什么呢?前端语言读文件有安全限制,你没法主动去访问、读取文件。需要后台语言,通过IO流去读它,过滤它的空格,回车符,按规则替换它的变量名,这就是压缩。同样的合并,通过IO流写到一个文件里。

      

    编译打包完了,做做通用的性能优化

      

    CDN服务器配的,cache-controller、304等也是配的。至于HTML5 的web存储不兼容IE,且它最适合的是离线程序。我们主要关注的就是压缩合并。

    然后,测试

     


    最后,发生产

       发生产有覆盖式发布和非覆盖式发布两种
     
     
    整个研发流程过完了。我列出来前端研发过程中,除应用框架以外的技术元素。
    这些元素放到一起集中处理的方案就叫前端集成方案。点这。
     
     
  • 相关阅读:
    算法训练 P1103
    算法训练 表达式计算
    算法训练 表达式计算
    基础练习 时间转换
    基础练习 字符串对比
    Codeforces 527D Clique Problem
    Codeforces 527C Glass Carving
    Codeforces 527B Error Correct System
    Codeforces 527A Glass Carving
    Topcoder SRM 655 DIV1 250 CountryGroupHard
  • 原文地址:https://www.cnblogs.com/mominger/p/4077986.html
Copyright © 2011-2022 走看看