前后端都一样,工程化是对的,过度工程化可能就不对……

2023-03-30 11:25:57 +08:00
 HiCode

过去十年移动互联网大发展,产生了巨量前、后端需求,推动前、后端技术走工程化的路线。

工程化是对的,但是前端目前的工程化方向可能有点偏了,以致于频繁调整路线——最终表现就是前端工程师们觉得自己需要不停的学习新知识。

实际上,前端“以频繁学习新知识为荣”是一种“大聪明”的表现,就好比一个学渣总是写错作业,却以重写作业为荣。

市场繁荣期已经过去,近期频繁出现前端求职困难——当然后端也好不到哪里去。

未来,剩下的前端们会因为人力有限,开始将前端工程化过程中“繁杂无效”的部分剔除,回归到“技术服务项目”路线上来,而不是继续以前那种“技术服务工程化”的路线。

嗯,我是前端,也是后端,纯纯外包仔。

顺便推荐一下我的项目: https://github.com/dongnanyanhai/vue-web-loader-2

这个项目本质上算是对前端工程化的一种吸收和反对,前端生态非常丰富,是可以好好利用的,但前端开发的流程还在改进中,需要暂时避开。

最后强调一点,前端帅哥很多,非常多!

7228 次点击
所在节点    程序员
76 条回复
HiCode
2023-03-30 15:29:34 +08:00
@Mutoo 你提到的算有一点点影响,但可能不是重点。

举个梗,前端有个岗位是“webpack 配置工程师”,考虑浏览器兼容只是这个岗位工作的一小部分。
Mutoo
2023-03-30 16:00:31 +08:00
@HiCode 你没看到我说的重点,前端写的程序不只是运行在自己的浏览器上。就当当这点,就不知道多出多少工作量了。以至于 webpack 配置工程师都可以变成一个岗位,这是后话。
yunyuyuan
2023-03-30 16:13:22 +08:00
我猜 OP 不写 angular
sky857412
2023-03-30 16:14:22 +08:00
很多人忽略了为啥前端工程化了,就是移动端的崛起,国内当时还没前后端分离,大家都在一个工程下面玩,后端直接返回的 html ,多了一个移动端就不能够这么玩了,然后再前端工程化。然后搞 javascript 的又热衷造轮子,导致前端越来越复杂
HiCode
2023-03-30 16:27:13 +08:00
@yunyuyuan 不写,我对前端的态度就是只使用我需要用到部分。
yunyuyuan
2023-03-30 17:25:50 +08:00
@HiCode 所以你这发言就像是,没接触过 Spring ,说 Java 没有好的工程化
HiCode
2023-03-30 18:00:24 +08:00
@yunyuyuan 你这个说法就有点片面了吧,我只说我不用,又不是说我没去了解……

不用 ≠ 不了解啊!
twelvechen
2023-03-30 18:04:48 +08:00
@HiCode 请问这样如何处理懒加载呢,没有用到的组件也被放到页面里了。

还有如果目标用户都是现代浏览器,很多不必要的 polyfill 代码是不是也被加载了。

如果项目里用到了其他库,这些库与 vant 的依赖有相同的,那么相同的依赖库是否被多次加载到页面中了呢。

这些问题只是工程化所要解决的一小部分,前端起步晚,面临的环境比较复杂,国内国外的应用场景可能也不一样,toB 代码和 toC 都可能有很大的差异。工具大部分都是为了解决不同的问题的,所以一直在变,只是因为问题一直都有而已
yunyuyuan
2023-03-30 18:10:15 +08:00
@HiCode 所以,angular 不是前端吗,它的工程化偏了吗?
yunyuyuan
2023-03-30 18:15:34 +08:00
我就服气了,很多人一边用着 vue ,一边吐槽前端恶心,前端热衷于造轮子,好像他们口中的“前端”,是一名浪荡的花花公子,angular 摆在这里他们又不用
HiCode
2023-03-30 18:16:01 +08:00
@yunyuyuan 你先抛开前端,学好逻辑,然后再来讨论。我不太喜欢跟逻辑不清不楚的人讨论问题。
yunyuyuan
2023-03-30 18:19:32 +08:00
@HiCode 因为你没有能反驳我的地方,你记得回炉重造一下小学语文,学一下“定语”的用法
HiCode
2023-03-30 18:20:01 +08:00
@twelvechen

支持动态加载组件,其实还是 vue 官方文档里的那一套,模版里用:

<component v-bind:is="indexView"></component>

然后 JS 代码里通过下面代码去按需加载组件:

// 动态加载其他组件
VueWebLoader.import('view/index.vue', function(component) {
that.indexView = component;
})
HiCode
2023-03-30 18:20:17 +08:00
@yunyuyuan 对对对,你说的都对。
yunyuyuan
2023-03-30 18:22:11 +08:00
@HiCode 这就急啦?没点水平就别到处泛谈“工程化”了
HiCode
2023-03-30 18:24:44 +08:00
@twelvechen 不好意思,被某个人搞得我以为你要问具体问题。

你说的这部分现实情况,确实是推动前端工程化发展的动力之一,我不否定这一点,我也认可前端工程化的正面意义。
HiCode
2023-03-30 18:26:33 +08:00
@yunyuyuan 对对对,你说的都对。网友一场,我衷心建议你学习一下逻辑学。
duke807
2023-03-30 18:35:35 +08:00
当年跟着 angular 1 、2 … 一路走过来,现在只用 vanilla-js.com
hzxxx
2023-03-30 18:36:51 +08:00
我觉得前端(不涉及图形)难不难,培训班 s 和当前的前端市场已经给出了铁一般的答案
sofukwird
2023-03-30 20:11:48 +08:00
那该如何热重载呢?

这是一个专为移动设备优化的页面(即为了让你能够在 Google 搜索结果里秒开这个页面),如果你希望参与 V2EX 社区的讨论,你可以继续到 V2EX 上打开本讨论主题的完整版本。

https://www.v2ex.com/t/928423

V2EX 是创意工作者们的社区,是一个分享自己正在做的有趣事物、交流想法,可以遇见新朋友甚至新机会的地方。

V2EX is a community of developers, designers and creative people.

© 2021 V2EX