JAVA 成长之路

 

新人入门:

  你现在手无寸铁,看着别人手里的狼牙棒很羡慕,没关系,我们一步步打造属于自己的武器。

  个人非常建议 从HTML  开始入门,首先,为什么我们不一开始就做JAVA,对于新人来说 刚入门接触一个后端语言,非常枯燥。

通常结果 就是控制台打印,会让你觉得没什么卵用,丧失学下去的动力。

  HTML 首先是前端超文本,它有有图形,互动,动画等等东西,容易让人培养兴趣。而且HTML 语法非常简单亲民,会让人容易入门。

 当你能用HTML CSS JS...自己开发出一个PC端,手机端好看的页面的时候,这个时候我们已经有了一把木刀了,虽然砍人不疼,但是可以雕琢的很华丽,很好看,似乎像那么回事了。让我们为自己鼓掌 ,你完成了类人猿到原始人的进化了。

这个时候就该学JAVA 了。

 因为你这个时候已经理解了,这些到底有什么用,是干什么的,而且有了一个兴趣基础。

 

好了开始学习JAVA。

第一步要熟练掌握常用的工具类,基础数据类型,数据处理方式。

第二步掌握,网络请求,线程,并发等基本概念,和基本API使用,并理解。

第三步,学会一门数据库的增删改查。

第四步,简单学习一个常用WEB框架。

 

好了这个时候 你的木刀变成了一个华丽灵活的小匕首,挥舞一下寒光闪闪,煞是威风。但是光看着没用啊,我们要真正用到它,它才是自己的。

 

自己尝试完成要给XX管理系统,或者方便自己工作生活中的小WEB应用,真的开始用你的匕首进行首次开疆辟土,并从这个过程中加深它方方面面的理解,对网络请求的理解,对JAVA 的理解。

真正完成一次自己的产品。

 

入门级

 

当你完成了上述工作,你手里华丽的小匕首已经变成一把开封的长剑了,恭喜你达到了入门级。

入门级距离初级已经很近了,现在你对基础的掌握已经相对扎实了,现在你要尝试一下通过一些第三方接口的对接,做一个相对复杂的系统,比如微商城,对接支付,对接各种第三方接口,掌握初级的并发使用方法, 缓存设计等,并且自己设计一些实用的功能及小环节。

且更熟练掌握你对常用框架的基本应用。

让这个产品真的能进行商用使用的 这么一个产品。

恭喜你,拿下你的冷兵器,换上一把沙漠之鹰,拿着你的700大狙驰骋疆场吧,你现在成为了一个可以真正能攻城略地的攻城狮!初级工程师成就达成。

 

初级

  初级就要开始迈向中级之路了,初级迈向中级首先要对基础的掌握更加扎实,然后就是横向扩宽自己的知识面。

 去开始使用LINUX系统,熟悉SHELL脚本,开始使用其他的一些框架,组件。

 了解,学习,微服务,分布式,常用的设计模式,甚至Android,ios等等,尽量去拓宽自己的横向知识面, 了解JAVA 常用基本并发包,简单并发处理(重入锁,同步锁,CAS,乐观悲观.......),容器,映射,队列,链表,包,栈,节点等等。

 

 经过一段时间的努力,你横向掌握了关于网络编程及一些常用组件的方方面面,你这个时候会感觉你自己似乎无所不能, 很少有什么应用你是实现不了的,似乎你就是上帝,你就是天命之灭世者,众生匍匐,俯瞰苍生。

 嗯,其实你就是把自己手里的小手枪,换成了AK47,不管怎么样,恭喜你又成长了一步,你现在已经成为了江湖上的中流砥柱,开发中间力量。

 中级工程师成就达成。

 

中级工程师:

作为中级水平,你应该对前方的路有一个清晰的认识了,继续向高级进发,整个软件领域是宽又广的,你不可能把什么都吃透。

 所以你只能选择其中一条路,作为通向高级水平的路线,选一个你最有兴趣的方向,你喜欢做什么。

 这个时候你不能在选择继续横向拓宽自己的知识面了,而是向纵深进发,你有很多方向选择,所以高级工程师没有高下之分,只是领域不同。

既然我们选择JAVA,那么本文就默认继续向JAVA进发了,而高级之路分外漫长。

编码处理:

