切图仔时代,需要的是切图快,还原好,加载快。社区里讨论的问题是怎么实现炫酷效果,怎么让用户体验更好。只是对写 js 的要求是低点,好歹是在为了用户开发。
现在这圈子,我觉得很多人都是为了简历开发。社区里,大家为了框架互喷,满嘴跑火车,觉得“赶时髦、扯名词”就等于技术好。
接手过俩项目,都是 npm install 都要下个十几分钟的类型。一个有 e2e test,unit test,但是做出来的网页挂着 2M 大的 JS,一堆肉眼可见的 bug。另一个项目用了 css in js,用了淘宝的响应式方案,但是做出来的东西只有 320 宽度的屏幕没问题,其它大小直接布局错乱了。
参与过一个面试。问你 es6,es7 的语法糖有没有用过,问你框架新出的语法糖有没有用过,问你 webpack 里 css loader 和 style loader 哪个应该放在前面。我都不禁要问,你这是要考验我查文档的能力吗。
其它圈子,好程序员的标准都是基础扎实,学识丰富,解决问题的能力强。到前端这,变成谁赶时髦谁厉害。
同样是前端,安卓和 iOS 的开发者,目标都是做出个流畅,美观的产品。到了 web 这边,变成谁的 build 流程更先进谁更厉害。
101
icaca 2019-02-25 20:31:47 +08:00
前端比酷炫比时髦 后端比性能比并发
|
103
raynor2011 2019-02-25 21:32:55 +08:00
前端和游戏客户端相比,有什么异同?
|
104
int64ago 2019-02-25 21:57:12 +08:00 via Android 1
太可怕了,既然这贴也能得到这么多人认同
那面试问啥?问如何切图?如何兼容 IE6 ? 很多面试是这样的,你简历有亮点,自然面试会围绕着你的亮点,面试就是聊天了;如果你简历没任何让人提起兴趣的的东西,你也只会被问这些问题 |
105
int64ago 2019-02-25 22:06:11 +08:00 via Android 1
还有,你说的 install 十几分钟的难道不是你国网络问题,maven ruby 和各种 linux 发行版哪个国外的源不是慢的很,这破事也要拿出来说,要么自己搭建本地源,要么国内源,要么加钱买梯子服务器。
最后,我看到的就是个半吊子的抱怨 |
106
PALELESS 2019-02-25 22:10:09 +08:00
个人赶紧任何技术过火都会如此, js 用户量一直是第一, 入门低导致了大量的初级开发者群体, 群体人员素质也是个问题, 这些人每个人写点东西就放到社区里, 导致大量的垃圾文章或者代码存在, 但是并不能是这个技术的问题, 这是发展的必然, 除非提高各方面门槛, 就能保证群体质量, 但是也会降低群体人员与活跃性, 比如 haskell 等语言, 个人觉得核心是要提高国民素质, 国外开发者的素质就比国内好很多
|
107
Vegetable 2019-02-25 22:17:33 +08:00 26
我觉得很多人没真正理解 lz 想说什么.
他说切图仔,说 jQuery,都不是重点. 他想说的是,那个时代的人,都专注于做出好的产品,大家的技术可能都差不多,因为技术就是那个样子,学一学大家会的东西都差不多,区别是怎么将这些东西用到极致. 现在呢?说一句不负责任的,前端近年来的发展,主要是集中在“怎么让写代码的人更爽”.各类工具层出不穷,客户端设备性能飞跃了几个数量级,页面却是越来越卡了.这不是很奇怪吗? 离自己越来越近,离用户越来越远. |
108
JCZ2MkKb5S8ZX9pq 2019-02-25 22:22:32 +08:00 1
感觉 lz 主要是反对杀鸡用牛刀的现象吧 随便做个啥小功能都挂个 2M 的 js 的确是有点过分
具体还是就是论事 看实际用途看团队便利吧 |
109
xiangyuecn 2019-02-25 22:34:19 +08:00
/t/538636 刚看到的一个帖子,也算是一个案例吧,一个多简单的页面,4.4M js
|
110
SuperMild 2019-02-25 22:39:33 +08:00
你辛苦研究用最少的依赖做出复杂的效果,人家上框架快速搞定而且还好看,至于体积大编译时间长,老板和用户都不介意。
|
111
flasktest1 2019-02-25 23:18:21 +08:00 via Android
生产工具的升级,降低了对劳动力水平的要,求,老板可以用更低人力成本完成资本增殖这是先进生产力的发展方向啊
|
112
zzxop 2019-02-25 23:26:12 +08:00 1
我觉得大家可能误解了楼主的意思。楼主觉得现在追求的这些有点浮夸的东西,而不是内在的东西,觉得应该是解决问题的能力。说白了各种语法糖只是为了方便,最终问题的解决还得靠解决问题的能力,而不是现在追求时髦盲目的应用各种框架各种语法糖
|
113
dcatfly 2019-02-26 00:01:45 +08:00
1. 人员水平参差不齐,我觉得是你们公司招人的问题。跟什么风气无关。
2. 面试问你的问题,比如 es6 的语法,webpack 的配置我觉得都没有什么问题。 如果你能问出来自然还有更深的问题来问你。如果你回答不出来,那么别人可能会觉得这个人学习能力或者学习态度比较差。这也并不是在考验你查文档的能力,而是要看你有没有学过用过对应的东西。如果你觉得看下文档就会了,那么来面试之前为什么没有看文档呢? es6,webpack 出来也不是一年两年了,为何到今天还不会呢?如果你觉得被问的这些问题不重要,或者你有更好的解决方案,那么你可以提出来你的方案,或者去找适合你的公司。 |
115
DOLLOR 2019-02-26 01:50:58 +08:00 via Android 1
切图时代,是因为 IE5、IE6、IE7、IE8 的 hack 占用了大家的工作时间,所以才没那么多余欲去折腾各种框架。现在这些古董都死了,人们才终于解放思想去造各种轮子。
我宁可要现在的前端娱乐圈,也绝不想回到那个所谓的“风气”时代。 |
116
jamiefang 2019-02-26 02:29:46 +08:00 via iPad 1
作为设计师,我想说还原已经成奢求了。已经开始学习 React,谢谢大家的关心。
|
117
zkeeper 2019-02-26 03:38:16 +08:00
说个会被拍的. 我最近才知道, 这些年很多其他专业的人不好找工作, 纷纷转行 CS. 其中大多数做了前端, 因为在他们的印象中, 前端"简单"
然而我知道他们是错的. (我在某几个群里观察过他们的讨论, 实际上他们认为整个 CS 都简单, 是技校级别, 刷刷题轻松就能工作. 自己当初只是运气不好选错了专业而已... 然而丝毫不提 CS 从 20 年前就是录取分数最高的专业, 如果选 CS 他们大概率只能去次一等学校的事实) |
118
VEEX6 2019-02-26 06:38:06 +08:00 via Android
所以你们看到了一堆加特技亮瞎狗眼却没卵用的网站(我大油管这么丑还不是几十亿在用 hhh)
|
119
hearfish 2019-02-26 08:08:32 +08:00
其实后端语言的演变也有类似的迹象,面向过程到面向对象,再到现在的 functional programming,协程 /async,新语言的语法糖也是很多的,但是大家会因为这个语言只是看起来好看,写起来爽就去用么?到最后技术选型看的还是客观的性能数据,毕竟是跑在真金白银买的服务器上的。前端不一样啊,写起来爽开发效率高,大部分用户的设备跑起来只要做到不卡就完事了。
|
120
xusongfu5050 2019-02-26 08:59:43 +08:00
@jamiefang 用前端 UI 框架,有的样式真的很难跟 UI 保持 100%一样,哎。
|
121
sdwill 2019-02-26 09:16:42 +08:00
我认为根本原因是现在好多都不是叫页面了,叫 web 应用了。功能逻辑要复杂好多。现在做页面效果我觉得都是基本功了,还要折腾什么?要折腾的就是要解决逻辑越来越复杂的问题,如何简化开发,如何提高开发效率。
|
122
chenyu0532 2019-02-26 09:22:50 +08:00
面试不应该都是照着简历一步步深入的问么。。问简历没写的,别人说不知道,自己还不高兴或者否定了这个人,这不是给自己找不自在么
|
123
stephenliubp 2019-02-26 09:32:10 +08:00
我觉得有些方面值得商榷。
|
125
fyxtc 2019-02-26 09:43:57 +08:00
你说的问题存在,但是你碰到的问题有一部分在于你自己没有认识清楚现状。存在有生产力的工具,我们去使用难道不好吗?如果同样基本知识的两人,你会愿意招有工具使用经验的,还是没有经验的?除非你基础知识能明显强于另一个人,这种能力差弥补了让你进公司熟悉工具学习的成本。否则,剩下的故事楼主已经告诉我们了
|
126
YardWill 2019-02-26 09:44:57 +08:00
楼主这种就是典型的完全不了解前端的人,知道为什么前端会出现这么多的工具和框架吗?知道这些框架解决的问题是什么?还有各位说的一个页面 2M js,你们知道 SSR 吗?工具都是一样的,不一样的是用工具的人。无论用 jQuery 还是 react,该写出脏代码的人都会写出一样脏的代码。
|
127
reallarry 2019-02-26 09:45:08 +08:00 2
5G 快要来了,代码可以写得更烂了。
|
128
abcbuzhiming 2019-02-26 09:50:58 +08:00
@peneazy 现有前端那堆框架最大的问题是,解决了旧的痛点,却引入了新的问题,开发者其实并没有从繁重的重复体力劳动中得到解放。
|
129
stephenliubp 2019-02-26 09:53:35 +08:00
商榷的点:1. style-loader 和 css-loader 的加载先后顺序是在考察你对这 2 个东西的掌握情况; 2. 问你 es6 和 es7 并不是在追求炫酷,可能是在考察你对于新鲜技术的热忱程度; 3. 接手过 2 个项目看到项目的质量都比较差,只能说明公司招人的时候不谨慎,或者要求低; 4. 对于基础扎实从来是任何行业的根本。 因为我从事大前端也去面试过别人所以觉得上面几个方面不同的人看到的感想不一样,和自身的角度有关。 同样的 web 前端开发,不同的人写出的东西可能千差万别所以基本功很重要
|
130
abcbuzhiming 2019-02-26 10:03:33 +08:00
@YardWill 又是这种鄙视“你水平比我烂所以写的代码烂,和技术 XXX 无关”的论调,我说,睁开眼睛看看其他领域好不好。技术是为现实服务的,不是为鄙视链服务的,如果你真的是一个有足够经验的程序员,首先应该学会的就是接受这个世界的技术人员水平是参差不齐的这个事实,然后想办法在这个事实的基础上,尽可能让一群水平不一的人,也能做出不错的产品,为现实服务。而不是一副“这技术很屌用不好是你们水平不行不会”。
前端之所以出现了大量的工具和框架,本质其实就是为了解决工程人员水平不一造成产品质量相差太大的问题,从这个出发点上说,前端目前的环境比 IE6 时代好到不知道哪里去了。但是从现实来讲,目前前端的技术发展存在很大的问题,核心问题就是解决程序员的心智负担没有减轻,反而加重了。这其实背离了本来目的。目前前端界还在不断的做加法。而现在是需要出现王者来做减法的时代了 |
131
tinkgoose 2019-02-26 10:20:39 +08:00
当 npm 和 webpack 都成为基础设施的时候,你不去学他当然也可以,那你自然就得到了「下载十多分钟」、「打出 2m 多大的 bundle 」 这样的体验。要肯定这些工具实际上是极大地提高了前端的工程化水平,但复杂的配置确实是一种 tradeoff,不能因噎废食。一个程序员,不管从事什么领域,都应该有一个兼具深度和广度的工具箱。
随便乱用、把工作项目变成简历项目的乱象当然有,也是不提倡的。你不能说做切图仔的时候没有就是好事,那是因为没有那样的机会。 至于你提到的动画交互等问题,很多前端确实没有这样的意识,是因为潜意识里面这个是产品、交互、设计的工作,没有 DDD 的思维。 |
132
abc635073826 2019-02-26 10:20:42 +08:00
好像其他开发不水一样
|
135
qiukong 2019-02-26 10:31:44 +08:00
@DOLLOR 想多了,就我近两年看到的事业单位(北京),有超过一半还在用 WindowsXP+IE6,相对先进点的也就 Windows7+老款 360 极速浏览器(默认 IE7 内核)。
|
136
qiukong 2019-02-26 10:37:00 +08:00
另外很多(貌似需要 ActiveX )财务、报税系统仅兼容 IE6 及以下浏览器(比如我司),为了让自己电脑能运行 IE6 (新系统下的 IE Collection 类虚拟 IE6 都无法兼容财务系统),我司员工一般自备 2 台电脑,一台专门用来安装 WindowsXP+IE6。
|
137
nathanw 2019-02-26 10:38:00 +08:00 via iPhone
是不是可以这么理解,
面试是为了尽可能发现对方的亮点,所以需要多方面地问一些问题。 很多时候招聘,不过就是招一群气味相投的一群人。 |
138
marcong95 2019-02-26 10:38:51 +08:00
前端近几年由于 V8 之类的长足进步使得很多东西都能在浏览器上完成,前端工程越来越庞大,那自然是要出现一堆乱七八糟的工具。需求变复杂了,工具也变复杂不就是个很自然的事情么。减法自然是有人在做的,什么 parcel 的。
后端的需求,自互联网出现以来就是围绕着处理各种 CRUD,技术栈已经成熟,现有的技术栈已经可以完全满足需求了,自然也有余力去做减法。 |
139
AscenZ 2019-02-26 10:39:50 +08:00
hi 大厨
|
140
mars0prince 2019-02-26 10:41:53 +08:00 3
@Vegetable 你愿意为用户负责是你的事,我只愿意早点开发完下班,代码清晰可读,有更多的时间修炼内功升职加薪,你愿意为公司鞠躬尽瘁不代表别人也愿意好么
|
142
jeffcott 2019-02-26 10:48:48 +08:00
前端圈成熟之后会沉淀下来真正好用和主流的工具的,也就不像现在这么乱了;
我自己来说,基本认同楼主的看法;现在前端的各种轮子满天飞,没几个真正好用的,还增加了门槛,各种语法糖,让新人学不到真正有用的 js 的东西; 但是没必要开 历史 dao che,都是必经阶段; |
143
iyu90 2019-02-26 11:05:20 +08:00
“同样是前端,安卓和 iOS 的开发者,目标都是做出个流畅,美观的产品。到了 web 这边,变成谁的 build 流程更先进谁更厉害”
不敢苟同,阿里系 APP 了解下? iOS 都能卡成 S,阿里大神的目标呢?反而我倒觉得他们的 web 端做的挺好 |
144
IamUNICODE 2019-02-26 11:05:32 +08:00
@Vegetable 我也觉得是这样,本来计算机只是一个工具,人使用来做出人使用的东西,结果居然去研究完全不合适的奇怪工具,毫无意义
|
145
rockyou12 2019-02-26 11:20:14 +08:00
@iyu90 你这是完全不懂 app 开发现状,大厂业务多所以 app 做得屎。一个 app 里可能塞了好几套框架,几十个人在开发。
好不好还要以前为了跨平台搞的 react native、weex 这些玩意,历史遗留问题很重。 稍微小一点又日常的像饿了么,美团这些卡过吗?新一点的闲鱼、哪怕是支付宝都没这么卡 |
146
iyu90 2019-02-26 14:16:15 +08:00
@rockyou12 所以他这样吐槽前端是毫无道理的,这几年前端业务越来越复杂,能做的事情也越来越多,早就不是写写 html css 的页面仔时代了,单独拿前端说事我觉得挺过分的
|
147
hoythan 2019-02-26 14:20:38 +08:00
说真的,加载快和切图打不上边,这两个只能二选一。
|
148
guorui112 2019-02-26 14:21:36 +08:00
用 jQuery 的话,数据同步比较恶心,而且效率还真不一定有这些框架高,还时常会给你来几个 bug,webpack,gulp。。。会用就好
|
149
nothing315 2019-02-27 08:58:21 +08:00
站在员工角度,这些流程工具初衷都挺好,但是实际情况真是五花八门,到底是减少了工作量提高了效率,还是让工作越来越繁杂,难以维护,这个都有,反正自己经验工作往往是复杂了,build 无非跨平台的时候轻松点,但是是否轻松,往往取决于产品的定位和决策,倒时候不能为了技术而技术,还是按照产品的意思来,所以想想的跨平台操作并不是那么简单和节省代码,对比下用传统方案和 build 这种 2 种项目花的时间就可以了,还有维护的代码量,以前不 build 的时候,模块化都是存在的,不管是 jq 也好(有插件),还是那些 amd 等等规范的模块加载方案,站在公司角度,无非人员维护成本增加(工资肯定大头,时间长短看情况),接手门槛高的,至于追不追求体验和产品,这都是个人素养了,大多数 产品驱动的公司,还是产品优先,用了这些工具,如果很多功能还麻烦了,甚至不好做了,对公司而言都是浪费人力物力
|
150
oatw 2019-06-03 16:56:41 +08:00
@jamiefang 要求一个 UI 知识匮乏的前端高精度还原设计稿前,最好还是多搞几次 UI/UX 设计的基础培训。很多前端对 UI/UX 设计的概念都是很薄弱的,你跟他聊网格系统,他只会跟你说 bootstrap grid,你跟他聊色相轮,他大概会跟你说 rgb 数值怎么设置,你跟他聊基线对其纵向节奏感,可能根本聊不下去,因为没听过。。。等你费劲巴力做了培训给了设计规范之后,给你的反馈有可能是:“老子写好 js,实现功能,build 完已经很给你面子了,你还要求这么多?“ 所以,最好的方式就是自己设计!自己实现!当然,还是要互相理解,毕竟前端同学夹在设计师和后端之间也不容易。
|
151
oatw 2019-06-03 17:03:55 +08:00
@xusongfu5050 有自己的产品设计风格,最好还是不要上 UI 框架了吧,UI 框架这类东西普遍定制化支持比较薄弱,你也费不起那个定制的时间,不如用一些 mini 的样式重置库,然后自己丰富组件。如果是做一些定制性不高的项目,用用 UI 框架还可以,个人经验而谈,欢迎交流。
|