首页 > 其他分享 >《前端技术架构与工程》之工程思维与服务支撑笔记

《前端技术架构与工程》之工程思维与服务支撑笔记

时间:2022-11-03 21:07:58浏览次数:77  
标签:思维 架构 工程 前端 笔记 测试 支撑


《前端技术架构与工程》之工程思维与服务支撑

前言:

《前端技术架构与工程》这本书真的越看越有味。目前写了部分这本书的笔记,共分为三部分做笔记,已写了三篇如下。

​​《前端技术架构与工程》初次笔记​​

​​《前端技术架构与工程》之编程语言​​

​​《前端技术架构与工程》之性能笔记​​

今天准备写工程服务体系(开发、构建、测试、部署、持续化、监控与统计)

初次笔记让我从架构师的角度认识前端技术栈;编程语言笔记让我对前端三大件有了新的理解;性能笔记让我对网络知识和性能优化有了一个初步概念,对于进一步提高有了方向。

今天写的是工程服务体系从工程思维、开发支撑、测试支撑、运维支撑四个部分讲解。

我的笔记只是二手资料,详情请自行找资源。

文章目录

  • ​​《前端技术架构与工程》之工程思维与服务支撑​​
  • ​​前言:​​
  • ​​工程思维与服务支撑​​
  • ​​工程思维​​
  • ​​开发支撑​​
  • ​​脚手架​​
  • ​​构建​​
  • ​​dev server​​
  • ​​源码管理​​
  • ​​测试支撑​​
  • ​​运维支撑​​
  • ​​总结​​

工程思维与服务支撑

工程化让生产更规范和高效。

工程思维

能力是一个比较宽泛的概念,知识储备、思维方式、执行力均是决定一个人能力强弱的关键因素,也可以把这些因素通常为能力。除了执行力不能量化,知识储备是一切的基石。不过知识是静态的,现实中的问题却不断变化的,通过思维可以将知识综合运用来解决复杂的现实问题。

知识分为两类,一类是通用知识,如数据结构、算法、操作系统、计算机组成原理、计算机网络;一类是领域知识,如HTML、CSS、JavaScript、浏览器原理、HTTP等;知识储备是一个学习过程,这期间的思维方式是学习思维。

编程能力分为两类,一类是快速实现业务功能的能力,一类是快速修复问题的能力。体现开发者对已有知识储备的综合运用和发现问题、解决问题的能力。根据功能需求选择合适的技术栈以及熟练使用调试工具快速查找问题。

架构能力指对规模庞大、功能复杂系统的整体把控能力。其中解耦和抽象是工程师架构能力的最大考验。

工程能力是架构的超集,架构能力关注业务,要把业务抽象、解耦、集成,选择技术栈和技术规范等然后开发,工程能力是关注在架构之外的协作和效率,使产品的迭代流程更规范、有序、高效且可控。

开发支撑

开发是迭代周期的核心环节,在第2章到第5章所讨论的内容以及本章讨论的脚手架和构建的内容,均是从架构或工程层面提升开发效率做的一些优化措施。

脚手架

脚手架的作用是使用工具代替人工创建初始文件和代码,根据颗粒度的不同可以创建完整的项目也可以创建一个模块。

样板文件也称为项目模板,封装了基本的业务初始文件和代码,以及与之搭配的工程配置,如构建、测试、部署等。从这个角度理解,脚手架被认为是工程体系的入口。

具体到脚手架的实现可分为两个部分,配置界面和文件创建。配置界面是提供给业务开发者选择和配置样本文件的入口,如命令行或GUI;文件创建的工具只要具备字符串处理和文件I/O能力即可。

构建

构建是一个操作集,包含编译、链接等一系列操作。

编译是构建的子集,编译的作用是将源码转化为运行环境可理解、可运行的代码。如CSS预编译语言、babel等。

模块化规范一方面将各个零散的同步模块进行合并,另一方面给浏览器提供异步加载的功能函数。

单元测试保障代码的可交付性,这是第一道关卡,但是实施成本太高而受益低,目前最优解是CSS in JS。

性能优化的方法有混淆压缩、Tree Shaking。

dev server

dev server是针对前段开发阶段的临时服务器。动态编译和Mock。

源码管理

