Java 开发,目前快 3 年经验,怎么才能提升自己的技术能力, V 友们有什么学习的经验吗,求指点

59 天前
 myTrip
3770 次点击
所在节点    Java
27 条回复
xuanbg
59 天前
@pxiphx891 真的有人读了这些书就能在技术上突飞猛进了吗?就我所知,技术能力能否提升到较高的层级,真的是懂的不需要学,不懂的教都教不会。
auh
58 天前
八股文吧
pxiphx891
58 天前
@xuanbg 首先是如何定义「技术能力提升到了较高的层级」,目标是什么,我觉得目标应该是写出可靠性,可扩展性,可维护性强的代码;在这个目标确立了之后,就要通过理论(看书)和实践(做项目)一起,看如何朝着目标前进,有的人悟性高,在项目中自己就能总结出很多东西,有的人不爱思考,就堆代码,这可能导致你有这种看法「真的是懂的不需要学,不懂的教都教不会」,但是不管什么样的人,有针对性的读了书以后,尤其了解到设计模式和 SOLID 原则那些东西之后,一定是有收获的,这是大师们几十年总结出来的,有了这些输入之后,再看项目中的代码,就会理解很多之前同事做的设计,否则是看不清的
zengyufei
58 天前
我们来溯源一下源码的设计是如何来的。

源码有啥,有算法、有设计模式、有封装、抽象、继承、多态,大概组成结构是这样子的。

一开始你只会 java 代码。
假设你是一个 java 基础通关的初学者,让你看源码,能得到什么结果?天书吧,我就是这样过来的。

那我是否该深耕源码获得下探深度的进步呢?答案是肯定的,但是我无法主动去做。
从他人分析源码那博文才知道,原来源码有那么多算法和设计模式,这些都属于抽象范畴,怪不得一开始我看不懂。

如果把算法和设计模式单独拎出来,其实可以跟 java 无关,可以中立的通用的东西,能应用到其他编程语言去,这是否意味着需要投入大量时间进行专项学习和实践,如同‘三年练习生’般持续磨砺?。

非系统性的长时间积累了不少知识点,我变得也能看得懂源码了,但是细节记不住,哪有那么多记性,天天忙着生活和 CURD 。

回过头来看,发现 java 就是一门编程语言,各种好用的库用了不同的算法和结构,封装成了不同的生态,兜兜转转,我似乎也只停留在应用层面。。

但是我知道我大概了解源码里部分做法,就跟做一道菜,需要备什么原料,用什么火力,用什么锅,如何炒制;我吃的好好的,让我去复现做出来,也可以,但没法完全复制,细节太多忽略的。只是了解知识点的我能干嘛,可以在工作中探索应用边界,可以用去面试,用去吹牛逼。

java 是我花了时间和代价学习的主力编程语言,我也想下探技术的深度,但是 java 在应用层面太多花活了,什么奇淫技巧,什么 lambda 新写法,什么新流行技术栈脚手架比较吸引我,我便去研究它们去了,研究它们得到的成就感比看源码多得多,也爽得多。

回头看,我已经掌握了不少抽象概念知识,发现源码并不神秘,但是也不好阅读,如果你把算法和设计模式了解了,源码大概就是套“公式”那么简单,但是你需要的是从源码分离出抽象的“公式”,那就需要学习一下应用于 java 但不是 java 独有的东西了。

脚手架也是,如果你研究众多脚手架,你会发现,大家其实也就是套“公式”,简单说就是 ctrl+c/v ,复制粘贴改改就能用,需要的是花时间而已。

AI 打破了固有的局面,以前我们追求的设计模式、封装抽象、代码整洁、注释完善,在现在这个时代好像都不值一提,现在写代码,看着 AI 一行行给你生成好,比你写得都好,默默纪念逝去的头发吧。

AI 的出现给我们带来更多可能性,终身学习的对象和终身的劳工,问必答,叫必做,我们要做的是,问它,学习它(成为它?)、纠正它。

最后寄言:

无论什么年限,记事、记错以及不间断写 demo ,量变积累质变。
myTrip
57 天前
@zengyufei 感谢大佬指点,说的很对,有时候做的多了,看源码慢慢就有点感觉,感觉还是要温故而知新啊,有的东西看的多了,做的多了,慢慢就悟了。就像学开车一样,最开始因为需要顾及很多细节,要注意档位,后视镜,导航,路况,红绿灯等等,熟练之后,不需要注意那么多细节了,自然而然就学会了
justwkj07
52 天前
收藏了
vmuu
51 天前
24 届毕业 java 开发,干了快一年确实有提升,但是失业后就找不到工作了,现在半运维工作,python+java 都用,感觉自己越来越菜了,快要退出这个行业了

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

https://ex.noerr.eu.org/t/1137478

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

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

© 2021 V2EX