pmp访谈法和焦点小组区别

本杰明·J·埃文斯(Benjamin J. Evans)和戴维·弗拉纳根(David Flanagan) 撰写的第六版Java in Nutshell是对Nutshell系列中久经考验的Java的更新。 该版本涵盖了经验丰富的Java开发人员的Java 8,但它也旨在作为新开发人员的学习途径。 本书的第5版介绍了Java 5,因此需要进行更新。

该版本认识到开发人员可以轻松访问Internet,并且可以轻松找到Java的API文档以及有关Stack Overflow常见问题的解答。 但是,这并不意味着它会漏掉细节。

去年11月,我获得了为InfoQ复习本书的机会,因此我跃跃欲试。 在2012年,我读了Ben的其他著作之一,《 The Well-Grounded Java Developer》 。 我非常喜欢这本书,并在我的网站上写了一篇有关它的评论 。 当我说Java简而言之,第6版专注于Java 8时,我认为阅读和复习它是使Java技能保持最新状态的绝佳方法。

我不建议您从封面到封面地阅读这本书。 如果您有摄影记忆,这可能会为您服务。 但是否则,您将不被本书中大量的知识和细节所淹没。 我确实从头到尾读了这本书,花了我几个月的时间。 原因很简单:它只是参考书,而不是讲故事的技术书,教你如何使用新技术开发应用程序。 即使它不是翻页器,我也发现几乎每一章都学到了新东西。

本书的前半部分重点介绍Java平台:语法,面向对象的程序设计,Java的类型系统及其内存模型和并发方法。

作为对Java 8感兴趣的开发人员,我发现流(第8章),日期API(第9章)和Nashorn(第12章)是最吸引人的。 我目前在任何项目中都没有使用Java 8,但是我打算尽快使用,因此我希望届时将回顾这些章节。

最近,InfoQ跟作者Ben Evans谈到了这本书。

InfoQ:您在序言中写道:“在编写新版的大卫经典著作时,我希望体现史前树的精神。” 您提到了原著的顽强形式,感觉和强调的重要部分。 您对结果满意吗?

埃文斯:我希望本期《果壳》是将本书带入现代发展实践时代的一个很好的尝试。 但是,我确实将其视为一项正在进行的工作。 希望,如果O'Reilly编写了第7版,我将有机会解决一些我认为没有涵盖在当前版本中的主题和领域。 这本书的制作时间很紧,我没有机会做第六版我想做的一切。

InfoQ:您想详细介绍哪些主题?

埃文斯Evans):最大的事情(如果是第七版,这是我的洗衣清单上的第一件事)是将所有真正属于lambda的内部类更改为实际lambda。 我接触了其中一些,但时间用完了。 我还将修剪内部类的覆盖范围,并放置lambda以及对Java的OO前端和中心的更改。 现在,随着许多开发人员熟悉其他语言,现在使用无状态特征描述Java接口变得更加有意义。

我还想扩展Java的类型系统的范围-讨论Java进行的类型推断以及可能的方法。 类型注释也应该引起人们的关注,因为它们仍然是语言的一个未被充分利用和未被充分认识的伟大功能。 最后,我想对G1进行适当的深入研究,特别是考虑到有关它成为Java 9中的默认收集器的争论。

InfoQ:显然,有关Nashorn的第12章是新的一章。 还有其他需要大量工作的章节吗?

埃文斯(Evans):实际上,纳斯霍恩(Nashorn)是最容易写的章节之一。 部分原因是因为通过伦敦Java社区(LJC),我们已经进行了许多关于Nashorn的活动,所以本章的写作确实很流行。 数据格式一章花了很长时间,但我很幸运能得到一位LJC成员的帮助,他为新的Date&Time的测试用例提供了支持,因此该部分的编写工作比它花费的时间少。本来应该。

也许出乎意料的是,这些花费了较长时间的章节通常是David原始文本中的章节,看起来它们只需要相当少量的编辑即可。 除了对较新语言版本的更改(例如,尝试使用资源,lambda等)之外,第2章(语法章节)几乎未受影响。 我必须阅读并重新阅读本章,以确保Java 5时代里所说的一切在今天仍然是正确的。 因此,这比我预计的要花费更多的时间,尽管我们非常谨慎,但还是遇到了一个或两个错误。 但是,一些老鹰眼的读者发现了它们,我们已经将其改正用于下一次印刷。

InfoQ:您最喜欢撰写哪一章或哪一部分? 至少?

埃文斯(Evans): 《纳斯霍恩语》一章很好玩-实际上,我让自己在写完《 stop》时就停止写这本书,并故意将其其余部分留到最后,作为一种贿赂,使我自己可以完成其他一些章节准时。

第一章主要写在项目开始时。 我当时在苏格兰的一个小岛上,那里唯一的互联网连接是通过使用我的电话进行的-它只能以9.6Kb / s的数据速率进行连接。 因此,我无法浏览网络,无法阅读基于网络的邮件,但是Atlas创作工具O'Reilly要求我尝试一下仍然有效-因为它们基于ssh,Asciidoc和git。 因此,实际的写作经验很棒-没有干扰,我仍然可以有效地工作。