这个时候你要开始学习编码,处理编码,能在编码层就对数据字节进行操作,将数据压缩为一条或者几条数据,并能用按位操作,及相关算法从你精简结构的数据中解析或者构成出你要东西。

可以任意自由的玩弄编码,让任何一条字节码变成你想要的东西,让编码变成比你对吃饭还要熟悉。

当你掌握了编码技术,你的AK47上面就多了一个瞄准镜,精准点击,压枪爆头。这个时候你就应该去掌握另一门技术,数据结构。

数据结构:

哈希,二叉树,23树,红黑树,树的平衡,赫夫曼树,赫夫曼算法,及压缩,傅里叶变换,图......

冒泡,快速,二分,大头堆,小头堆......

学会这些之后,你会针对某种业务情景,自己去定制最符合业务要求的,组合并发包,摆脱JAVA本身提供给你的类及工具,并在特定情境下你做的并发包及工具,能超越框架和javatools所能提供给你的广而大的工具类。

并且你开始翻阅这些类及工具的源码,并掌握它们的原理了。

这个时候你应该会成为系统的性能小超人,团队的技术主力,Ak换成了火箭筒,一炮轰出去让敌人明白RPG才是真理。

下一步,我们要继续深入我们首先要摆脱框架,不用框架了。

什么你不用框架了,怎么开发?

别着急,你首先要开始做深入底层原理这件事了,你现在手里只有JAVA基础API,创建一个普通JAVA工程,然后你只用JAVA提供给你的基础API 完成一个WEB容器+WEB开发框架一体程序。

首先别问有什么用,即使你做出来 也基本用不到,你会问为什么不用成熟框架了呢?

其实编写的过程就是你学习的过程,当你从0开始完成一个WEB容器+框架的时候,你对通讯底层,框架底层的原理的理解就超出了中级工程师,当中级工程师在基于框架苦苦思索一个解决问题的时候,你更改底层源码就立即将问题消灭于无形。

别管最后你的独立容器框架,能不能用到,就算用不到你也可以写其他工具,及中间件,私有协议,在融合之前的知识完成压缩大文件私有协议,等一些列有特殊公用的私有协议,以后短链接也不用什么都用HTTP协议了。

在处理长连接,长连接等等处理方式的理解与应用。

完成它,你会发现自己有了进一步蜕变。

这个时候你感觉似乎身轻如燕了,有一种身体漂浮的感觉,没有了无所不能的感觉,但是似乎脚下的路越来越实了。

好了完成这个了,你已经对框架什么的 了解的不能在了解了。下面我们继续深入,这个时候你要关注的就是JVM。

 

JVM各种参数调优,最重要的是JVM .class编译原理,掌握JVM编译原理,自己去写,去完成自己的编译器,自己的私有类加载器。

尝试写自己的脚本语言,自己编译让JVM运行起来。这个时候你应该去尝试,完成一些市面上没有做好的方面,做一些技术产品,技术工具,做自己的框架,解决一些其他产品解决不了的问题,你此时的目标应该是拿发明专利了。

 

这个时候你手里没有武器了,你最大的感觉是自由,你拥有无尽的自由,没有什么能束缚你的,你似乎可以一念之间从北极传送到南极。

此时你的面前似乎有一道墙,你不知道前路在哪儿了。

但是无论如何恭喜你,高级工程师达成。

高级工程师:

对于高级工程师来说,继续进步的方向只能是数学方向。这个时候你会有一个感觉,JAVA作为一个人造产品,它的极限基本快到了,但是语言不过是数学表达的一种工具。我们继续下去,方向就是数学。

其实无论什么语言当你了解到这个程度的时候,继续向下也都是数学,万物万事,殊途同归,无论你做什么最后指向的都是数学,所以我们叫程序员,而不是JAVA员,原因就再此,大家最后都是殊途同归。

这个时候我们就要开始学习,高等数学及线性代数,微积分,统计学,概率论。掌握它们,这样我们的数据结构就多了一条矩阵。

计算机只要涉及到解方程组,都是利用的矩阵运算,因为它是一个固定解方程组的方式,通过对线性回归及概率的计算,我们可以对大量的数据处理,压缩,解析,加密等得心应手。

如果未来对机器学习,智能化系统感兴趣,也为你铺平了道路。

继续前进,少年!

  • 0
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 1
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值