想问一下各位大佬,走 Java 后台路线,前端要学到什么程度才 OK?

大家好,我是鸭血粉丝,不知道作为后台开发人员,你有没有过类似文章标题的疑惑呢?

背景

这个问题是来自知识星球的一个朋友之前在星球提问的,大家都给出了自己的观点和看法。阿粉觉得在面对这个问题的时候我们要根据具体情况来说,人手充裕的时候我们要术业有专攻,前端写前端,后端写后端,我们分工明确,各司其职就好;但是在人手缺乏的时候作为主力后端的我们要能 hold 住一切,简单的前端代码还是要写的。当然现实情况往往都是人手不够(哭晕)。

0b45bfa3f319b7241d28391be033f92a

阿粉根据这种情况总结出 12 字真经送给有疑问的朋友:看得懂,改的动;可以丑,但要有。

看得懂,改的动

对于前端代码首先看得懂当然是前提,如果都看不懂那自然就不会有后面的事情了。看得懂这句话说难也难说不难也不难,主要看自己是否愿意花时间去了解。阿粉作为一个后台开发自从工作以来已经写过很多前端代码了,从一开始的 HTML,CSS,JS,到现在的前端工程化 VUE,NodeJS 什么的一套都写过。

另外实不相瞒,阿粉的程序员之路还是从上大学那会看李炎恢老师的一百多集 JavaScript 教学视频开始的,一集没落下,全程跟着视频手敲代码做了一个博客网站。那个时候看完做出一个网站过后,那个成就感简直爆棚,上实验课课的时候还当着同学老师的面秀了一波。另外说一句知道李炎恢老师的朋友应该知道李老师还有 PHP 的课程,可惜阿粉没看那个,不然就可能用上世界上最好的语言了。。。

cd627080cc090e7baab0ed86f39e44f6

当然现在很多场景下我们写的不是原生的前端代码了,可能会用到很多组件,但是掌握了原生的,组件用起来就更加顺手和快速。

看得懂了过后,如果在没有前端同事的情况下,作为后端的我们就需要自己出手了,看懂了前端代码,了解自己公司前端的编程风格,一些简单的功能实现问题应该不大。这里有个点就是我们要理解公司的前端风格(如果有的话),统一的编程风格可以帮我们减少踩坑的次数,本来就不是专业,如果还踩很多没必要的坑那就不值得了。

对于大部分场景和公司来说,我们要做的是根据已经有的模块能够快速的复制黏贴并修改出自己要的,从而实现对应的需求就够了。

很多人可能觉得工作中复制黏贴都机械化了,没有成长,这里分享一个 tips,那就是复制黏贴只能是你不熟悉的东西,然后将这个不熟悉的东西转化成自己的东西。对于那些自己熟悉的东西,如果还一直复制黏贴,那就要思考思考为什么了。

a9d2cfffdbdb2c13bb904cc85684fa5d

可以丑,但要有

不得不说设计和产品是有洁癖的,洁癖到差一个像素都不能忍,但是我们后端毕竟不是专业的前端,没办法做出让设计和产品满意的界面(主要是没时间或者是设计/产品不够好看),所以这种情况界面丑那么一点点也是没办法的,但是我们的功能要是完善的,这个是流程问题,不能少。

其实现在如果说是对公司内部用户使用的产品,在使用一些开源组件的时候一般都不会太丑,可能只是一些配色和风格的调整而已。但是如果是对外部用户的话,那还是要专门设计一下,毕竟拿出去的是门面。就跟我们后台写的代码一样,我的接口文档很规范,接口设计的也不错,但是内部实现你不用管我怎么做的,反正就是不开源代码给你看。

写在最后

还记得上个周五晚上在家加班的时候跟老大讨论一个技术方案讨论到半夜 12 点,因为技术的迭代太快,几年前的系统现在需要重构,很多东西需要重新写,作为一个技术人喜欢学习和使用新的技术应该是一种习惯,这个世界唯一不变的就是变化,所以我们能做的就是调整自己去适应这个世界。

image-20200325002249228

身为技术人员,我们不要被所谓的前后端给局限,在自己能力范围内多学习多尝试总是好的,写到了这里,阿粉决定以后要出一本书就叫《人人都是全栈(干)开发》🤣。

其实这个世界上天才真的很少,大部分人都还没有到拼智商的地步;作为普通人我们拼的是努力,拼的是圈子,拼的是对这个世界的认知,接触更多更厉害的人,你迟早也会厉害起来。扫描下文二维码,加入我们的知识星球,有 1700+ 优秀的人与你一起进步,阿粉在知识星球等你!

image-20200205235453492

Java Geek Tech wechat
欢迎订阅 Java 极客技术,这里分享关于 Java 的一切。