赞
踩
本文首发于欧雷流。由于我会时不时对文章进行补充、修正和润色,为了保证所看到的是最新版本,请阅读原文。
从事前端开发的你,不知有没有被问过:「前端有架构吗?」
问你的人的身份,可能是你的 boss 或上司,可能是后端同事,也可能是前端同行;问你的人的目的,可能是刁难,可能是嘲讽,也可能是请教。
众所周知,做前端开发所依赖的核心技术就是 HTML、CSS 和 JS,就像好基友一样形影不离,我们将它们仨亲切地并称为「三剑客」。
经过这二十多年,尤其是在 V8 引擎及 Node.js 出现之后,以「三剑客」为基础的衍生技术如雨后春笋般大量出现,前端及其关联社区与前端工程师这个职业得到了空前的蓬勃发展,甚至让很多人觉得一个前端工程师不仅仅可以做 web 前端开发,还可以写后端,替代客户端工程师——前端技术一统天下!
除了做网页,前端技术还能应用于命令行工具、客户端应用、服务端应用、聊天机器人、爬虫、IoT 等场景。只要脑洞足够大,就不怕场景不够多。
然而,绝大部分的前端工程师在工作中都会接触到这些吗?
试想一下,自己的工作历程是不是这样的——
在一家 150 人规模以下的创业公司,可能业务还在摸索期,需要不断地快速试错以找到可以铆足劲儿去发力的点。这时前端团队也没几个人,可能就三五个吧,并且 leader 不是什么大牛,也没有一套方法论作为团队建设的指导,也许你是这个团队里实力最强的。
这个时期所需要的就是能够快速迭代产出成果,然后去验证是否有效。根本不会给你时间去思考、规划前端团队的发展方向与基础设施建设。如果特意花费时间去做这些,没准儿公司会认为你「不务正业」,到时 KPI 打个不及格。
经历一段时间的焦头烂额,在此期间工程目录、代码提交很可能都很随意,并且没有 code review。有空闲下来回头一看,代码一坨一坨跟那个什么似的,实现与「优雅」这个词绝缘。
随着业务的快速发展,项目、应用越来越多,团队人数也越来越多,然而规范约定、基础设施依然几乎没有。在业务线做开发的前端,也不太会想着整个团队的工具统一,自己怎么爽就怎么来。最终导致一个团队用了多种视图层库、多个组件库,给收敛技术栈带来很大阻碍。
终于,公司的业务开始走上正轨,前端团队也已经有二三十人了,胸怀大志、急他人所不急的你觉得再这样野蛮生长下去是肯定不行的,靠堆人力去满足快速发展且多变的业务需求是非常低效且低级的方式,必须要有技术上的基础设施去支撑!即使公司层面不允许工作时间去做这种长远看来对公司是百利而无一害的事情,也要去做,就业余时间去做!
在所有基础设施中,最初级、最能直接体现出开发提效成果的,就是高度抽象的 UI 框架。经过了不知多少个的「下班后」和「周末」,可算搞出了个能够满足一定业务场景的,在自己负责的几个应用中初见成效。
正当你为自己所做的事情如期望中那样得到了收益而感到欣慰时,突然有人冒出来质疑你所做的事情,并且有可能就是前端团队中的。还好有其他人对你做的事表示认可,觉得有价值,让你有动力在这件事上继续下去。也许他是个后端开发,愿意去用,或愿意帮你在部门中推广。
你不断地给 UI 框架增加新的功能,并想方设法去改造旧系统。在公司拓展业务所需要的新应用和以前老应用的维护中,你所做的东西确确实实节省了不少人力和资源。在有新的一批后端开发入职时,还会邀请你在新人培训上给他们讲解如何使用你所开发的 UI 框架辅助完成工作。这结结实实地打了当初质疑你的人的脸。
后台系统页面的常见模式就是供数据 CRUD 的列表页、表单页和详情页ÿ
Copyright © 2003-2013 www.wpsshop.cn 版权所有,并保留所有权利。