InfoQ:您认为Java 8最引人注目的功能是什么? Java 9呢?

埃文斯(Evans):最明显的答案是lambda,它们是如此巨大的变化,以至于很难与之抗衡。 但是,我认为时间会证明Java的OO模型的更改(默认方法提供了在接口中实现的方式)是否实际上导致接口被视为本质上是无状态的特征。 这将是Java开发人员思想的巨大转变。 适当地支持Nashorn的引擎盖下的变化非常令人兴奋,但对于大多数人来说可能不是所有可见的变化。

Java 9仍在发展。 最大的变化将是模块化,以及失去对非标准实现包的访问。 我认为这会让一些商店感到不安-尽管每个人都知道您不应该直接链接到内部软件包,并且API在发布之间可能(并且确实)会发生更改或消失,但我仍然知道很多项目做这个。 就个人而言,自从Java 7出现以来,我还没有看到直接链接到com.sun。*或sun。*的必要性,但是人们仍然这样做,甚至是经验丰富的开源项目,他们确实应该对此有所了解。

话虽如此,我认为模块化与JDK 9平台中的其他优点(HTTP / 2支持,新的JShell REPL,Nashorn的重大改进,重写的JVM日志记录,适当的低级JIT控制)相结合将证明是无法抗拒的大多数公司。 但是,我确定会有一些争夺战需要很长时间才能升级到9-所以我认为推动Java 7停产的一些推动力是因为Oracle深深地知道Java 8将拥有成为长期支持版本。

InfoQ:您会为经验丰富(超过10年)的Java开发人员推荐什么样的阅读策略? 平台的新手呢?

埃文斯:果壳? 我认为有经验的开发人员应该主要将其用作参考文本-尝试将其与他们的“从沟壑”中进行对比,并考虑Java语言的功能如何在很大程度上影响代码。

例如,最近又与Scala进行了合作,我对Java分为语句和表达式带来的固有复杂性感到震惊。 当然,事后看来是20/20,我倾向于同意Java的向后兼容性和平台稳定性对于大规模关键应用程序非常重要的想法。 这些特性很值得一些烦人的事,因为最近的语言已经能够回避了。 实际上,您可能会争辩说,其他JVM语言之所以能够成功(在某种程度上来说是成功的),是因为需要对Java进行详细检查(无论其优缺点)。

对于新手,我建议不要尝试仅从Nutshell本身学习Java。 还有其他一些很棒的书,包括Bert Bates和Kathy Sierra的常青Head First Java 。 对于更多的视觉学习者,我还可以从O'Reilly获得“ Java 8简介 ”视频。

如果我们确实获得涵盖Java 9的第7版,并且只要JShell能够按时完成,那么我已经计划通过大量使用REPL来开放这本书,使其对Java新手更好。 对于这个版本,我不会尝试通读。 相反,我将专注于第1、3-5和8-10章。 其他章节(尤其是第2章)可以更多地用作初学者的参考资料。

InfoQ:似乎没有太多关于使Java流行的框架的参考(例如,动态JVM语言,Spring或许多Web框架中的任何一个)。 您是否认为有必要了解Java语言的基础知识以有效地使用其框架?

埃文斯(Evans):部分是书中的空间问题。 当然,我们确实拥有Nashorn形式的动态语言,但是Nutshell一直是核心语言。 Java是一个巨大的生态系统,我非常喜欢这样的想法,即我们应该有专门的文本来覆盖这些框架,而且我确实认为理解基础知识会有所帮助。 我认为每个优秀的Java开发人员都应了解例如类加载和内存管理的基础知识。

我在写我的上一本书( 《完善的Java开发人员》 (Manning)时)也发现,对太多主题的过多介绍可能会削弱焦点,并且确实分散了读者群-有些人喜欢,其他人在评论中都非常满意(“我要特别记住的是:“如果我想对非Java主题进行基本介绍,我就去看一堆博客文章”)。

但是,我很清楚,在很多情况下“您不能一直取悦所有人”。 亚马逊上的Nutshell最早的评论之一来自于某人,他很生气,因为我们将最后的参考部分删掉了-尽管事实上Java的标准库太大了,如果我们尝试过,那本书就会太重了,无法拿起,而且生产起来不经济。 果然,他给了我们1星。

虽然我知道我们不能取悦所有人,但如果我们取悦大多数读者,并且开发人员对这本书感到满意,发现它有用并很高兴他们买了这本书,那么我也感到高兴。

翻译自: https://www.infoq.com/articles/book-review-java-in-a-nutshell/?topicPageSponsorship=c1246725-b0a7-43a6-9ef9-68102c8d48e1

pmp访谈法和焦点小组区别

