Skip to content

2020 04 30 讲道理,只要你是一个爱折腾的程序员,毕业找工作真的不需要再花钱培训

fuzhengwei edited this page May 16, 2020 · 1 revision

作者:小傅哥
博客:https://bugstack.cn

沉淀、分享、成长,让自己和他人都能有所收获!

一、前言

标题想吸引你进来参考下我的学习方式,或许能给你带来一些经验。当然不乏一些培训中也有超级优秀的开发人员。

讲道理,程序员上学这段时光相对每个人都是公平的。同样是拿到了一本 谭浩强 的《Java 2 实用教程》,也同样有一台笔记本电脑,和一个宿舍一张床。

那些年的男生宿舍

说说我自己,刚上大一编程方面的课程是C语言,先不说能不能运行出来 HelloWorld ,就连安装个 VC++ 6.0 ,都折腾好几天。可能也是神奇,因为萌新小白学习东西能遇到各种各样的问题。 最后安装好了软件的电脑真的不敢乱弄,怕它坏。C语言 学了一个学期后开始了 Java 课程,大家都说 Java 简单,巴拉巴拉 有很多函数、开发工具好用、内存自己回收等等。但确实,工具还是蛮好安装的,除了配置环境变量要去网上抄一下,还是可以写出一个 Hi Java 的。从此便开始了 Java 学习的旅途。

从你摸起电脑的那一刻,每个人学习编程都会遇到很多问题,包括;

  1. 完全不知道是啥,不知道从哪开始,老师讲过也不会。
  2. 多次碰壁运行不出结果,带不来成就感。没有游戏和隔壁系的妹子好。
  3. 学完就忘,背了也记不住,觉得自己也没有项目,不能锻炼。
  4. 能交流的人少,身边也是打游戏的多,大学校园花花绿绿,有钱没钱,我也想玩玩。

除了这些问题,可能比这些多的还有很多问题。我也同样遇到过,初学时我也去加一些QQ群,但是很多都是比较水,能讨论技术的不多。也看过一些技术论坛,确实还是有引导性的帮助的。也跟一些师哥师姐交流,大学学哪些知识才能找到工作。好在,慢慢摸索出一条学习路线。同时为了可以与同好共同学习,就自己建了技术QQ群(东软帝国),认识了一群好友,在我大学期间时常给我解决bug;大帝糖糖苏二毛蚂蚁ZERO小凯Ticmy大宝萌货等众多好友。他们现在也分布在BAT等一线互联网的中,也有做到总监级别的大佬。

给自己打打气,有时候真的需要给自己点激励,毕竟这条路走起来不是那么容易。我的方式是上学期间时常会写一些自己认为算是诗句的诗,来提升自己的斗志。

红尘世界几个王我自不服迎头上日敲代码两百行冲进世界五百强

如果你在网上搜这几句话,还是可以搜的到的!

学习编程的过程很大一个问题是写的少,总有一部分人觉得只要看了视频,背了代码,这东西就能会。但往往真的不是这样,只要这东西不是你亲手敲了几十遍,你就永远也记不住。因为这个过程是在锻炼你的逻辑思维和肌肉记忆,为啥说是肌肉记忆呢?就像你打字聊天,输入一个拼音nihao,你会现在会想到它是从哪个手指敲出去的吗?根本就不会了,肌肉记忆早已形成,你只需要把你要的内容想到就能立刻通过键盘呈现出来。同样写代码也是也有的,public static void main,如果这一句代码你要反复看着键盘去敲,那么就是你写的代码量还是太少。

愿努力拼搏的你都能承载一份美好!

二、初学编程用过的书

嗯!是用过的书,不是看过的书。

初学编程的人往往并不需要太多的书,因为一本书所涵盖的知识基本已经很全面了,难的是要一字一句的把里面的内容都搞定。如果只是看还是很容易的,但是要想按照里面说的都实现运行出结果,那对收获来说就不不一样了。当然,如果你已经深入的学习了,领悟性有很好。可以在继续扩展其他书籍的学习,包括一些深入的原理、源码的分析、技能的拓展等等。

1. 谭浩强的这本书看了好久

谭浩强《Java 2 实用教程》

一遍遍翻,一遍遍看,一遍遍运行里面的代码。这本书真的给我带来很大的帮助,时至今日它也一直在我的身边。

2. SSH 几百页的书翻烂了

