前端工程化概述(初版)

阅前悉知
本文为《前端工程化》系列的首篇。由于本系列仍在撰写中,故其余文章暂不发布。您可以通过此链接查看其余已经完成文章:前端工程化专栏 (完善中) | Jay 的博客
需要注意的是,尽管部分文章可以查看,但并不代表已经完成,且其中可能存在错误。

“前端工程化”,相信从事前端开发的朋友都或多或少头听过这一名称。当我们想在网上查找资料,深入理解“前端工程化”时,找到的大多数资料都是项目架构配置相关的文章。那“前端工程化”就等于“搭建项目架构”吗?对也不对!搭建项目架构是前端工程化重要且不可避免的一项工作,但前端工程化不仅仅局限于此。想要正在理解“前端工程化”,需要先搞明白“前端工程化”定义,然后通过定义推导出前端工程化需要做哪些事情。

前端工程化的定义

当我以“前端工程化”工程化为关键字进行查找,得到的结果都没法让我比较清晰的理解。要么没有对“前端工程化”这一名词做解释;要么把前端工程化所要做的事情当作释义。

前段时间我看过孟琢老师写的《汉字就是这么来的:字里字外的动物王国》一书,他通过“拆字法”浅显易懂、条理清晰的解析了我们中国汉字的由来以及发展脉络。于是我就想,是不是也可以采用“拆字法”来解析“前端工程化”呢?当然,这里并不是要把这五个汉字进行性拆解,而是对“前端工程化”这一名词进行拆解分析。

接下来开始拆解。

拆字法解析

初看,我们可以很轻易的将“前端工程化”可以拆解成两个独立的词组,即,“前端”、“工程化”。因为我们对“前端”一词的含义是很清晰的,指的就是我们所认知的前端开发领域。所以,无论对错,先这样拆解。接下来,解析两个词组的含义。

"前端"的解析

“前端”,应解释为“前端开发”,是指创建 Web 页面或 APP 等前端界面呈现给用户的过程。

前端开发-百度百科解析

前端开发是创建WEB页面或 APP 等前端界面呈现给用户的过程,通过HTML,CSS 及JavaScript以及衍生出来的各种技术、框架、解决方案,来实现互联网产品的用户界面交互。

“工程化”?好像不太好解析。“工程”大概知道是什么,“工程化”不懂!既然无法理解,那就进一步拆解,将其分为“工程”和“化”两部分。这次我们先来解析“化”字(不要问为什么不先解析“工程”,因为“工程含义太复杂”)。

“化”的解析

“化”字在字典上的解析如下:

基本字义

  • huà
    1. 性质或形态改变:变~。分~。僵~。教(jiào )~。熔~。融~。潜移默~。~干弋为玉帛。。
    2. 佛教、道教徒募集财物:~缘。~斋。
    3. 用在名词或形容词后,表示转变成某种性质或状态:丑~。绿~。
    4. 习俗,风气:有伤风~。
    5. 特指“化学”:~工。~纤。~肥。
  • huā
    • 同“花”。

摘自《化的解释|化的意思|汉典“化”字的基本解释》

上面的释义比较贴切的是:“用在名词或形容词后,表示转变成某种性质或状态:丑~。绿~。”。“工程化”则可以理解为向“工程”转变。

“工程”的解析

先来看字典关于“工程”的解析:

工程的解析

工程是科学和数学的某种应用,通过这一应用,使自然界的物质和能源的特性能够通过各种结构、机器、产品、系统和过程,是以最短的时间和最少的人力、物力做出高效、可靠且对人类有用的东西。将自然科学的理论应用到具体工农业生产部门中形成的各学科的总称。

摘自:《工程的解释|工程的意思|汉典“工程”词语的解释》

通过上面的解析可知,工程的核心是采用各种科学的工具以及手段来快速高效的产出目标产物。

“前端工程化”的含义

现在,我们需要将“前端”、“工程”、“化”三者的含义结合起来理解。

“工程化”=“工程”+“化”,可以理解为:向“采用各种科学的工具以及手段来快速高效的产出目标产物”的工作方式转变。

“前端工程化”=“前端”+“工程化”,可以理解为:创建 Web 页面或 APP 等前端界面呈现给用户的过程,向“采用各种科学的工具以及手段来快速高效的产出目标产物”的工作方式转变。

上面的解释比较生硬,不过大致的意思已经很清晰了。稍加润色:

"前端工程化“的含义

在进行前端开发的工程中,采用科学的理论知识、先进的生产工具、高效的工程管理手段,从而实现以最短的时间和最少的人力、物力产出高效、可靠、可用的互联网产品用户交互界面。

所要作的工作

在讲“前端工程化”的工作前,我们先来回答开篇的问题:“前端工程化”就等于“搭建项目架构”吗?

