博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
水平Java_什么样的水平才算是java高手
阅读量:5742 次
发布时间:2019-06-18

本文共 1281 字,大约阅读时间需要 4 分钟。

在招聘网站上看到好多信息,招聘java高手,就在想具备什么样的水平才算是他们眼中的java高手。

这个问题 ,在刚学java时候就问过自己,也在不断地自己回答自己,但是很快就发现答案不对,于是又在试图给自己寻找一个正确的答案,但是到最后过一段时间自己把这个答案抹掉,到现在还在问自己这个问题,一个没有答案的问题。

这个问题之所以没有答案,因为每个人看问题的角度不一样,给出的标准不一样,而又没有官方上的标准,在这里也是发表一下自己的看法,当然只是暂时的,或许明天这个答案又被自己否定了,希望能与各位多多交流,同时也希望各位多发表自己的意见。

java“高”手,这个高字我加了双引号,是在强调这个高字,而不是java初学者,也不是java大师,而是一个高手。

结合自己的目前的理解,谈谈自己的想法吧,分为以下几个方面:

1.JVM

包括以下几个方面:

熟悉jvm 规范

熟悉jvm内存管理机制

熟悉jvm classloader机制

能够编写下列工具:

反编译java代码工具混淆java代码工具jvm内存监控工具字节码生成工具

2.开源框架

java相关的开源框架很多,在实际的项目开发中用到的也很多。

但是会使用并不能说明什么,仅仅能说明的是你对这个工具很熟悉,而且你也仅仅是把它当一个工具来看待。

如果你把他当作一个作品来看,你肯定不会仅仅从外面上来看。把她内脏挖出来,看看它的内部组成。

我的意思是说,你应该读读它的源代码,看看他的作者是怎样设计的,是怎样一步一步构思的。

把这些步骤都列出来,然后看看哪些地方是设计精妙所在,值得自己去进一步深思和挖掘。

你会感觉到你是在和一位大师沟通,他在指导着你,虽然你不能跟他见面。

经常看到很多简历上写着精通struts,精通hibernate等等,是不是真的精通呢?

问他问题:如果我让你来设计一个与struts,hibernate功能相同的框架,你会从哪些方面考虑?你会怎样设计?

还有人说精通java,那么在我看来你处在的层次就不仅仅是熟练使用它的api的级别上了,那么你一定会编写java的编译器吧?

3.设计能力

这方面是指你的oop的能力。

那么你是不是说我对设计模式很熟悉,那么我的设计能力水平就很高吗?不见得。

设计模式不过是给你提供了一系列的解决方案。

即使这些设计模式能解决你所有的问题,但是你还要去辨认何时使用模式合适,以及使用的过程当中 怎样去抽象一个问题,以及抽象到一个什么样的粒度。

有的人买来一本设计模式的书,按着上面的例子都运行了一遍,就自称熟悉设计模式。

教科书上的模式代码例子,也是一个类似hello world的例子而已。

设计模式不是一个简单的api调用,而是你的设计能力,绝非靠使用照着葫芦画瓢能达到的。

4 多线程

多线程的使用,必须熟练。

5.熟练使用java相关技术

在这里仅仅指j2ee方向的。

jms,jndi,ejb,webservice等等。

在这里不讨论数据库,软件工程等等,焦点仅限于java.当然前提是得懂java语法,而且对于jdk的api也能熟悉。

转载地址:http://wbnzx.baihongyu.com/

你可能感兴趣的文章
Erlang简史(翻译)
查看>>
深入实践Spring Boot2.4.2 节点和关系实体建模
查看>>
信息可视化的经典案例:伦敦地铁线路图
查看>>
10个巨大的科学难题需要大数据解决方案
查看>>
Setting Up a Kerberos server (with Debian/Ubuntu)
查看>>
用 ThreadLocal 管理用户session
查看>>
setprecision后是要四舍五入吗?
查看>>
shiro初步 shiro授权
查看>>
上云就是这么简单——阿里云10分钟快速入门
查看>>
MFC多线程的创建,包括工作线程和用户界面线程
查看>>
我的友情链接
查看>>
FreeNAS8 ISCSI target & initiator for linux/windows
查看>>
cvs文件提交冲突解决方案
查看>>
PostgreSQL数据库集群初始化
查看>>
++重载
查看>>
Rainbond 5.0.4版本发布-做最好用的云应用操作系统
查看>>
nodejs 完成mqtt服务端
查看>>
在ASP.NET MVC 中获取当前URL、controller、action
查看>>
Spring IoC容器初的初始化过程
查看>>
sql server 触发器
查看>>