好程序员:一个Java高级工程师的必备技能

1. Core Java,就是java基础、JDK的类库,很多童鞋都会说,JDK我懂,但是懂还不足够,知其然还要知其所以然,JDK的源代码写的非常好,要经常查看,对使用频繁的类,比如String,集合类(List,Map,Set)等数据结构要知道它们的实现,不同的集合类有什么区别,然后才能知道在一个具体的场合下使用哪个集合类更适合、更高效,这些内容直接看源代码就OK了

2. 8.其他一些有名的用的比较多的开源框架和包,Netty网络框架,Apache common的N多包,Google的Guava等等,也可以经常去Github上找一些代码看看。

3. .多线程并发编程,现在并发几乎是写服务端程序必须的技术,那对Java中的多线程就要有足够的熟悉,包括对象锁机制、synchronized关键字,concurrent包都要非常熟悉,这部分推荐你看看《Java并发编程实践》这本书,讲解的很详细

4. JVM的一些知识,不需要熟悉,但是需要了解,这是Java的本质,可以说是Java的母体, 了解之后眼界会更宽阔,比如Java内存模型(会对理解Java锁、多线程有帮助)、字节码、JVM的模型、各种垃圾收集器以及选择、JVM的执行参数(优化JVM)等等,这些知识在《深入Java虚拟机》这本书中都有详尽的解释,或者去oracle网站上查看具体版本的JVM规范.

5. 一些常用的设计模式,比如单例、模板方法、代理、适配器等等,以及在Core Java和一些Java框架里的具体场景的实现,这个可能需要慢慢积累,先了解有哪些使用场景,见得多了,自己就自然而然会去用。

6. 3.I/O,Socket编程,首先要熟悉Java中Socket编程,以及I/O包,再深入下去就是Java NIO,再深入下去是操作系统底层的Socket实现,了解Windows和Linux中是怎么实现socket的,如果你想学习Java可以来这个群,首先是五三二,中间是二五九,最后是九五二,里面有大量的学习资料可以下载。

7. Javaweb开发的框架,比如Spring、iBatis等框架,同样他们的原理才是最重要的,至少要知道他们的大致原理。

8. 常用数据库(Oracle、MySQL等)、SQL语句以及一般的优化

给大家分享一份Java程序员2-5年都可以学习突破的视频

我确确实实希望本文可以帮助你提升技术水平。那些,觉得受困不好玩,甚至会令你沮丧的人,别担心,我认为,如果你愿意试一试本文介绍的几点,会向前迈进,克服这种感觉。这些要点也许对你不适用,但你会明确一个重要的道理:接受自己觉得受困这个事实是摆脱这个困境的第一步。

如果你想学习Java工程化、高性能及分布式、高性能、深入浅出。性能调优、Spring,MyBatis,Netty源码分析和大数据等知识点可以来找我。

而现在我就有一个平台可以提供给你们学习,让你在实践中积累经验掌握原理。主要方向是JAVA架构师。如果你想拿高薪,想突破瓶颈,想跟别人竞争能取得优势的。

时间: 2017-11-13

好程序员:一个Java高级工程师的必备技能的相关文章

C++程序员和Java程序员的差异

首先说明,这几年接触的最多的程序员就是C++程序员和Java程序员,这只是我自己的一点体会而已,一个人的眼光难免是浅薄的.不过,欢迎拍砖,也欢迎对号入座.   从对基础知识掌握的程度来说,例如数据结构和算法,C++程序员要比Java程序员牢靠得多.究其原因,大概是因为C++程序员需要经常自己实现那些项目基础设施,但是Java程序员大多拿来即用.公平地说,C++不是一门适合程序员初学者的语言,但是Java是.C++程序看起来确实要比Java 程序稍难懂一些,C++程序员往往思维更加严密.另一方面,

在游戏中学习:程序员如何提升自己的安全技能?

本文讲的是在游戏中学习:程序员如何提升自己的安全技能?,解决编程谜题游戏是提高开发逻辑和解决问题能力的一种有趣手段.此外,当你尝试熟悉一门新的编程语言时,解决这类编程语言的谜题游戏可以帮助你加快学习过程. 无论你是一个编程新手,还是想要增强你现有的技能,或渴望掌握最热门的编码语言,以下文章中介绍的10 款最流行的编程谜题益智网站,都将帮助你测试自己的思维,以及改善你的编程.解决问题与逻辑思维的能力. 1. Programming Praxis 如果你正在寻找一个有趣的方式来提高你的编程能力,Pr