“前端工程化”的目的是:采用科学的理论知识、先进的生产工具、高效的工程管理手段以最短的时间和最少的人力、物力来完成开发工作。所以这个问题的答案是“前端工程化”不等于“搭建项目架构”。项目架构仅仅是提高开发效率的一个途径。我们还有很多手段方法理论来优化前端开发的过程。

“工程科学”是一门复杂的高度专业化的科学。我并非专业的工程科学家,仅是一名普通的开发者。所以我无法以系统、全面的理论知识来讲述前端工程化需要做哪些工作。仅能凭借自身的开发经验以及网路上搜罗来的知识进行总结梳理需要所哪些工作。

以下是我总结的前端工程化需要做的一些工作:

  • 项目组 SOP 的制定(工作流程)
  • UI 标准化、模块化
  • 统一主题样式的开发
  • 组件库开发
  • 前端项目架构搭建(eslint、webpack 配置、项目目录的组织)
  • 编码规范的制定
  • 版本管理
  • 分支管理
  • 代码审核
  • git 使用规划
  • CICD 脚本
  • 单元测试

关于 SOP 的制定

SOP( Standard Operating Procedure)即标准作业程序。规定了项目开发流程了标准操作步骤。SOP 是工程化的前置条件。工程化是对 SOP 中可以脚本化自动化的工作项的提炼,是 SOP 的补充扩展以及完善。两者密不可分,相辅相成。

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.rhkb.cn/news/496526.html

如若内容造成侵权/违法违规/事实不符,请联系长河编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

使用 HTML5 Canvas 实现动态蜈蚣动画

使用 HTML5 Canvas 实现动态蜈蚣动画 1. 项目概述 我们将通过 HTML 和 JavaScript 创建一个动态蜈蚣。蜈蚣由多个节段组成,每个节段看起来像一个小圆形,并且每个节段上都附带有“脚”。蜈蚣的头部会在画布上随机移动。 完整代码在底部!&…

Unity2021.3.16f1可以正常打开,但是Unity2017.3.0f3却常常打开闪退或者Unity2017编辑器运行起来就闪退掉

遇到问题: 从今年开始,不知道咋回事,电脑上的Unity2017像是变了个人似得,突然特别爱闪退掉,有时候还次次闪退,真是让人无语,一直以来我都怀疑是不是电脑上安装了什么别的软件了,导致…

深度学习中的并行策略概述:2 Data Parallelism

深度学习中的并行策略概述:2 Data Parallelism 数据并行(Data Parallelism)的核心在于将模型的数据处理过程并行化。具体来说,面对大规模数据批次时,将其拆分为较小的子批次,并在多个计算设备上同时进行处…

如何快速找到合适的科学问题

前面已经讲过 如何快速判断学术论文质量与相关性 如何描述科学问题?从“术”入手,悟出属于自己的“道” 医学图像分割任务中的典型科学问题 如何快速肝论文? 博士论文的写作架构 这些内容分别阐述了 如何找到重要的相关论文 找到科学问…

如何为运行在 PICO 4 Ultra 设备上的项目设置外部文件读写权限?

PICO 4 Ultra 系列设备使用的安卓操作系统为 Android 14。当项目的 Write Permission 为 Externa (SDCard) 且 Android API Level 大于 32 时,Unity 提供的外部文件读取方式在 PICO 4 Ultra 设备上将失效。此问题提供两种解决方法,按实际情况选取。 解决…

MacOS安装Xcode(非App Store)

文章目录 访问官网资源页面 访问官网资源页面 直接访问官网的历史版本下载资源页面地址:https://developer.apple.com/download/more/完成APP ID的登陆,直接找到需要的软件下载即可 解压后,安装将xcode.app移动到应用程序文件夹。

OpenLinkSaas使用手册-Git工具

在OpenLinkSaas的工具箱里面,最基础的一个就是Git仓库管理。Git仓库功能让git使用更加简单和强大,不仅可以使用常规的commit/pull/push/branch等功能外,还连接了Git仓库供应商的能力。 OpenLinkSass支持使用国内主流的Git仓库供应商的账号登录…

.NET平台用C#通过字节流动态操作Excel文件

在.NET开发中,通过字节流动态操作Excel文件提供了一种高效且灵活的方式处理数据。这种方法允许开发者直接在内存中创建、修改和保存Excel文档,无需依赖直接的文件储存、读取操作,从而提高了程序的性能和安全性。使用流技术处理Excel不仅简化了…

vue之axios基本使用

文章目录 1. axios 网络请求库2. axiosvue 1. axios 网络请求库 <body> <input type"button" value"get请求" class"get"> <input type"button" value"post请求" class"post"> <!-- 官网提供…

