引言
您是否曾经为了提供一个“One Line”的解决方案而彻夜地查看源代码?现在您不用了。 您是否曾经为了理解某个算法而冥思苦想、阅览群书?现在您不用了。 您是否曾经为了提升0.1秒的性能而对N种实现方案进行严格测试和对比?现在您不用了。 您是否曾经为了避免多线程死锁问题而遍寻高手共同诊治?现在您不用了。 ……在学习和使用Java的过程中您是否在原本可以很快掌握或解决的问题上耗费了大量的时间和精力?也许您现在不用了,本书的很多内容都是我用曾经付出的代价换来的,希望它能帮助您少走弯路!
那些所谓的架构师、设计师、项目经理、分析师们,已经有多长时间没有写过代码了?代码是一切的基石,我不太信任连“Hello World”都没有写过的架构师。看看我们软件界的先辈们吧,Dennis M.Ritchie决定创造一门“看上去很好”的语言时,如果只是站在高处呐喊,这门语言是划时代的,它有多么优秀,但不去实现,又有何用呢?没有DennisM.Ritchie的亲自编码实现,C语言不可能诞生,UNIX操作系统也不可能诞生。Linux在聚拢成千上万的开源狂热者对它进行开发和扩展之前,如果没有Linus的编码实现,仅凭他高声呐喊“我要创造一个划时代的操作系统”,有用吗?一切的一切都是以编码实现为前提的,代码是我们前进的基石。
这是一个英雄辈出的年代,我们每个人都希望自己被顶礼膜拜,可是这需要资本和实力,而我们的实力体现了我们处理技术问题的能力:
你能写出简单、清晰、高效的代码?——Show it!
你能架构一个稳定、健壮、快捷的系统?——Do it!
你能回答一个困扰N多人的问题?——Answer it!
你能修复一个系统Bug?——Fix it! 你非常熟悉某个开源产品?——Broadcast it!
你能提升系统性能?——Tune it! ……
但是,“工欲善其事,必先利其器”,在“善其事”之前,先看看我们的“器”是否已经磨得足够锋利了,是否能够在我们前进的路上披荆斩棘。无论您将来的职业发展方向是架构师、设计师、分析师、管理者,还是其他职位,只要您还与软件打交道,您就有必要打好技术基础。本书对核心的Java编程技术进行了凝练,如果能全部理解并付诸实践,您的基础一定会更加牢固。
本人免费整理了Java高级资料,涵盖了Java、Redis、MongoDB、MySQL、Zookeeper、Spring Cloud、Dubbo高并发分布式等教程,一共30G,需要自己领取。
传送门:https://mp.weixin.qq.com/s/osB-BOl6W-ZLTSttTkqMPQ。
本书特色
深。本书不是一本语法书,它不会教您怎么编写Java代码,但是它会告诉您,为什么StringBuilder会比String类效率高,HashMap的自增是如何实现的,为什么并行计算一般都是从Executors开始的……不仅仅告诉您How(怎么做),而且还告诉您Why(为什么要这样做)。
广。涉及面广,从编码规则到编程思想,从基本语法到系统框架,从JDK API到开源产品,全部都有涉猎,而且所有的建议都不是纸上谈兵,都与真实的场景相结合。
点。讲解一个知识点,而不是一个知识面,比如多线程,这里不提供多线程的解决方案,而是告诉您如何安全地停止一个线程,如何设置多线程关卡,什么时候该用lock,什么时候该用synchronize,等等。
精。简明扼要,直捣黄龙,一个建议就是对一个问题的解释和说明,以及提出相关的解决方案,不拖泥带水,只针对一个知识点进行讲解。
畅。本书延续了我一贯的写作风格,行云流水,娓娓道来,每次想好了一个主题后,都会先打一个腹稿,思考如何讲才能更流畅。本书不是一本很无趣的书,我一直想把它写得生动和优雅,但Code就是Code,很多时候容不得深加工,最直接也就是最简洁的。这是一本建议书,想想看,在您写代码的时候,有这样一本书籍在您的手边,告诉您如何才能编写出优雅而高效的代码,那将是一件多么惬意的事情啊!
本书面向的读者
寻找“One Line”(一行)解决方案的编码人员。
希望提升自己编码能力的程序员。
期望能够在开源世界仗剑而行的有志之士。 对编码痴情的人。
如何阅读本书
首先声明,本书不是面向初级Java程序员的,在阅读本书之前至少要对基本的Java语法有初步了解,最好是参与过几个项目,写过一些代码,具备了这些条件,阅读本书才会有更大的收获,才会觉得是一种享受。本书的各个章节和各个建议都是相对独立的,所以,您可以从任何章节的任何建议开始阅读。强烈建议您将它放在办公桌旁,遇到问题时随手翻阅。本书附带有大量的源码(下载地址见华章网站www.hzbook.com),建议大家在阅读本书时拷贝书中的示例代码,放到自己的收藏夹中,以备需要时使用。
目录
第1章Java开发 中通用的方法和准则
第2章基本类型
2.png
第3章类、对象及方法
3.png
第4章字符串
4.png
第5章数组和集合
5.png
第6章枚举和注解
6.png
第7章泛型和反射
7.png
第8章异常
8.png
第9章多线程和并发
9.png
第10章性能和效率
10.png
第11章开源世界
11.png
第12章思想为源
12.png
部分内容
2222.png
3333.png
网友评论