从高考到程序员---一个五年程序员的回忆及建议

(本文参加CSDN的"从高考到程序员"征文活动,谢谢!) 每年的六月初,有关高考的信息就会见诸于报纸.网络等,让我这位多年之前参加高考的.已工作多年的人不由得也回忆起了自己高考时的情景.恰逢CSDN举办本次"从高考到程序员"的征文活动,我就在这篇文章中分享一下自己的高考和大学经历,并为想成为程序员的学弟学妹们提供一些建议. 我的高考经历 我高中上的是我们市的一个重点中学,当时我们一个年级有22个班,总共一千多人,我的成绩在前几十名到一百多名之间徘徊.我参加高考是在2

Java程序员要求具备的10项技能

1.语法:必须比较熟悉,在写代码的时候IDE的编辑器对某一行报错应该能够根据报错信息知道是什么样的语法错误并且知道任何修正. 2.命令:必须熟悉JDK带的一些常用命令及其常用选项,命令至少需要熟悉:appletviewer.HtmlConverter.jar. java.javac.javadoc.javap.javaw.native2ascii.serialver,如果这些命令你没有全部使用过, 那么你对java实际上还很不了解. 3.工具:必须至少熟练使用一种IDE的开发工具, 例如Ecli

linux(ubuntu)给程序员(java方向)带来了什么真正实际的真正的便利?

问题描述 首先声明:喜欢喷的请你远离谢谢!(谁不是从菜鸟过来的,如果你觉得我的问题很无知,你可以笑而不语谢谢!)http://www.kafeitu.me/linux/2012/05/19/how-do-i-work-on-linux.html这边文章说了常规环境配置,但是我还是没看出为什么要放弃windos到linux?1.他真正给我带来了什么?(具体的方便之处)2.请有经验的使用者给些指点ps:我题个自己现在的困惑,ubuntu下开发java web 如果不用eclipse开发,用什么编辑器

程序员应具备的7大技能

1.  对技术的热忱  热情是一种无形的东西,当你所列清单上的所有事情都做不好的时候,它常常能帮你熬过这段时间.对IT的强烈热爱,也会让你的其他大部分特点都遥遥领 先,这是纯粹的智商和商业头脑所无法比拟的.当你在IT行业工作了多年之后,热情也会帮你在早上起床之后期待今天的工作.没有热情,IT领域将会成为一个 空有外壳没有灵魂的地方.  2.  懂得数据分析  数据是IT企业和它所服务的企业的命脉.对公司数据有深入的了解,可以对软件应用程序与数据的衔接提供重要的见解.此外,从商业的角度看,如果你对

如何成为一个成功的Jsp程序员?

js|程序|程序员 一个普通的错误是把JSP当作简化的 Java.它不是,(事实上, JSP 是简化的 servlets .)程序员通常试着没有学习要求的支持技巧而 直接学习 JSP .JSP 是一个衔接技术,并且成功地连接你需要理解的另外的技术.如果你已经知道 Java,HTML 和 Javascript,这意味着 JSP 将确实是简单的. 需要成为一个成功的 JSP 程序员可以参考这个时间表.请注意下列: *忽略你已经熟悉的步骤. *训练的时间只是代表学习好足够的基础时间,这样才能转移到下一

java程序员的迷茫?

昨天在论坛上看见有人问毕业之后java程序员薪资能拿到多少?我看见后下意识的关注了,我是一个java程序员,刚刚毕业一年,我却感觉我的java水平没有什么可以迅速提高的了(我个人迷茫的感觉吧),所以我狂妄的在下面回帖精通java 可能被其他的已经看到另一个风景的java程序员来说,我的狂妄很幼稚,不过我周围能接触到的已经有十年以上的程序员在java上的水准已经让我能看的清摸得着了,不妄自菲薄,但从语言角度来看由于,刚毕业对java的热度还很足所以颇为下功夫,与换过多门语言的老程序员来说,但从语言

Java 程序员最喜欢的 11 款免费 IDE 编辑器

Java开发人员需要花费大量的时间埋头于Java代码中,使用各种不同的IDE(Intergrated Development Environment)来开发Java代码,所以下面我将为大家介绍11个不同的IDE,这些IDE提供了多种功能,如:构建Java应用.TestNG.调试.代码检查.代码帮助.JUNIT测试.多元重构.可视化GUI构建器和代码编辑器.Java和Maven构建工具.ant.数据建模和构建查询,等等. 1.NetBeans NetBeans是一款用Java编写的开源IDE,是I