学习完基础编程后,就需要去拓展Spring相关技能,去开发真正的项目。类似这样的书还是比较多的,书中也包括了一些项目可以跟着学习。

3. 除了书还有视频可以看

似乎每个程序员都看过 马士兵 的视频,主要是他的声音和讲课方式很吸引人,不沉闷又能学的干货。至少他的视频我是看了5-6遍,也跟着写了5-6遍。

三、同样的项目做了N遍

在学习编程的过程中,我搞过很多的项目,当然这些项目的需求很多都是我臆想出来的。通过我需要锻炼什么样的知识点,之后去想着大概一个什么样的项目可以涵盖的去练习。

但!学到 Socket 后,大家应该都做过局域网聊天,而我比较能折腾做了N次。直到最后这次不仅自己得到锻炼,还可以帮助被人成长。

1. 上学期间第一个仿QQ聊天

登录

仿QQ聊天,登录

好友

仿QQ聊天,好友

聊天

仿QQ聊天,聊天

  • 这个期间是学校聘请了外部的老师来教我们做项目,为了尽可能做的好一点,当时就研究着仿照QQ做一款通信。现在看还是比较丑的,但是当时也是比较牛的了。

2. 培训期间局域网聊天

登录

局域网通信,登录

聊天

局域网通信,聊天

控制台

局域网通信,控制台

  • 清楚的记得这是当时搞了一周写完的,毕竟还是比较熟练了。
  • 甚至我在考虑把好友与聊天窗口合并,貌似现在大部分聊天软件也都是这么干的了!嗯!优秀!

3. 学Netty5.0写局域网聊天

登录

Netty5.0通信,登录

聊天

Netty5.0通信,聊天

4. 学WebSocket仿微信聊天

聊天

WebSocket通信,聊天

  • 15开始学习 netty5.0,但是后来由于5.0版本问题,netty官网下掉5.0。于是去年19年,我又开始编写 nett4.0 案例。为此也写了一次 WebSocket 通信。
  • 源码:https://github.com/fuzhengwei/itstack-demo-netty

5. 出专栏仿桌面版微信

登录

Netty仿桌面版微信,登录

聊天

Netty仿桌面版微信,聊天

好友

Netty仿桌面版微信,好友

  • 这个项目是20年过年期间发起的,使用JavaFx、Netty4.x、SpringBoot、Mysql等技术栈和偏向于DDD领域驱动设计方式,搭建的仿桌面版微信聊天工程实现通信核心功能。
  • 源码:https://github.com/fuzhengwei/NaiveChat

6. 除了这些还搞过很多

只要是能学习编程的内容,我似乎一直在折腾。谁学习期间也没有一个项目,但是可以自己去想出来一个项目,之后通过这样的项目锻炼自己的知识,尽可能让学到的内容得以实践。下面在列举一些;

1. 分数计算机

计算器

2. 学生成绩管理系统

成绩系统

3. 考试题库系统

考试题库系统

4. 图书馆系统

图书馆系统

5. 彩礼管理系统

彩礼管理系统

6. 在线考试系统

在线考试系统

好在当年留了一些图片

虽然这些系统在现在看有点点丑,甚至算不上项目,但对于编码从初识到了解的一个学习过程是需要的。总归,是要做一些实际的目标性内容,引导自己不断地强化知识。把一些未知的知识尽可能通过问题诉求学习到。

四、沉淀、分享,交个朋友

从19年开始,我想着生活里要添加一点自己能长期坚持的事情,不要把时间都浪费掉。于是,选择了我最擅长的方向,做原创技术输出。这样既能让自己有所沉淀,也能把知识传播给他人带来成长。

  • 2019年7月,搭建个人博客;https://bugstack.cn - 沉淀、分享、成长,让自己和他人都能有所收获

  • 2019年8月,找回公众号bugstack虫洞栈,定期推送个人原创技术文章

  • 2019年9月,CSDN 申请博客专家通过

  • 2019年10月,微信公众号终于又了1k的读者

  • 2019年11月,完成三个专栏内容编写;《用Java实现JVM》《Netty4.x专栏学习》《基于JavaAgent全链路监控》《DDD领域驱动设计实践》

  • 2019年12月,开发微信公众号与博客打通引流粉丝

  • 2020年,还在进行中!发布了GitChat专栏深入编写了字节码编程持续做原创技术输出加强个人技术栈学习吸纳架构设计精髓等等。

  • 整理了一整套CodeGuide 程序员编码指南 - https://github.com/fuzhengwei/CodeGuide/wiki

    本代码库是作者小傅哥多年从事一线互联网 Java 开发的学习历程技术汇总,旨在为大家提供一个清晰详细的学习教程,侧重点更倾向编写Java核心内容。如果本仓库能为您提供帮助,请给予支持(关注、点赞、分享)!


