成为一个前端到底需要掌握多少技能?

2018-10-16 09:06:00 +08:00
 lovesan

写了 6 年后端了,一直想转前端,没去过大厂不知道大厂的前端都什么样,就是跟我合作过的前端我看他们好像啥都会啊。PS AI HTML CSS js PHP 还有一大堆的前端框架,前端都这么可怕么?? 作为一个后端,我只要学 JAVA/C#然后再学习下常见的框架什么的,像 java SSH、.net MVC 这种,在没有 DBA 的时候保证自己会用数据库,会做简单的存储过程之类的东西就好了。 有没有后端转前端的出来给传授下经验?这些东西我觉得要全学会也太难了点吧。。

13331 次点击
所在节点    程序员
65 条回复
dd0754
2018-10-16 10:39:02 +08:00
为什么要想不开
xinzhognyi
2018-10-16 10:41:37 +08:00
@wizardoz 不是吧,我就是个 java 后端。简单的 css 样式和动画可以写。复杂的就怂了。学不会就有点夸张了。
UNDEFlNED
2018-10-16 10:45:03 +08:00
Raisu
2018-10-16 10:50:25 +08:00
我感觉,学东西先学他核心会快很多,虽然我也不懂前端的核心是什么。。。
Danswerme
2018-10-16 10:52:28 +08:00
css 这种东西简直要了我的命
otakustay
2018-10-16 10:59:08 +08:00
后端你把 Spring 全家桶拆开来已经是 N 个框架了,然后你要掌握 MySQL 吧,会拆表拆库吧,掌握 MQ 吧,掌握一个 RPC 框架吧,掌握 ELK 吧,掌握 GC 策略选择吧,你不会疯吗……
amumu666
2018-10-16 11:10:35 +08:00
主要是挺麻烦的。
比如我现在做展示页面,连个设计都没有,领导说要立体感,要 xxx 效果,我特么想样式想半天。主要是我很清楚领导根本不知道自己想要什么。
以前我也写接口,我们 java 也写 react,说白了就是会套 react 会 js 写逻辑 但是完全不懂 css html,react js 的奇技淫巧都不涉猎。但是觉得自己很牛逼,经常自作主张套个页面 改个组件啥的,把前端公共代码改的乱七八糟,很烦。
misaka19000
2018-10-16 11:13:41 +08:00
说明你不是一个合格的后端
cyril4free
2018-10-16 11:14:55 +08:00
对不起。。我看成了成为一个前任到底需要掌握多少。。。
misaka19000
2018-10-16 11:15:45 +08:00
@Danswerme #24 CSS 其实很简单,很多后端程序员之所以理解不了 CSS 是因为 CSS 和一般的编程语言不一样的地方在于它不是正交的,明白了这点之后再去学习 CSS 就很轻松了。CSS 是要靠反复的调整才能获得最好的效果的,而不像一般的编程语言那样可以直接在大脑中进行逻辑的模拟
otakustay
2018-10-16 11:33:16 +08:00
@misaka19000 没错,程序员学不动 CSS 多数是因为不想放掉自己会的那些语言和程序逻辑能力,试图把这些东西当成“学习 CSS 的基础”,然而并不。反而完全放空了把自己当一张啥也不会的白纸,去学 CSS 就学进去了
foolyf
2018-10-16 11:41:54 +08:00
前端三板斧:HTML + css + JS。 偏向可视化数据方向:
riverxs
2018-10-16 12:23:36 +08:00
学不会 CSS 的估计也学不会 SQL,两者不都是 DSL 么
lovesan
2018-10-16 12:59:32 +08:00
@xcjx 我就是觉得前端挺好玩的,至少做出来的东西是人家能看到的,随便搞出点东西就很有成就感。后端就没啥存在感了,而且太费脑子了,特别是算法这一块,为了出一个小功能可能要干好几天甚至更久,但别人就只知道后端那家伙干了一个多星期才弄出来一个功能或者一个接口。。。特别是甲方,“我要加个 XX 功能,这样再那样就行了,简单吧?”我:“简单你 MB ”
duan602728596
2018-10-16 13:04:34 +08:00
前端需要学的其实很多的。
基础:
1. ps、ai:这是辅助工具。切图或者制作或修改图标时会用到的。不要总指望美工给你全部搞好。
2.html:前端基础之一。了解 html 的标签,并且在合适的地方使用合适的标签,不要除了 div 就是 span,这么写 html 早晚会 sb 的。对于 html5 的规范、网站无障碍等等也要有一定的了解。
3.css:前端基础之一。前端模块化之后,css 能力其实是更加重要了,因为再也没有美工给你切图了,你负责的部分你不写 css 谁替你写?很多公司美工出图和静态页之后,css 其实还是要自己写的。
4.js:前端基础之一。从 ES3 到 ES2018。canvas、webgl、播放器、陀螺仪、地理定位等等都会用到。
5.node:前端基础之一。
6.数学:数学是前端动画的基础,简单如加减乘除、复杂如各种公式,都可能用到。
扩展:
7.前端的构建工具和打包工具:gulp、babel、rollup、webpack。在开发库时,多个开发语言的可以考虑 gulp,打包使用 rollup。项目开发肯定选 webpack 了。
8.各种库和框架:jquery、angular、react、vue 等等。
9.css 预处理器和后处理器:less、sass、stylus,postcss 目前以我的经验来看开发提升的不大。
10.服务器的工作流程:就是从浏览器发送请求开始,到后端的处理,再到浏览器接收到数据的这一段时间干了啥得有个数。
11.数据库:原谅我只会 mysql。
duan602728596
2018-10-16 13:17:18 +08:00
还有,有些理论是错误的,虽然很多人这么说:
1.html:全部使用 div 就能搞定一个网站:这是我在知乎上看到的话题,好多人还居然真的这么干。1.这么做不利于维护,语义化的标签不仅仅是给搜索引擎看的,也是给自己看的,2.某些标签上默认的动作,换个标签就需要更多的 js 去模拟,3.跨平台不是问题,现在跨平台的 css 样式真的简单得多,没有很大的问题
2.切图没有用,只会 js 就好:使用前端三大框架和 webpack 后,对于组件化的开发来说,html、css 都需要自己写了。美工、切图给你写?不存在的,无论是前端的网站(使用服务器端渲染)还是后端所谓的管理平台(更没人给你写了),都是靠你自己的。

现在 web 前端确实是各个领域的交点,原领域的不同,可能对前端的理解也有不同
lovesan
2018-10-16 13:23:11 +08:00
@riverxs 不一样啊,SQL 不要求太高的话很简单,一些简单的查询、联查之类的很容易,存储过程、视图、触发器什么的都比较容易掌握,再难点就是拆表,虽然难但也不是不能克服,性能优化的活肯定是交给专业的来,我也不需要掌握,但 CSS 这东西我觉得就是给神设计的,自学了一个月,现在我只能在别人的基础上做简单修改,如果自己从头写加上适配浏览器简直要疯了
lovesan
2018-10-16 13:26:30 +08:00
@duan602728596 确实,我在学习的过程中就没怎么用过其它标签,基本上一个页面就是 DIV SPAN 这些加上 img 之类的基础标签完成的,网上的大多教程也都是这么教的。。
SummerWQM
2018-10-16 13:38:29 +08:00
C V 大法
duan602728596
2018-10-16 13:40:16 +08:00
@lovesan 标签也是注释,变量名、函数名都是 a1、a2 这么来,开发也闹心啊,一样的道理

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

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

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

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

© 2021 V2EX