714105382
V2EX  ›  Java

Java 后端如何深耕?

  •  
  •   714105382 · Aug 28, 2019 · 8086 views
    This topic created in 2631 days ago, the information mentioned may be changed or developed.

    原谅我标题党了😂 楼主是海淀某校 CS 本大四了,现在在某大厂做 Java 后端实习,主要是微服务治理相关 刚刚入门,准备学一下各种框架 但是感到迷茫,后端东西太多了,先进的过时的混杂在一起,有点看不清 而且对学习顺序也无从把握 想问下各位 julao 们,这条路该如何学习? 或者说,如何因应未来的技术趋势,来搭建自己的技术栈和能力栈?

    29 replies  •  2019-08-29 10:43:18 +08:00
    714105382
    714105382
    OP
    Aug 28, 2019
    1
    好像话说得不明不白,举个例子吧
    比如我知道 SpringBoot 已经成为主流,公司也在用,但是如何快速学习呢?

    再比如说,公司架构还是 SpringMVC,本质上还是 Servlet.但是也有组里在搞异步化,Spring5 也上了 WebFlux
    问题是,MVC 是否能在未来较长时间内保持主流?
    如果不是的话,这些新出的东西是不是新人应该分配更高的优先级?
    714105382
    714105382
    OP
    Aug 28, 2019
    2
    感觉自己想问: 如何穿透技术繁复多变的表象,看到技术发展的先进性和本质?
    StarkWhite
    StarkWhite
    Aug 28, 2019
    3
    建议你多了解下 GraphQL,Facebook 出的,解决前后端接口联调的各种痛点
    https://www.v2ex.com/t/589138
    714105382
    714105382
    OP
    Aug 28, 2019
    4
    @StarkWhite 嗯嗯,谢谢您!
    STRRL
    STRRL
    Aug 28, 2019❤️1
    5
    多思考一下本质的需求吧 我也是刚毕业一年

    虽然很多技术需求都有比较成熟的方案了,但是场景不同,要解决的问题不同,某些轮子用起来可能并不舒服,所以人们又造了新的轮子。

    比如说微服务,很早很早很早就已经提出来了(《 Clean Architecture 》里看到的),但是最近才大规模应用起来。

    在 follow 新技术的同时, 多想, 多看书, 即使是所谓过时的东西里的某些思想也可能是精华. XD
    zifangsky
    zifangsky
    Aug 28, 2019
    6
    给你推荐一份我自己总结的 Java 学习书单吧,你可以根据自己的目标安排学习计划。


    Java 学习书单: https://mubu.com/doc/nZ4n8i424
    weo0
    weo0
    Aug 28, 2019
    7
    java 后端简直浩如烟海,我快放弃了(大雾)
    LeeSeoung
    LeeSeoung
    Aug 28, 2019
    8
    网上搜 java 技术栈思维导图,保证你看不完。。
    chendy
    chendy
    Aug 28, 2019
    9
    找一个(或者几个)感兴趣而且不冷门的东西一直扣就行,兼顾了解一些新东西,没了
    当然挺枯燥的,很可能扣不动…

    顺便吐槽一下 WebFlux 真的异端( 5.2 之后集成 kotlin 协程目测好用很多),spring5 之后加入的一些 funcational api 也是异端
    519718366
    519718366
    Aug 28, 2019
    10
    写 bug,然后查 bug,最后解决 bug🌚
    714105382
    714105382
    OP
    Aug 28, 2019
    11
    感谢大家
    dk7952638
    dk7952638
    Aug 28, 2019
    12
    多写代码,在项目允许的情况下大胆尝试新技术,多踩坑,总结最佳实践
    Kontinue
    Kontinue
    Aug 28, 2019
    13
    目前我刚入职也是这样子的,但现在是这么想的,首先保证 ssm+boot+spring 基本模块能熟练( Data 等),然后看公司可能会用到的,和自己感兴趣的。比如果 docker 作为工具可以学习下,然后可能会用到 rpc,就看下 zookeeper 和 dubbo,然后就各类中间件基本的用法都掌握以下,不追求底层和原理。然后针对于自己最有兴趣或公司用的最多的,花时间去了解下底层,看下源码。目前我是这么想的。。。每个都深耕哪有这么多精力,毕竟我觉得不论中间件,光光 spring 你要做到精通也是件很难的事情
    taogen
    taogen
    Aug 28, 2019 via Android
    14
    我列了一个技术栈可以看看 https://github.com/tagnja/techniques-tree
    714105382
    714105382
    OP
    Aug 28, 2019
    15
    @Kontinue 所以 SSM 三板斧还能再主导很多年?如何看待呢?
    charlie21
    charlie21
    Aug 28, 2019
    16
    只学能带来 money 的。你学太多的内容、内容却无法带来 money,那么只能说明这个内容不值钱,那么你学它是图啥呢
    charlie21
    charlie21
    Aug 28, 2019
    17
    什么 JB 浩如烟海,通通证明了这是不值钱的技术
    sorra
    sorra
    Aug 28, 2019
    18
    先耕熟 JDK 和 Spring,掌握其原理,设计模式和数据库也要熟练,再学习分布式系统基础知识,要有一定代码量才能真正理解技术
    Kontinue
    Kontinue
    Aug 28, 2019
    19
    @714105382 我觉得能,你看 spring 出到 5,boot 才 2,至少还有 3 年哈哈哈。但是 web 框架和 orm,你 ssm 搞定换别的不说轻轻松松吗
    charlie21
    charlie21
    Aug 28, 2019❤️1
    20
    反事实度量法:
    假设某一事实不存在或者情况相反,估算经济运行中可能出现的结果,由此来度量该事实对于经济运行的影响
    https://book.douban.com/review/7955709/

    诶你不如问一下后端有什么东西不需要学,谁能回答你 这才是说明他是懂行的。
    714105382
    714105382
    OP
    Aug 28, 2019
    21
    或者大家讲讲什么东西过时了不需要学也好
    vmskipper
    vmskipper
    Aug 28, 2019
    22
    工程的话搞 kubernate serverless 未来吃香
    BrbiwsFtd9zDGZqB
    BrbiwsFtd9zDGZqB
    Aug 28, 2019
    23
    @714105382 #21 jsp 不需要学...
    leafdream
    leafdream
    Aug 28, 2019
    24
    人生苦短
    mazai
    mazai
    Aug 28, 2019
    25
    跟上潮流就行了,某项技术突然火起来谁也无法预知。而且国内公司对新技术大多书都保持观望状态。
    Aresxue
    Aresxue
    Aug 28, 2019❤️1
    26
    把基础复习牢固了,再去研究各种中间件。像 linux 的核心函数、多路复用模型、用户态内核态的切换、锁机制,通信模型里的 OSI 或者 TCP 四层模型,中间把 TCP 捋顺了,像你做微服务,通信是极其重要的一块,spring cloud 为什么用 http,dubbo 的 rpc 又是怎么实现的,没有 TCP 的相关知识做基础你是不可能研究透的。
    snappyone
    snappyone
    Aug 28, 2019 via Android
    27
    基础好学啥都快,硬着头皮搞定几个框架源码,后面一路顺风
    33and66
    33and66
    Aug 29, 2019
    28
    基础打牢,再去理解上层建筑就容易多了。
    比如,Java 这么多 web 框架,还不是基于一个 Servlet 体系。
    比如,数据库 ORM 层那么多,还是基于基本数据库。
    很多分布式框架,都是从由一个个小组件组合出来的,万丈高楼平地起。
    yizmaoaa
    yizmaoaa
    Aug 29, 2019
    29
    参与开源项目
    About   ·   Help   ·   Advertise   ·   Blog   ·   API   ·   FAQ   ·   Privacy   ·   Solana   ·   2442 Online   Highest 6679   ·     Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 · 53ms · UTC 12:21 · PVG 20:21 · LAX 04:21 · JFK 07:21
    ♥ Do have faith in what you're doing.