做这些事情,更多是我的爱好爱折腾的性格在支撑我。也希望将我的编程学习经验和技术沉淀多多分享。

其实大家可支配的时间都差不多,只不过开始写技术文章后,不吃鸡、不王者、不去电影、夜里0点前不睡觉也有2点的时候、周末放假不出去浪(今年也出不去)。那么你还是可以做一些有意义的事。当然,如果你说这样不是生活,但每个人爱好不同。

收入,写文章是会有收入的,公众号里日常4毛,也有1块多的时候,但几分也有。好在,我现在也不在乎这个,主要是要做一件可以坚持的有意义的事。

如果说能给你一些意见,我也建议你可以折腾折腾,程序员的世界里折腾一下还是可以全方位的学到很多东西的。做的久了会提升全栈的研发技能(后端、前端、部署、运维等等),而且还会获得;业务、运营、产品定位等等方面的提升。

五、收个尾

  • 以上呢,是我学习和不断折腾的一个方式。算不上优秀,但至少这样的学习可以保证你毕业时候找一份不错的工作,也能为你将来做好后路的根基。虽然每个人都有自己的路,但如果到了年纪还是要多把时间放到有价值的事上。
  • 持续学习的过程遇到了很多伙伴,各有优秀。虽然他们不会把钱给咱们😁,但是这些伙伴的宝贵经验都是会无偿告诉你的。包括你学的技术遇到问题包括你写文章需要看哪些书籍包括你对各个领域的认知等等。
  • 做人,做事,我喜欢亲和友善,广结同好。自从写公众号文章,有很多小伙伴加了我的微信,也和很多人成为了好朋友,他们日常帮我点赞、分享文章,深深感谢!

📝 首页

🌏 知识星球码农会锁

实战项目:「DDD+RPC分布式抽奖系统」、专属小册、问题解答、简历指导、架构图稿、视频课程

🐲 头条

⛳ 目录

  1. 源码 - :octocat: 公众号:bugstack虫洞栈 文章所涉及到的全部开源代码
  2. Java
  3. Spring
  4. 面向对象
  5. 中间件
  6. Netty 4.x
  7. 字节码编程
  8. 💯实战项目
  9. 部署 Dev-Ops
  10. 📚PDF 下载
  11. 关于

💋 精选

🐾 友链

建立本开源项目的初衷是基于个人学习与工作中对 Java 相关技术栈的总结记录,在这里也希望能帮助一些在学习 Java 过程中遇到问题的小伙伴,如果您需要转载本仓库的一些文章到自己的博客,请按照以下格式注明出处,谢谢合作。

作者小傅哥
链接https://bugstack.cn
来源bugstack虫洞栈

2021年10月24日,小傅哥 的文章全部开源到代码库 CodeGuide 中,与同好同行,一起进步,共同维护。

这里我提供 3 种方式:

  1. 提出 Issue :在 Issue 中指出你觉得需要改进/完善的地方(能够独立解决的话,可以在提出 Issue 后再提交 PR )。
  2. 处理 Issue : 帮忙处理一些待处理的 Issue
  3. 提交 PR: 对于错别字/笔误这类问题可以直接提交PR,无需提交Issue 确认。

详细参考:CodeGuide 贡献指南 - 非常感谢你的支持,这里会留下你的足迹

  • 加群交流 本群的宗旨是给大家提供一个良好的技术学习交流平台,所以杜绝一切广告!由于微信群人满 100 之后无法加入,请扫描下方二维码先添加作者 “小傅哥” 微信(fustack),备注:加群。
微信:fustack

  • 公众号(bugstack虫洞栈) - 沉淀、分享、成长,专注于原创专题案例,以最易学习编程的方式分享知识,让自己和他人都能有所收获。
公众号:bugstack虫洞栈

感谢以下人员对本仓库做出的贡献或者对小傅哥的赞赏,当然不仅仅只有这些贡献者,这里就不一一列举了。如果你希望被添加到这个名单中,并且提交过 Issue 或者 PR,请与我联系。

Clone this wiki locally