STM32开发笔记123:使用FlyMcu下载程序

文章目录 前言一、FlyMcu二、电路图三、使用方法1、配置2、读取器件信息3、擦除芯片4、加载文件下载程序5、启动应用程序前言 本文介绍使用FlyMcu下载程序到STM32微控制器的方法。 一、FlyMcu FlyMcu轻量级,比STM32CubeProgrammer使用更为简便,下载地址:http://www.mcuis…

mysql返回N/A

在写统计图的接口&#xff0c;sql查询一直无数据&#xff0c;给的默认值也没有实现&#xff1a; SELECTifnull( unit.num, 0 ) riskUnitCount,ifnull( EVENT.num, 0 ) riskEventCount,ifnull( measure.num, 0 ) riskMeasureCount FROMtb_companyLEFT JOIN (SELECTrisk.qyid,co…

Linux网络——TCP的运用

系列文章目录 文章目录 系列文章目录一、服务端实现1.1 创建套接字socket1.2 指定网络接口并bind2.3 设置监听状态listen2.4 获取新链接accept2.5 接收数据并处理&#xff08;服务&#xff09;2.6 整体代码 二、客户端实现2.1 创建套接字socket2.2 指定网络接口2.3 发起链接con…

C/C++ 数据结构与算法【哈夫曼树】 哈夫曼树详细解析【日常学习,考研必备】带图+详细代码

哈夫曼树&#xff08;最优二叉树&#xff09; 1&#xff09;基础概念 **路径&#xff1a;**从树中一个结点到另一个结点之间的分支构成这两个结点间的路径。 **结点的路径长度&#xff1a;**两结点间路径上的分支数。 **树的路径长度&#xff1a;**从树根到每一个结点的路径…

Nginx的性能分析与调优简介

Nginx的性能分析与调优简介 一、Nginx的用途二、Nginx负载均衡策略介绍与调优三、其他调优方式简介四、Nginx的性能监控 一、Nginx的用途 ‌Nginx是一种高性能的HTTP和反向代理服务器&#xff0c;最初作为HTTP服务器开发&#xff0c;主要用于服务静态内容如HTML文件、图像、视…

uniapp使用live-pusher实现模拟人脸识别效果

需求&#xff1a; 1、前端实现模拟用户人脸识别&#xff0c;识别成功后抓取视频流或认证的一张静态图给服务端。 2、服务端调用第三方活体认证接口&#xff0c;验证前端传递的人脸是否存在&#xff0c;把认证结果反馈给前端。 3、前端根据服务端返回的状态&#xff0c;显示在…

基于SpringBoot的“房产销售平台”的设计与实现(源码+数据库+文档+PPT)

基于SpringBoot的“房产销售平台”的设计与实现&#xff08;源码数据库文档PPT) 开发语言&#xff1a;Java 数据库&#xff1a;MySQL 技术&#xff1a;SpringBoot 工具&#xff1a;IDEA/Ecilpse、Navicat、Maven 系统展示 系统整体模块图 登录窗口界面 房源信息管理窗口界…

EMC——射频场感应的传导骚扰抗扰度(CS)

术语和定义 AE&#xff08;辅助设备&#xff09; 为受试设备正常运行提供所需信号的设备和检验受试设备性能的设备&#xff1b; 钳注入 是用电缆上的钳合式“电流”注入装置获得的钳注入&#xff1b; 电流钳 由被注入信号的电缆构成的二次绕组实现的电流变换器&#xff1b; 电磁…

探究音频丢字位置和丢字时间对pesq分数的影响

丢字的本质 丢字的本质是在一段音频中一小段数据变为0 丢字对主观感受的影响 1. 丢字位置 丢字的位置对感知效果有很大影响。如果丢字发生在音频信号的静音部分或低能量部分&#xff0c;感知可能不明显&#xff1b;而如果丢字发生在高能量部分或关键音素上&#xff0c;感知…

WordPress网站中如何修复504错误

504网关超时错误是非常常见的一种网站错误。这种错误发生在上游服务器未能在规定时间内完成请求的情况下&#xff0c;对访问者而言&#xff0c;出现504错误无疑会对访问体验大打折扣&#xff0c;从而对网站的转化率和收入造成负面影响。 504错误通常源于服务器端或网站本身的问…

自学记录HarmonyOS Next的HMS AI API 13:语音合成与语音识别

在完成图像处理项目后&#xff0c;我打算研究一下API 13的AI其中的——语音技术。HarmonyOS Next的最新API 13中&#xff0c;HMS AI Text-to-Speech和HMS AI Speech Recognizer提供了语音合成与语音识别的强大能力。 语音技术是现代智能设备的重要组成部分&#xff0c;从语音助…