V2EX = way to explore
V2EX 是一个关于分享和探索的地方
现在注册
已注册用户请  登录
V2EX 提问指南
fengsi
V2EX  ›  问与答

关于 Java 的学习路线?

  •  
  •   fengsi · 2021-07-23 09:31:05 +08:00 · 3024 次点击
    这是一个创建于 1227 天前的主题,其中的信息可能已经有所发展或是发生改变。

    关于 java,大约一年前在学校里的 java 课中学习过一点点基础语法,现在想仔细地学习一遍,翻看了网上地一些学习路线,感觉有点过于遥远?大家可有什么看法?

    我的情况:

    1 、时间充裕,不打算速成,打算仔细地学习一遍 2 、以后打算靠这个吃饭 3 、目前是先回顾一下基础语法这些,应该很快,这两天应该就可以结束了

    接下来呢?

    13 条回复    2021-07-23 22:32:42 +08:00
    securityCoding
        1
    securityCoding  
       2021-07-23 09:41:56 +08:00
    B 站找个培训机构的视频教程完整的看一遍,能坚持看完再说
    3dwelcome
        2
    3dwelcome  
       2021-07-23 09:53:39 +08:00
    看别人的项目源代码 -> 尝试修改部分代码,编译调试 -> 遇到问题不断去 Google -> 记笔记

    不断循环以上 4 个步骤,看视频可以入门,但也仅仅只是入门。

    还有千万别觉得时间充裕,技术发展太快,网上很多老代码都很难兼容新版本 SDK,各种历史编译大坑太多。
    statement
        3
    statement  
       2021-07-23 10:00:46 +08:00   ❤️ 1
    时间越充裕越学不下去 反正我是这样的 短时间需要用到 学的倒是很快
    samin
        4
    samin  
       2021-07-23 10:19:40 +08:00   ❤️ 1
    刚开始可以从三部分入手:
    1. 语言特性,也就是 JDK 本身的工具类你得熟悉
    2. 刷 leetcode,知道语言可以用来干嘛,怎么用
    3. 设计模式,规范你的代码,然代码可维护

    然后就是各种其它知识点的集合(操作系统、网络、中间件等等)

    这是我的 GitHub,记录了我的学习路线
    https://github.com/SaminZou/study-prj
    waiaan
        5
    waiaan  
       2021-07-23 10:22:54 +08:00
    同 1 楼。
    golangLover
        6
    golangLover  
       2021-07-23 13:32:36 +08:00 via Android
    @samin 学到了,谢谢大佬
    Mav
        7
    Mav  
       2021-07-23 14:09:16 +08:00
    yEhwG10ZJa83067x
        8
    yEhwG10ZJa83067x  
       2021-07-23 15:39:39 +08:00
    yEhwG10ZJa83067x
        9
    yEhwG10ZJa83067x  
       2021-07-23 15:41:58 +08:00
    回复里面怎么贴图片,markdown 格式无效?
    fengsi
        11
    fengsi  
    OP
       2021-07-23 19:04:37 +08:00 via Android
    谢谢大家回复
    levelworm
        12
    levelworm  
       2021-07-23 21:00:34 +08:00 via Android
    @statement 我觉得也是这样,有个需求逼着学的特别快,自己学啊学,除非是几天就能搞出来的东西,否则多半弄不完。
    EscYezi
        13
    EscYezi  
       2021-07-23 22:32:42 +08:00 via iPhone   ❤️ 1
    除了学习之外还要实践,可以考虑给自己分阶段布置作业。
    抛砖引玉一下,
    第一步基本语法 集合类 基础类库 输入输出流,可以写一个简单的文件管理系统,能看到目录下的文件有哪些,读取写入文本文件等等
    第二步接触多线程 同步异步 锁 stream,用 servlet 写一个简单的数据管理系统,用上数据库,压测软件,看看不同实现方式下接口承载量的差别
    第三步则是设计思想和框架,oop 是第一步,尝试使用 SpringBoot,把第二步的管理系统重新实现一下,顺便了解 ioc 和 aop,感受一下工程化的魅力(
    到此算是入了门了,接下来就是在之前的基础上继续提高,比如数据越来越多,请求越来越密集,之前做的东西响应越来越慢了怎么办,逻辑变复杂了,维护越来越困难了怎么办。于是各种中间开始浮上水面了。
    个人其实不太推荐抱着细节从头啃到尾,真的写起来就发现自己需要学些什么了,先对整体有个把握然后再来丰富细节效果可能更好一些(
    关于   ·   帮助文档   ·   博客   ·   API   ·   FAQ   ·   实用小工具   ·   1008 人在线   最高记录 6679   ·     Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 · 23ms · UTC 19:12 · PVG 03:12 · LAX 11:12 · JFK 14:12
    Developed with CodeLauncher
    ♥ Do have faith in what you're doing.