V2EX = way to explore
V2EX 是一个关于分享和探索的地方
现在注册
已注册用户请  登录
weixindo
V2EX  ›  程序员

真诚提问,因公司业务,.NET 转 Java ,求学习技巧

  •  
  •   weixindo · 2018-04-28 17:55:06 +08:00 · 3870 次点击
    这是一个创建于 2182 天前的主题,其中的信息可能已经有所发展或是发生改变。
    • 本人做了三年.NET , 因今年公司要求技术转型,要开始转java了,本人其实还是很乐意多学其他技术的。
    • 年初试水了一个项目( springboot+mybatis3+mysql ),踩了各种坑啊 233,虽说还是把项目赶了出来,但自己觉得还是做得不够好(小菜鸡),想系统点地进行学习,有木有这方面经历的或者有从其他语言转到 java 的 dalao 说下该如何更好的进行学习,真诚欢迎各位大佬指导发言。
    18 条回复    2018-04-30 10:24:53 +08:00
    renyiqiu
        1
    renyiqiu  
       2018-04-28 18:02:09 +08:00
    .net 转 java 应该还行,把.net 做过的项目用 java 实现一下呗,其余楼下大佬支招
    Lanke0
        2
    Lanke0  
       2018-04-28 18:02:56 +08:00
    正好我也在学习 java,多相互分享分享哈。我就网上 W3school,yiibai,CSDN 等各种上面的教程,稍微学习了一下,跟着敲了下代码,感觉算是入门了。虽然说各种问题,但还是解决了。
    murmur
        3
    murmur  
       2018-04-28 18:22:44 +08:00   ❤️ 3
    以下仅针对近乎 0 基础 java,大神不管:
    ( 1 )首先信仰要足,java 加瓦 添砖加瓦,j2ee 捷途易易,说明 java 才是现代大型架构的基石。java 这语言历来就靠语法糖吃饭,也不喜欢造轮子,所以第一步一定要锻炼出搜索英文的能力,就是找 maven 库的能力,一个你能用一般性描述的东西(比如读取 txt ),他一定在某个库里给你准备好了,甚至就是 apache xxx utils 的一部分(这里前端那种 isNumber isNaN 的库真得好好鄙视一番)

    ( 2 )刚入门千万不要看什么 thinking in java 或者设计模式的书,你连像样的程序都没写过上来看这种书不是给自己添堵么?所以随便找个中文课本或者视频教程,看一下语法,基本的程序怎么写,有些东西比如类的特性、多线程、图形化、网络这部分可以不看,就看最基本的,但是容器一定要看,有些东西是框架用的,有些东西 utils 提供了更好的方式,比如 java1.6 那个流好鸡儿恶心,你用 util 可能就一行一个 try catch 就完事了。这些东西要不要看,当然,等你入门了在看,而不是现在看了来添堵的

    ( 3 ) ide 要装最好的,某些人说为了熟悉 java 建议先用记事本写程序,这种我认为应该送他回石器时代,jetbrains idea 一步到位,就用他,java 太依赖 ide 了

    ( 3 )选一个方向,你是安卓也好,web 也罢,还是一般的写底层应用这个看个人爱好了,选一个喜欢的练手,比如爬虫、app 做个论坛客户端之类,安卓的 api 也够多,不用管,草草去学,面向需求编程,什么不会扔 google 里搜出来,以最快的时间出结果,享受成功的喜悦

    ( 4 )等你确定好方向,可以开始补 tij 这些和设计模式了,后面的真的一言难尽,java 创造的不是一个语言,是一个帝国,一种信仰
    3a3Mp112
        4
    3a3Mp112  
       2018-04-28 18:24:20 +08:00
    公司给你多长时间学 java ?
    ydxred
        5
    ydxred  
       2018-04-28 18:26:45 +08:00
    https://class.imooc.com/sc/18 只要搜索引擎用的好,钱!不存在.....
    murmur
        6
    murmur  
       2018-04-28 18:30:08 +08:00   ❤️ 2
    如果你确定走 web 方向,虚拟机调优这部分是跳不过的,哪个容器的参数都一堆都得一个一个优化
    企业应用这部分不比互联网,很多重型 sql,嵌套带关联查询好几层可能还得配存储过程

    至于多线程 并发这部分掌握最基本的 concurrent 就可以了,按现在的走向如果不是 ali 这种重 java 的公司,简单的查询不涉及太复杂的业务逻辑更倾向于剥离给 node 或者 go 来做,一般公司做个分布式套个缓存 cpu 内存给够参数设好就差不多了,毕竟那种太复杂动不动一个月一年的数据做计算你想优化他也优化不了瞬间响应

    我们也做企业开发的,给我的感觉是企业开发这方面特杂,万物之际在于春不假,但是 spring 扩展出来的东西太多了,什么消息队列、流程引擎、还有各种分布式以及分布式的监控就 zookeeper 或者阿里那个 duboo,一大票的中间件,能把 xml 全自己配出来的已经很牛逼了,动不动开个项目 xml 配个一天几天
    owenliang
        7
    owenliang  
       2018-04-28 19:17:51 +08:00
    阅读 java 各种框架说明书,然后...感觉头很大
    dbpe
        8
    dbpe  
       2018-04-28 19:19:54 +08:00 via Android
    @murmur 现在都走注解风了吧
    murmur
        9
    murmur  
       2018-04-28 19:21:31 +08:00
    @dbpe 个人习惯了 如果是都扔 xml 里管理起来比较方便 尤其是生产测试几套环境轮流切的那种
    dbpe
        10
    dbpe  
       2018-04-28 19:24:00 +08:00 via Android
    @murmur 这倒是不过 xml 里东西多了头疼
    zhchyu999
        11
    zhchyu999  
       2018-04-28 19:27:14 +08:00 via Android
    数据库尽量用 SqlServer 吧,用 MySQL 数据量一大你会不习惯
    honeycomb
        12
    honeycomb  
       2018-04-28 19:35:21 +08:00 via Android
    @murmur 那个建议不错的。
    jetbrains 的那套 IDE 不用,而是用 eclipse 的话也记得装上 spring tool suite 插件(或者直接用 STS )
    zouyun147
        13
    zouyun147  
       2018-04-28 21:20:33 +08:00 via Android
    给新人推荐阿里的代码规范插件
    renyiqiu
        14
    renyiqiu  
       2018-04-28 22:37:21 +08:00
    spring boot 2.0 还是在配置上简化了很多
    poorcai
        15
    poorcai  
       2018-04-28 22:40:09 +08:00 via iPhone
    同在
    q397064399
        16
    q397064399  
       2018-04-29 10:59:34 +08:00
    学会 Java 首先应该学打断点,因为有太多的动态代理跟 CGLIB 一类的东西,,
    学会打断点排查问题,别一个 Config 配置错了,然后排查老半天,,ε=(´ο`*)))唉
    realkenshinji
        17
    realkenshinji  
       2018-04-29 12:07:20 +08:00 via iPhone
    @murmur 还信仰呢,要充值了
    woscaizi
        18
    woscaizi  
       2018-04-30 10:24:53 +08:00
    基础的语法你从.net 转应该很快就可以上手,快的话甚至 1 天就可以完成。
    需要花时间的是 web 相关框架的使用。
    建议多看看开源项目,把 spring,spring mvc,mybatis 的使用学习一下就可以干活了。
    多写,多记,几个项目你就熟悉了。
    关于   ·   帮助文档   ·   博客   ·   API   ·   FAQ   ·   我们的愿景   ·   实用小工具   ·   3045 人在线   最高记录 6543   ·     Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 · 29ms · UTC 14:53 · PVG 22:53 · LAX 07:53 · JFK 10:53
    Developed with CodeLauncher
    ♥ Do have faith in what you're doing.