020-29815005
预约专线时间:09:00-23:59

大前端工程化

新闻来源:本站 日期:2021-07-06
大型前台作业化的核心是工程设计,目前的工程诉求已不仅仅局限于前端,而是覆盖更广阔的前台。工程技术的产生是基于企业/团队对研发效率的要求,如何在产品研发过程中尽可能地利用工具解除对人力的占用是工程研发的核心目标。
    由建立一套完善的规格说明开始,到IDE的辅助工具,研究开发的mock/调试/联调,自动化测试,CI/CD,最后的业务线运维监控,涵盖产品上线的所有流程,这就是工程化产品上线的全部过程。

    对项目进行多团队合作解决。

    如此大的前端工程,就是基于大的前端技术做工程的研发。从广义上讲,不只是端的工程能力,当工程能力基于云的体系构建时,能够满足端、后台所有栈的研发需求。从狭义上讲,核心满足端的工程诉求(前端、终端),尤其是解决多人合作中本地端工程能力与云端工程能力的同步问题,保证所有研发人员在同一套研发系统中,避免不对称造成的各种团队合作问题。

    与此同时,做好工程也能带来许多好处。

    第一,可以避免团队项目交接、人员交接等各方面的沟通成本,学习成本。研究与开发模式、代码风格、工具使用都在同一个维度上,团队的CR更容易。

    第二,有了工程化系统,对于刚加入团队的新员工,可以较少的成本熟悉业务,更快地融入团队,减少不必要的熟悉、等待时间,这也是目前许多团队亟需解决的难题。


UI设计


    大型前端工程探索。

    以涵盖研发过程的各个环节为主,核心就是前面提到的提高研发效率。具体地说,研发规范是最基础的,因此团队也是花费大量的精力建立并不断完善团队研发规范,以保证后续工程建设有据可依,团队也有共同的目标和理念。

    在规范的基础上,下一步就是要根据规范来实现自己的研发工具,最关键的是在IDE基础上建立基于IDE的工程工具,这样在开发过程中把问题发现前置到编写代码过程(而不是CI/CD),就能尽早解决问题。在这个过程中,除了Lint的底层,更重要的是团队开发的通用工具、模板支架、团队组件系统、自动化监控功能、MockServer、联调/代理、自动化测试系统、A/BTest、统一代理层、全链路监控等等。

    举例来说,对于团队通用工具,每一个团队都有其自身固有的内部/外部工具,这些工具在工程开发和开发过程中需要将这些分散的工具统一组织、封装、开放插件体系、支持工具扩展等功能,所有工具均处于一个研发系统中,可大大降低学习、使用成本。