本人 java 后端,工作大半年,整天处于 crud 中,想提升技术,但是像无头苍蝇一样,找不到方向,还请各位不吝赐教,有啥学习方法和学习路线分享一下
1
sinnosong1 2022-10-28 10:06:12 +08:00
学学 C#进厂吧🐶。
|
2
7911364440 2022-10-28 10:07:38 +08:00 1
才工作大半年急啥,先把 java 的类库用熟了再考虑别的吧
|
3
sinnosong1 2022-10-28 10:12:28 +08:00 1
2 楼正解,感觉楼主还可以看看 类似《改进 java 的多少种方法》、《 Effective java 》、《 Java 实战》 这些书籍。平时工作什么问题再努力学习相关的内容。
|
4
zou8944 2022-10-28 10:12:50 +08:00 1
如果嫌弃 CRUD 无聊,那就学学 DDD ,先在业务中寻找乐趣
|
5
yw121141111 OP @sinnosong1 好的多谢
|
6
yw121141111 OP @zou8944 好的多谢
|
7
zou8944 2022-10-28 10:26:31 +08:00 2
by the way, 实在不知道,这个网站不错: https://roadmap.sh/backend
|
8
weivi 2022-10-28 10:26:54 +08:00 1
每日一道算法题、学习没用过的中间件的使用方法、复习计算机基础知识、学习其他的语言。能做的多了
|
9
yw121141111 OP @weivi 好的感谢
|
10
byte10 2022-10-28 14:12:22 +08:00 1
楼上的说的那个 DDD 确实能提升写代码的成就,但是前提的是你能把 DDD 基本理解到位。理解 DDD 是看能力,组织能力,语文能力。
其他好玩的就是 vertx ,函数式编程,响应式风格。 或者做个小项目呗,我有一个量化交易的,使用 java 做的,绝对有挑战,有兴趣可以加我呀。可以教一些多线程,高并发等技术 😄 |
11
yw121141111 OP @byte10 怎么联系
|
12
YepTen 2022-10-28 14:40:29 +08:00
刚半年就别看 DDD 了,也看不懂,反而能把你绕迷糊。DDD 目前华而不实,没有落地的项目。
|
13
tonymua 2022-10-28 15:11:39 +08:00
先想想如何把业务代码写的更优雅吧 学学面向对象、设计模式,会对编程有更进一步的理解
|
14
yw121141111 OP @YepTen 好的
|
15
yw121141111 OP @tonymua 好的
|
16
THESDZ 2022-10-28 15:21:19 +08:00
1.锻炼基础编码能力
2.学习思想和开发原则,先弄清楚是什么,再考虑为什么? 3.锻炼抽象能力和逻辑能力. |
17
byte10 2022-10-28 15:22:26 +08:00
@yw121141111 这个是我的 Q - 3121604 ,proph
|
18
yw121141111 OP @THESDZ 很受用 前段时间写的业务代码 现在回想起来没有弄清楚就开写 以至于走了很多弯路
|
19
rqxiao 2022-10-28 15:41:22 +08:00
熟练使用 juc
|
20
hello2090 2022-10-28 15:44:14 +08:00 via iPhone
CRUD 不就 4 个函数吗,为什么要写半年
|
21
littleEight 2022-10-28 15:58:06 +08:00 1
crud ?脑子比不过大佬的话,就多刷刷基础的书(计原、网络....),反正我现在都看不完。 脑子康比大佬的话,就多看看大佬的博客,多思考整体框架的东西。
|
22
yw121141111 OP @hello2090 反复的 crud
|
23
yw121141111 OP @rqxiao 请问有什么相关的学习资料么
|
24
Verizon 2022-10-28 16:12:36 +08:00 1
学会使用 netty
|
25
rqxiao 2022-10-28 16:17:24 +08:00 1
|
26
zt5b79527 2022-10-28 17:13:07 +08:00
作为一个工程师,当前阶段,建议看一些《代码整洁之道》《设计模式》这类的,保证自己代码写的比较“优雅”,改正一些坏习惯。这个阶段还可以跟着教程,读一读 spring 的源码,里面还是有很多东西值得学习的。
下一个阶段,可以研究一下常用中间件的实现,比如 redis ,kafka ,mysql (网上一搜一大把的文章,都太浅了意义不大,建议读一读主要工作流程的源码),这样可以帮助你更好的使用他们,在遇到中间件问题的时候也不至于慌了神。注意,一定要记笔记,可以考虑搞成博客的形式。 这一堆东西搞完,该有两年了,你的工作经验+自学知识应该达到一个还算优秀的工程师的水平,工程师所面对的常见问题你也都不会怵了。再往后就根据自己的职业发展选择学习内容了 |
27
yw121141111 OP @zt52875287 非常感谢 受教了
|
28
amwyyyy 2022-10-28 18:25:09 +08:00 3
可以看看阿里的《 Java 开发手册》,里面有很多不错的经验。
不要小看 crud ,不同的人写出来差距可能很大,随便说几个: 传参( form 表单、json 、文件上传) 参数校验(注解、手写) 日志(打印准确利于分析问题) 异常处理(什么时候捕获什么时候抛出) 代码分层(避免 service 之间复杂的依赖) 事务处理(什么时候用事务,如何选择恰当的事务传播方式) |
29
narodo 2022-10-28 18:39:26 +08:00
基础不牢,地动山摇
|
30
haya 2022-10-28 19:01:13 +08:00
annotation processor
asm java agent |
31
Jooooooooo 2022-10-28 22:23:53 +08:00
进大厂是最快的.
|
32
xboxv 2022-10-29 00:59:04 +08:00
golang
|
33
cexll 2022-10-29 10:23:00 +08:00 1
这就和面试或者其他地方问你的职业规划一样了这个不是找不到方向而且没有确定方向
技术无非几条路 系统架构师 系统底层开发工程师(这个铁饭碗 越老越吃香 系统架构师 就是往整体的系统架构思考 学习 系统底层开发 就是扎进底层 系统 数据库 各种基础架构 |
34
yw121141111 OP @byte10 加你了老哥 同意下 77540789 ,x
|
35
securityCoding 2022-10-29 12:16:12 +08:00 1
说一个笨一点但极其有效的方法吧
找一个感兴趣的开源项目,分三个阶段: 1. 梳理清楚架构模块设计,搞清楚核心接口,为什么作者要这么设计 2. 抽丝剥茧,从某个模块入口搞清楚每一行代码意思,这一步不要偷懒,期间会有很多反复拉扯复盘的过程,不管你是看书、搜索、视频、翻 git 记录...细节是魔鬼。 3. 当你认为自己彻底弄懂了,ok 开始尝试脱离源码重写,你会有很多困惑,没关系回去看源码然后继续肝 |
36
securityCoding 2022-10-29 12:17:41 +08:00
还有设计模式这本书我从来不推荐,不去琢磨源码说真的看了白看,除了往你脑袋塞一堆形而上学的概念
|
37
yw121141111 OP @securityCoding 好的学到了
|