首先我们要弄明白,学会Java,指的是什么。

对于很多没工作过的大学生来说,理解的学会Java,就是会语法。

 

几乎所有的语法都逃不过“变量,赋值,判断,循环,函数”等,所以如果单纯指语法,没问题的。半个小时就能学会。

 

还有一部分,是一些语言特性独有的概念,比如说Erlang里的收件箱和发件箱,Java里的面向对象,继承,接口(这里的描述不算特别准备,毕竟不是Java所特有的)。

所以同样的,也可以在几个小时之内熟悉这些东西。

 

还有一部分,叫做语言内置的SDK,Java里内置了很多东西,Map,List,Array是最常用的集合,还包括IO,Network,File,Thread等一系列封装好的工具的使用。

 

这些东西需要花费的时间就比较多,全部了解,可能要几周到几个月甚至几年的时间,但是好在有Java Doc,可以随用随查,效率低一点,也勉强可以说能学的会。

 

还有一部分,叫做开源的工具包,或者是开源框架,而Java在这一点上,有点残无人道。意思就是,你之前学的那点东西。。。。在Spring,Mybatis,Log4j,Maven面前算什么?这是完全不一样的东西,同一个功用,会有不同的框架选择,哪一个该用在什么场景,这些没有数年的经验,根本做不到。

所以这部分,至少要日积月累到半年或者是一年或者是两年五年都不过份。

 

还有一部分,叫做语言本身的特性,或者说是设计思路。ThinkIng in java就是这样的,描述的很好,所以我到现在都没看过~但是零零碎碎的看过一些好玩的东西,如GC回收算法,Thread Local等等,对于普通做项目没有太大的帮助,但是对于架构师来讲用处比较大。

这部分呢,花点时间也可以看明白,只是要看什么时候自己需要弄明白他,我推荐的时间就是在你工作两年之后。

还有一部分,叫做架构体系。当我们谈Java的时候,大部分说到的,恐怕都是后端,而后端,往往和语言无关,反而更关注于,分库,分表,分布式,缓存,搜索,抓取,索引,消息队列,集成部署,集群等等等等等。

 

这些东西呢,做普通项目偶尔能用的上,一些大数据量,高并发的场景用的比较多,架构师成长的必经之路。看个人的机遇和能力,有些人可能一辈子都接触不到这些东西,始终在视图,存储过程,事务上打转转。有的人可能一年之后就能学到,有的人可能五年也学不会~

还有一部分,叫做业务逻辑。业务逻辑和行业相关,包括,电商,金融,医疗,财务等,这些都是要有专业的业务知识,才能对业务逻辑了解的更深入的知识点。

这部分,可能在三个月到半年内能学会一些,但是能成业业务逻辑专家的话,十年都不算晚。

 

所以,如果你指的学会Java仅仅是语法,他的价值和意义又在哪里呢?

而我们通常所说的会Java,其实就默认了他包括基础语法,SDK,语言特性,开源框架,性能和稳定性以及行业知识。

 

对了,还包括打包发布持续集成线上监控等一些和语言相关但是又关系不大的运维保障体系。

我说明白了么?


用户bPbdDlb
422 声望36 粉丝