0
点赞
收藏
分享

微信扫一扫

不参加培训,一样能找到Java工作


一、前言

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

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

不参加培训,一样能找到Java工作_开发语言

 

那些年的男生宿舍

说说我自己,刚上大一编程方面的课程是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工作_java_02

 

谭浩强《Java 2 实用教程》

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

2. SSH 几百页的书翻烂了

不参加培训,一样能找到Java工作_java_03

 

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

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

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

三、同样的项目做了N遍

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

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

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

登录

不参加培训,一样能找到Java工作_开发语言_04

 

仿QQ聊天,登录

好友

不参加培训,一样能找到Java工作_java_05

 

仿QQ聊天,好友

聊天

不参加培训,一样能找到Java工作_java_06

 

仿QQ聊天,聊天

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

2. 培训期间局域网聊天

登录

不参加培训,一样能找到Java工作_开发语言_07

 

局域网通信,登录

聊天

不参加培训,一样能找到Java工作_java_08

 

局域网通信,聊天

控制台

不参加培训,一样能找到Java工作_管理系统_09

 

局域网通信,控制台

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

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

登录

不参加培训,一样能找到Java工作_开发语言_10

 

Netty5.0通信,登录

聊天

不参加培训,一样能找到Java工作_微信_11

 

Netty5.0通信,聊天

  • 这一阶段开始开始学习了netty5.0,尝试使用netty+protobuf,开发局域网聊天。目前网上也是能搜到这个工程。
  • 源码还有一份;https://github.com/fuzhengwei/itstack-demo-nettychat

4. 学WebSocket仿微信聊天

聊天

不参加培训,一样能找到Java工作_微信_12

 

WebSocket通信,聊天

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

5. 出专栏仿桌面版微信

登录

 

Netty仿桌面版微信,登录

聊天

不参加培训,一样能找到Java工作_Java_13

 

Netty仿桌面版微信,聊天

好友

不参加培训,一样能找到Java工作_开发语言_14

 

Netty仿桌面版微信,好友

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

6. 除了这些还搞过很多

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

1. 分数计算机

不参加培训,一样能找到Java工作_开发语言_15

 

计算器

2. 学生成绩管理系统

不参加培训,一样能找到Java工作_java_16

 

成绩系统

3. 考试题库系统

不参加培训,一样能找到Java工作_开发语言_17

 

考试题库系统

4. 图书馆系统

不参加培训,一样能找到Java工作_管理系统_18

 

图书馆系统

5. 彩礼管理系统

不参加培训,一样能找到Java工作_Java_19

 

彩礼管理系统

6. 在线考试系统

不参加培训,一样能找到Java工作_Java_20

 

在线考试系统

好在当年留了一些图片

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

ps:资料已整理成文档,需要获取的小伙伴可以直接转发+关注后私信(学习)即可获取哦!


举报

相关推荐

0 条评论