SVN时代的源码管理只是存储历史版本,基于git的源码管理则具象为分支管理。融合协作、集成、部署和交付。在持续集成和持续交付的体系中,源码管理规范是所有流程得以实施的基石。

目前主流的三种峰值策略分别为GitHub Flow、Gitlab Flow、git flow。每种策略都有其适用的场景。git flow比较注重版本的界限,各分支角色的定位非常明确,较为适合体量大、更新频率低的ToB产品;GitHub Flow最大的优势是有利于持续集成,形式上非常简单,适合针对有完善持续集成体系的团队;Gitlib Flow集两家之长。

测试支撑

自动化测试在软件工程中十分常见,不过绝大多数前端仍依赖于最原始的人工验证,但是测试规范任然需要。测试模型有单元测试、集成测试、端到端测试、手动验收测试。依赖注入是用于测试案例作用域隔离的一种通用手段。前后端集成测试。

运维支撑

目前大多数公司对产品的发布有严格的阀门,把控这道门的便是运维团队。运维人员最重要的工作是保障生产环境的稳定性和安全性。一键部署。日志埋点。性能监控。

总结

重点在前两章,后两章测试支撑和运维支撑只需要了解即可,把精力放在工程思维和开发支撑部分。

更新地址:​​GitHub​



标签:思维,架构,工程,前端,笔记,测试,支撑
From: https://blog.51cto.com/u_15847108/5821088

相关文章

  • thinkpad笔记本电脑更换固态硬盘
    如果笔记本还是普通硬盘的话,运行速度会很慢。更换固态硬盘后速度会提高不少。1、购买适配自己电脑的固态硬盘,核对使用的接口,笔记本为E450,硬盘的接口为SATA3,所以要选择相应......
  • 第七课笔记
    sqrt()平方根函数使用需要引用<math,h>数学库函数c语言中的%-2d是printf()函数的输出格式中的%abf.表示将数字按宽度为2,采用左对齐,正号为右对齐输出,若数据不足2位,则补空格。go......
  • 计算机组成原理存储系统的简单笔记(思维导图)
    计算机组成原理存储系统的简单笔记(思维导图)前言今天写了一些数据结构的笔记,于是决定顺便把计算机组成原理的存储器部分回顾一下。因为在数据结构的第二部分线性表的顺序结构......
  • SYSU-SSE 3D游戏编程与设计 学习笔记(3)--游戏对象与图形基础
    前言中山大学软件工程学院3D游戏编程与设计课程学习记录博客游戏代码:游戏代码基本操作演练在AssetStore上下载一个天空盒资源并在PackageManager导入在......
  • 11.3 论文学习笔记
      这周看了一篇论文,该篇论文发自2022的coling,论文的题目为:ArgLegalSumm:ImprovingAbstractiveSummarizationofLegal DocumentswithArgumentMining,即利用论点......
  • 【深入浅出 Yarn 架构与实现】1-1 设计理念与基本架构
    一、Yarn产生的背景Hadoop2之前是由HDFS和MR组成的,HDFS负责存储,MR负责计算。一)MRv1的问题耦合度高:MR中的jobTracker同时负责资源管理和作业控制两个功能,......
  • arm架构安装Docker
    #查看Linux内核版本uname-r4.18.0-80.7.2.el7.aarch64#或者使用uname-a#下载docker安装脚本curl-fsSLget.docker.com-oget-docker.sh#执行脚本安装docker,......
  • 【单片机/嵌入式】【梁山派】学习日志02:工程模板创建
    工程模板创建一、新建工程目录1.1包含文件(1)Project:存放工程文件,编译文件等。(2)Firmware:存放ARM内核文件,标准外设库文件等。(3)Hardware:存放开发板的硬件驱动文件。(4)App......
  • 毕业设计学习锋迷商城的的笔记(手写后台商品管理,分类管理,用户,地址管理系统)
    @目录自己添加的后端管理页面视频演示效果论文地址后台代码视频实现讲解思路1.商品管理2.商品分类管理3.商品地址管理4.用户中心管理4.用户权限管理5.订单管理5.16.商品......
  • Java 语音基础知识点 笔记
    Java语音基础知识点笔记(1)什么是变量?变量分为哪几类?String是最基本的数据类型吗?char型变量中能不能储存一个中文汉字?为什么?赋值语句“floatf=3.4;"是否正确?(2)Java中有没......