入职近半年的程序员应该怎样提升? - V2EX
V2EX = way to explore
V2EX 是一个关于分享和探索的地方
现在注册
已注册用户请  登录
CyberShadiao
V2EX    Java

入职近半年的程序员应该怎样提升?

  •  1
     
  •   CyberShadiao 2021-03-13 09:58:26 +08:00 6111 次点击
    这是一个创建于 1724 天前的主题,其中的信息可能已经有所发展或是发生改变。
    去年十月份入职了一家外包公司,不做民用项目,要出差驻场开发。面试的职位是 Java 开发,但是来了公司除了刚刚几天看了下文档,其余时间一直都在写页面,layui+JQuery 这些。现在 Java 快忘光了。自己的基础也不是很牢,纸糊的一样,框架(只会 SSM)也忘得差不多了。
    在公司半路加入项目组,做了一个项目,是拿之前做的一个系统改的,入职的时候后端改完了,只要写页面。
    目前这个项目只等验收了,然后我又不要出差,所以每天有时间可以带薪学习,请教一下各位大佬,我现在的情况是把基础补好还是复习框架?还有 Java 基础有哪些内容(看网上那些机构的视频感都差不多,都是教怎么用)?什么样才算基础比较好或者说什么才是 Java 基础?请各位前辈大佬不吝赐教。
    27 条回复    2021-03-15 17:36:17 +08:00
    zengming00
        1
    zengming00  
       2021-03-13 10:15:41 +08:00   7
    趁早转行,写程序这行业已经不行了
    securityCoding
        2
    securityCoding  
       2021-03-13 10:34:34 +08:00   7
    1. 系统性的学习数据结构与算法。这个非常非常重要,不然很多源码根本看不懂,这是搞懂很多高级组件的前置条件。比如:ArrayList/LinkedList/HashMap/AQS/epoll 不懂数据结构和算法基本上是看了也白看,看也看不懂

    2. java 底层知识 jvm 。比如 java 内存模型,jvm 运行时数据区, 有 jvm 相关的知识储备你才能看明白。像 volatile 为什么能保证内存可见性不懂内存模型是真的很难理解这玩意。还有垃圾回收,gcroot 等等

    3.计算机体系,这块的东西很多很杂,老实说这块知识我也非常碎片化。比如你说你要学习 netty,你得把 bio 、nio 、selector ( select,poll,epoll )这几个 io 模型演进过程搞清楚吧?上来就 nio+多路复用容易把人搞懵逼

    对于学习我自己一般遵循:
    1.背景。前因后果搞不清很多概念会显得很突兀难以理解
    2.怎么用。计算机领域不缺高级词汇,不要停留在纸面上,结合实际好好理解和运用。
    3.总结。不写总结根本不明白自己到底搞懂了没有,总结就是考试,你说你学的非常好了,来,我们来考试一下
    steveEvan
        3
    steveEvan  
       2021-03-13 10:53:16 +08:00
    本人双非一本,非科班出身,目前就职于某独角兽公司,可能我的经验会给你一点帮助
    可以用思维脑图列出 Java 需要的技术栈,比如 Java 基础,并发编程, 分布式系统,MySQL,网络,中间件等,每一块涉及的知识点列得越细越好,然后一段时间专攻某个点,这样逐步形成由点到面的思维,我把我的一些学习路线总结在了这里: https://github.com/allentofight/easy-cs,希望对你有些帮助
    steveEvan
        4
    steveEvan  
       2021-03-13 10:54:43 +08:00
    上面的链接没有写好,重发一下: https://github.com/allentofight/easy-cs
    L0lita
        5
    L0lita  
       2021-03-13 11:29:32 +08:00
    写代码写到头秃 你在公司就可以呼风唤雨了 有人狠不下这个心 认为颜值很重要 但是过来人告诉你 钱更重要 那些劝你转行的 只是不想让他人来抢这块蛋糕而已 切不可听信谗言 半途而废
    CyberShadiao
        6
    CyberShadiao  
    OP
       2021-03-13 11:32:24 +08:00
    @securityCoding 加入了一个群,和群友一起做算法题,签到题都不会做。学习新知识就是看视频,视频里怎么做我就怎么做,没有主动思考过,过一段时间就忘了。现在也开始做笔记,把每天学的东西总结,之前都没有做笔记的习惯,很多东西看了就忘,也没有形成体系。非常感谢老哥的指点。
    CyberShadiao
        7
    CyberShadiao  
    OP
       2021-03-13 11:36:12 +08:00
    @steveEvan 前几天把一些公司用到的 主流技术做了个思维导图,按照上面的去学习。之前学习就是要用了哪里不会就去看一下哪里,过了几天就忘了。
    CyberShadiao
        8
    CyberShadiao  
    OP
       2021-03-13 11:41:32 +08:00
    @zengming00 我感觉还好吧,我在的城市还行。
    NexTooo
        9
    NexTooo  
       2021-03-13 12:02:40 +08:00   1
    @CyberShadiao 做笔记很重要,看的时候会感觉“我懂了”,落到笔记上就是“额……?”,然后把学到的东西梳理整理成起码自己觉得有条理的能看懂的笔记(都不要求可阅读性),是个很痛苦的过程。
    一般痛苦完了憋出来了一块东西才算真懂了,我个人是这么觉得的。。。学个新东西很快,能写出笔记很久。
    虽然一样会忘,但是写笔记过程中思考的东西才是真正属于你的,短时间没感觉,日子久了真会感觉出和以前不一样
    myBatis
        10
    myBatis  
       2021-03-13 12:41:42 +08:00   1
    @zengming00 #1 再几把搁着宣传自我危机我打死你
    myBatis
        11
    myBatis  
       2021-03-13 12:43:24 +08:00   4
    @zengming00 #1 你自己一条菜狗学啥啥不会底层又不懂怪这个行业?
    geekaven
        12
    geekaven  
       2021-03-13 12:58:32 +08:00
    光看没用的,还要多练习和复习,要不然过段时间一样忘记。
    zengming00
        13
    zengming00  
       2021-03-13 15:17:28 +08:00   3
    还抢蛋糕,我就直接告诉你们,别说 35 岁退休,就是 30 岁现在都难找工作,现在的互联网公司里面那些技术有什么难的,多少没学历的人照样可以做,人家培训几个月就可以做事了,要的钱还比你少,加班人家还比你积极
    花精力去深耕的人有几个能出头? 1000 个程序猿里面有几个能熬到最后,你会是这里面的一个?

    别不承认,初中生培训几个月同样能写得了程序,而且人家不一定比名校出来的人差
    别不承认,送外卖同样拿上万工资
    别不承认,现在在职的公司再牛逼,出来后公司和你没半毛钱关系
    别不承认,创业公司很难活过三年,什么股份期权最后啥都没有

    红利已过,如果不是真的喜欢编程,真不建议做这一行,去看看现在那些三四十岁的人做什么赚钱,什么职业越老越吃香,往那个发展才是正确的道路
    raaaaaar
        14
    raaaaaar  
       2021-03-13 15:25:25 +08:00
    最重要的自然是基础,计算机的基础就那么几个东西,哪个不足补哪个。然后就是深入你自己工作中用到的技术,这点很重要,也能提高你的工作能力,技术也自然提升。

    说起来,我在没有上学校的课前,只是实践开发也会有这些问题,就是一头懵逼,不知道自己不知道哪些知识,也就是没有一个知识最基础的架构,现在学了不少课后,视野就慢慢建立起来了,虽然同样有很多东西不懂,但是知道自己不懂在哪里,自然知道怎么去学。

    所以如果不是科班的,还是建议慢慢补基础吧,那几个东西我想只要在这个行业里吃饭,总是逃不掉的。
    vincexu
        15
    vincexu  
       2021-03-13 16:01:09 +08:00
    上面那个没事吧,受啥刺激了
    MoHen9
        16
    MoHen9  
       2021-03-13 20:01:09 +08:00 via Android
    要看目标,比如短期目标是跳个好点的公司,就看大公司的面试,会学到很多。

    长期目标就要系统学习,以系统的看书,看文档,梳理源码为主,看文章或博客太单一,且不系统。比如你要学 MySQL,可以先看高效能 MySQL,学 Redis 可以看看 Redis 技术设计与实践
    L0lita
        17
    L0lita  
       2021-03-13 20:20:42 +08:00
    @zengming00 培训几月就能超你 自己不努力怪不得别人 培训完也就入个门而已 你要是以为培训完直接满级 那你还是送外卖去吧
    eternitym31
        18
    eternitym31  
       2021-03-13 21:39:22 +08:00
    思考下当前的商业模式,可以想想怎么出去单干。
    jones2000
        19
    jones2000  
       2021-03-13 22:15:16 +08:00
    能力提升是靠项目和代码堆出来的,什么教程,刷题都扯蛋。 没有真实的应用场景项目给你实践, 今天看了过几天就忘了。
    zengming00
        20
    zengming00  
       2021-03-14 12:34:08 +08:00   1
    @L0lita 我觉得你应该再仔细研究下我说的,任何行业都不是你努力就能成功的,企业里面有一两个挑大梁的就够了,当然不努力是一定不会成功的,运气的成分要远大于努力,到头来一场空,还不如趁早深耕其它行业,有相当多的程序猿工资是和其它行业持平甚至不如其它行业的,有意义吗?
    Blessing1
        21
    Blessing1  
       2021-03-14 12:42:23 +08:00
    学习了

    对我帮助挺大
    zengming00
        22
    zengming00  
       2021-03-14 12:44:25 +08:00
    企业里面有一两个挑大梁的就够了,其它的找培训班出来的或者找实习生就行了,稍微带一下就能干活了,便宜,开 5000 块都有大把人干,你再牛逼工资要那么多要你干啥?进大厂?进去还不就是颗螺丝钉,年龄一到就滚蛋,大厂里面的宫斗就像电视剧那么好看,确定你在里面能活得过两集?
    QBugHunter
        23
    QBugHunter  
       2021-03-14 17:13:36 +08:00
    我的流程是这样的,当然我是做 C++的,所以仅供参考

    0.学英语
    1.买各种进阶书籍,Efftecive c++等,然后看书
    2.学习 C++的类库,包括 Qt,OpenCv 等。
    3.做程序,从基本的扫雷,记事本(都是用 Qt 实现的)开始。
    4.开始学习模板,并开始自己实现 C++标准库,STL 等
    5.学习算法

    程序员 35 岁退休也是实情,就看你平时是否学习并紧跟最新技术。昨天看 V 社有个人法律个关于程序员 35 岁退休的帖子(标题最长的那个,不知道现在还在不在了),其实我觉得他那帖子话糙理不糙。

    这个社会竞争很激烈,你啥事都不敢,35 了别人为啥话高价请你而不是找个刚毕业的学生,毕竟你会的和刚毕业的学生会的也差不多,最多编码比较熟练而已。

    如果你真的要精通编程的话,10 年时间真的不太够,我刚开始啃算法导论,那一部书的厚度我就瑟瑟发抖了,其他不说,那些喊着 35 退休的人里,有几个学完整部书的?
    QBugHunter
        24
    QBugHunter  
       2021-03-14 17:30:32 +08:00
    去年公司招个安卓开发,来了个人,某水利工程硕士学位,年龄 34,7 年编程经验,要求月薪 20K+,然后我问了他如下几个问题

    Q:手机和某设备通信,设备发送的消息,有一个字段为 4 字节,类型为无符号 int , 那安卓如何处理该字段?
    A: 不知道

    Q: ActivityA 启动 ActivityB,然后 ActivityB 启动 ActivityC,那如何将 ActivityA 的某些数据,传递给 ActivityC
    A:用 Intent

    Q:有没有做过项目,最好是上线过 APP,或者技术性博客
    A:都没

    Q:安卓滚动控件,你一般如何实现(我开了一个 APP 演示给他看)
    A:ListView
    Q:这个用什么实现(我 APP 左右滑动切换 Activity,类似 ViewPager )
    A: 不知道,我之前负责某个 Activity 的

    Q:List 和 Vector 有啥区别?
    A : 没有
    ihgoo
        25
    ihgoo  
       2021-03-14 21:20:23 +08:00
    @QBugHunter 不可能吧,这人是个傻子?
    jmyz0455
        26
    jmyz0455  
       2021-03-15 10:25:36 +08:00
    @QBugHunter 坐标哪里?
    stillsilly
        27
    stillsilly  
       2021-03-15 17:36:17 +08:00
    @QBugHunter
    为啥做了 7 年没上线过 app……
    关于     帮助文档     自助推广系统     博客     API     FAQ     Solana     1101 人在线   最高记录 6679       Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 26ms UTC 17:57 PVG 01:57 LAX 09:57 JFK 12:57
    Do have faith in what you're doing.
    ubao msn snddm index pchome yahoo rakuten mypaper meadowduck bidyahoo youbao zxmzxm asda bnvcg cvbfg dfscv mmhjk xxddc yybgb zznbn ccubao uaitu acv GXCV ET GDG YH FG BCVB FJFH CBRE CBC GDG ET54 WRWR RWER WREW WRWER RWER SDG EW SF DSFSF fbbs ubao fhd dfg ewr dg df ewwr ewwr et ruyut utut dfg fgd gdfgt etg dfgt dfgd ert4 gd fgg wr 235 wer3 we vsdf sdf gdf ert xcv sdf rwer hfd dfg cvb rwf afb dfh jgh bmn lgh rty gfds cxv xcv xcs vdas fdf fgd cv sdf tert sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf shasha9178 shasha9178 shasha9178 shasha9178 shasha9178 liflif2 liflif2 liflif2 liflif2 liflif2 liblib3 liblib3 liblib3 liblib3 liblib3 zhazha444 zhazha444 zhazha444 zhazha444 zhazha444 dende5 dende denden denden2 denden21 fenfen9 fenf619 fen619 fenfe9 fe619 sdf sdf sdf sdf sdf zhazh90 zhazh0 zhaa50 zha90 zh590 zho zhoz zhozh zhozho zhozho2 lislis lls95 lili95 lils5 liss9 sdf0ty987 sdft876 sdft9876 sdf09876 sd0t9876 sdf0ty98 sdf0976 sdf0ty986 sdf0ty96 sdf0t76 sdf0876 df0ty98 sf0t876 sd0ty76 sdy76 sdf76 sdf0t76 sdf0ty9 sdf0ty98 sdf0ty987 sdf0ty98 sdf6676 sdf876 sd876 sd876 sdf6 sdf6 sdf9876 sdf0t sdf06 sdf0ty9776 sdf0ty9776 sdf0ty76 sdf8876 sdf0t sd6 sdf06 s688876 sd688 sdf86