pmp访谈法和焦点小组区别_访谈和书评:《简而言之的Java》,第六版相关推荐

  1. pmp访谈法和焦点小组区别_访谈和书评:Spring Integration in Action

    pmp访谈法和焦点小组区别 由Mark Fisher,Jonas Partner,Marius Bogoevici和Iwein Fuld撰写的< Spring Integration in Ac ...

  2. pmp访谈法和焦点小组区别_时间,空间和访谈

    pmp访谈法和焦点小组区别 像大多数软件公司一样,Microsoft几乎所有的技术面试都涉及某种编码问题. 在那期间,我遇到了许多不同的问题. 它们通常都具有您可以很好地讨论一般问题空间,设计解决方案 ...

  3. java静态方法和非静态方法的区别_史上最全阿里 Java 面试题总结

    关注[ToBeTopJavaer],回复[答案],获取全套面试题答案,为明年的金三银四,做好充分的准备. JAVA基础 JAVA中的几种基本数据类型是什么,各自占用多少字节. String类能被继承吗 ...

  4. pmbook 知识领域 第六版_一张图说明PMBOK(第六版)49个过程、知识领域、过程组的关系...

    01 项目管理协会(PMI)的<项目管理知识体系指南>(PMBOK®指南)第六版已正式发布,2018年6月的PMP考试将启用PMBOK第6版作为最新的参考教材. 项目管理知识体系框架可以通 ...

  5. 速率法和终点法的区别_速率法,终点法

    山雨旅人 速率法和终点法的区分表象上是体现在反应曲线上,速率法呈现稳速上升或稳速下降,通常是这样的曲线: 下图1:典型下降速率法曲线1,项目AST(其中蓝线为主波长反应过程,绿线为副波长反应过程,黑线 ...

  6. 速率法和终点法的区别_生化分析仪检测中的终点法、两点法、双波长法有什么区别...

    生化分析仪检测中的终点法.两点法.双波长法有什么区别 2018-8-12 14:19 生化分析仪是用于检测人体肝功.肾功.血糖.血脂.心肌酶.离子等项目的仪器,是现在临床上肝.肾.心血管疾病等疾病的必 ...

  7. 速率法和终点法的区别_生化反应曲线解析1(终点法)

    在日常检验工作中,如果校准失败了.质控失控了.标本测值"你认为不准确"了,我们有很多途径去查找原因,其中查看反应曲线就是方法之一,而要想看懂和真正了解反应曲线,那么一定要了解生化检 ...

  8. 速率法和终点法的区别_两点法终点法速率法

    2 .固定时间法 苦味酸法测定肌酐采用此法. (两点法 ) 3 .连续监测法 对于酶活性测定一般应选用连续监测法,如丙氨酸氨基转 移酶.天冬氨酸氨基转移酶.乳酸脱氢酶.碱性磷酸酶.γ 谷氨氨酰基转移酶 ...

  9. 速率法和终点法的区别_两点法、终点法、速率法

    实用标准文案 精彩文档 什么叫两点法.终点法.速率法? 两点法:测定酶反应开始后某一时间内( t1 到 t2 )产物或底物浓度的总变化量以 求取 酶反应初速度的方法. 终点法:通过测定酶反应开始到反应 ...

最新文章

  1. maven 主工程 java_Maven创建Java Application工程(既jar包)
  2. 基于VB和EXCEL的报表设计及打印
  3. ES亿级数据检索优化,三秒返回突破性能瓶颈
  4. python3----列表
  5. 从binlog恢复数据及Mysqlbinlog文件删除
  6. IDEA创建SpringBoot
  7. 大兴新年大集 推10条文化旅游线
  8. 基于FPGA的SDRAM控制器设计(一)----------SDRAM初始化
  9. The server of Apache (四)——配置防盗链和隐藏版本信息
  10. 使django与数据库保持长连接
  11. 如何批量将 Word 文档转为 Svg 格式
  12. bochs怎么运行Linux系统,Ubuntu上使用Bochs
  13. 打印2018年的日历
  14. 编程语言的分类,以及网络瓶颈效应
  15. Eclipse 下载带有WTP 相应插件板本的地址
  16. 猪悟能淘宝商品下载专家v2.0 beta1.0版发布,欢迎测试!
  17. AI for Science年度激辩:AlphaFold成功难以复制,数据人才生态建设都是挑战|MEET2023...
  18. xml方式导出word优缺点:
  19. 弹性盒模型 Flex
  20. 2016小米实习生面试心得

热门文章

  1. 我今天吃了SHI,请对下联
  2. python求两条直线的交点_如何计算两条线的交点?
  3. 谈谈企业数字化转型必由之路--顶层设计
  4. 亲手搭建美团外卖、饿了么外卖红包公众号
  5. 四信5G工业智能网关智能变电站应用 让工业有“无线”可能
  6. 用Python重载运算符方法实现的复数类
  7. mysql存储过程同步本地_python-gitlab自动同步mysql存储过程以及本地文件上传gitlab...
  8. 未来网页设计的流行趋势是什么
  9. 调包侠系列之—调用face_recognition进行人脸识别
  10. 程序员修炼之路(四)走近腾讯 走进腾讯(一个关于面试准备的记录)