书评:Java的盛宴(中)-Java基础-Java-编程开发

Matlab结果性能评价---rms函数(计算矩阵、数组和向量元素均方根) 实例1:创建一个向量(正弦波)并计算其均方根值 实例2:创建一个二维矩阵并计算其均方根值 实例3:计算二维矩阵沿指定维度的均方根值 本例程配套完整源码下载 均方根(Root-Mean-Square Level): 向量x的均方根值为沿着指定的维度执行求和: 语法描述: y = rms(x)返回输入x的均方根值。如果x是行或列向量,y是实数值标量。对于大小尺寸大于1矩阵x,y包含沿x的第一个数组维度计算的均方根值。例如,如果x是N > 1的N*M矩阵,那么y是1*M行向量,对应x矩.. 阅读详情
<script type="text/javascript" src="http://pagead2.googlesyndication.com/pagead/show_ads.js"> </script>

本文的上半部分发表以后,引起了一些读者的兴趣。有读者对我所说的“许多普通读者面对书海,仍然无所适从”大有同感,并且询问到具体如何选书买书的问题。其实,同样的问题在各种场合包括论坛、技术讲座上,我曾经无数次被问到,所以在继续介绍Java好书之前,我先花一点篇 幅说明一下。

关于选书的经验之谈

以我个人的经验来看,选中适用图书的关键,在于“知己知彼”。知己,当然就是对自己有正确的定位。拿Java来说,你在购买第一本Java图书之前,需要确定自己处于什么层次。如果编程经验较少,对基本的程序设计语言概念都知之甚少的话,《Java核心技术》或者《Java编程思想》就不太合适了,这一层次的巨著都在书的最前面明确说明读者需要“一定的编程经验”,而《Java语言导学》、《21天学通Java2》可能是你的正确选择。如果你学习过其他程序设计语言,了解“关键字”、“函数”、“数据类型”等等基本概念,但是对面向对象完全是门外汉,那么《Java编程思想》是一个很好的起点,它是典型的对象优先(ObjectFirst)教学法的代表。如果你已经是有一定经验的C/C 程序员,《Ja鄄va核心技术》显然最适合你,因为书中有许多专门针对C/C 程序员的提示,而且循着“环境·语言结构·面向对象”顺序讲解。其余类别的图书也可以按照这种思路选择。

此外,我有一个特别的建议:如果你的英文不错,建议入门的时候以英文版为主,辅以一本中文基础教材,尤其是面向对象的概念方面,英文直接阅读理解,往往比中文更加容易。因为面向对象概念其实涉及语言和知识表示中较深层次,恰恰是不同语言区别较大,不容易移译的地方。加之国内早期翻译不够审慎,而且统一性不足,使用中文术语体系理解,有时候反而事倍功半。就以“面向对象”一词来说,新手对此是很难望文而生义的,这是典型的不良翻译范例。曾经有一个比较夸张的笑话,说有人将《面向对象方法》当成谈恋爱技巧书买了回去,其实正说中了此译的弊病。相对而言,海外译为“物件导向”,要更接近原意。这里的对象=object,就是中文的物体、事物乃至事情,所以《Ja鄄va编程思想》有“万事万物皆对象”(ev鄄erthingisanobject)的说法。而这里的面向=oriented,其实是“以……为重点/中心”、“(此方法/领域中)……很重要”的意思。所以面向对象=object oriented的英文原意,其实是“以事物表示为中心”之义。时至今日,专业人士当然不再可能有出上述笑话的可能,大家反而已经习惯这一术语体系,并且母语化了。但是学习面向对象技术的新手呢,他们仍然免不了在“类”、“类型”、“接口”、“实例”、“成员”、“方法”、“实现”、“协定”、“字段”、“属性”、“服务”、“消息”……构成的语词森林中筚路蓝缕。从这一点来说,国内高等院校开始双语教学,是有其益处的。

正确选书的第二个重要环节就是知彼了,也即尽量多地了解相关图书信息。遗憾的是,目前国内客观而且有内容的书评类资料非常缺乏,出版社提供的信息又往往公信力不够。本专栏的目的之一,就是尝试对此情况有所补益。当然,普通读者的获知手段并非没有。第一手的信息,包括出版社、作译者的情况,出版前言、作译序、图书外装帧的介绍文字和设计水平都能透露制作者在此书上花费的功夫几何。前言和序纯属八股文字的图书,作译者用心程度就非常值得怀疑。此外,国内各主要专业网上书店(china pub.com,第二书店,华储等等)都有类似Amazon的自由书评以及各种销售排行榜(不少实体书店也会提供销售排行榜),虽然成色远较Amazon为逊色,但还是很值得参考的,毕竟这些都反映着客观因素。尤其是china pub上外版书有直接到Amazon该书原文版的链接,可以很方便地了解原版的评价,然后考虑翻译质量,即可八九不离十了。本报定期刊登的各出版社“销售热点”、“书店经理荐书榜”等等栏目也是图书情况的重要参考。至少,你可以了解到某种、某类书市场上哪些销售良好,哪些是出版社的重点产品。

老实说,目前选书买书的确不是易事。撰写本文过程中,我所查询到的Java图书不下六七百种,但是真正值得评论的却在30种以内。看来,国内出版界离正确的方向还有不小的差距。

继续我们的Java图书盛宴。在综合和入门层次图书之后,我们已经更上一层楼,可以看到更广阔的Java世界图景。首先进入我们视野的是语言编程经验和深入层次图书,面向中级读者。正如著名程序设计专家Sun公司杰出工程师GuySteele所说:“对于一门程序设计语言,你需要了解三样东西:一是语言核心,即语法结构;二是语言的词汇,包括所提供的数据结构和功能设施;三是语言的习惯用法。”一般的程序设计图书只会涉及到前面两点,而要讨论第三点,往往需要作者有大量的代码开发和阅读经验,难度极大,所以,这一层次目前国内市场上所见图书,基本上都是国外翻译作品。

YOLOv11改进策略【损失函数篇】| 引入Soft-NMS,提升密集遮挡场景检测精度,包括GIoU-NMS、DIoU-NMS、CIoU-NMS、SIoU-NMS、 EIou-NMS 传统的非极大值抑制(NMS)算法在目标检测中存在一个问题,即当一个物体的检测框与具有最高得分的检测框M有重叠(在预定义的重叠阈值内)时,会将该检测框的得分设置为零,从而导致该物体可能被遗漏,降低了平均精度。为了解决这个问题,作者提出了Soft-NMS算法。本文将YOLOv11默认的NMS修改成GIoU-NMSDIoU-NMSCIoU-NMSSIoU-NMSEIou-NMS。 阅读详情

相关推荐

ESP32 开发实战:VS Code 头文件波浪线及编译错误的终极解决方案

本文针对ESP32开发者在VS Code中常见的头文件红色波浪线和fatal error编译错误,提供了终极解决方案。通过详细讲解如何配置c_cpp_properties.json文件来修复编辑器智能提示,以及如何修改CMakeLists.txt来修正编译器路径,帮助开发者彻底解决环境配置问题,提升开发效率。

prometheus9mon的博客 293

书评:Java的盛宴(下)-Java基础-Java-编程开发

google_ad_client = "pub-8800625213955058";/* 336x280, 创建于 07-11-21 */google_ad_slot = "0989131976";google_ad_width = 336;google_ad_height = 280;//<script type="text/javascript"

java专栏 383

从零开始用STM32驱动RGB屏:配置PCLK、DE同步信号的避坑指南

本文详细介绍了如何使用STM32驱动RGB接口LCD屏幕,重点解析了PCLK配置、同步信号极性和DE使能等关键参数的设置方法。通过实战代码示例和常见问题排查指南,帮助开发者避免常见配置错误,实现稳定的显示效果。特别针对800x480 IPS屏提供了优化建议和调试技巧。

sky77的博客 539

书评:Java的盛宴(上)-Java基础-Java-编程开发

google_ad_client = "pub-8800625213955058";/* 336x280, 创建于 07-11-21 */google_ad_slot = "0989131976";google_ad_width = 336;google_ad_height = 280;//<script type="text/javascript"

java专栏 323

HC32F460的GPIO重映射实战:如何用3步搞定SPI引脚冲突问题

本文详细介绍了HC32F460的GPIO重映射功能,通过三步操作解决SPI引脚冲突问题。文章解析了HC32F460的FuncGroup功能分组机制,提供了具体的寄存器配置步骤和验证技巧,并对比了与传统方案的性能优势,帮助工程师灵活配置引脚,优化硬件设计。

t4y5u6i7o的博客 918

Simulink智能驾驶场景探索:自动泊车系统设计与验证

自动泊车系统(APS)传感器模块:用于检测车辆周围的障碍物和其他车辆的位置。路径规划模块:根据传感器数据生成最优的泊车路径。控制器模块:根据路径规划结果生成转向角、速度等控制信号。执行器模块:根据控制器生成的信号调整车辆的方向盘、油门和刹车。在本实例中,我们将使用超声波传感器和摄像头来检测车辆周围的环境,并使用PID控制器实现自动泊车功能。通过本教程,我们介绍了如何使用 Simulink 进行自动泊车系统的仿真。背景介绍:理解自动泊车系统及其在智能驾驶中的应用。所需工具和环境。

MHD0815的博客 505

|转| Java的盛宴

笼统意义上的Java实际上已经成为一个大迷宫,发展方向也非常不确定,即使是许多专业Java开发人员也无法了解全豹了。在这样的大背景下评价Java图书,其实是并不讨好的差事。因此,我们将内容分为三部分,本期仅讨论Java语言层次的综合类和入门图书。 入门书似乎是技术含量低的代名词,实则不然,要写一本好的入门书其实是非常难的。比如说吧,笔者惊奇地发现,国内的作者居然近乎完全口口相传、人云亦云似地还在大

chenchen的专栏 2909

【电源专题】案例:对比不同电池在不同电流下的电池放电曲线

无

一点硬件 2840

攥在手掌里的Java

作者:风过回廊 文章来源:http://www.sf.org.cn/ 我是从读王森先生的书正式开始Java的手机游戏开发。《Java手机程序入门及应用》一书让我初窥门庭,而《Java深度历险》则给我留下了深刻的印象。所以说,对于王森先生的文章,我是不陌生的。作为一个J2ME手机开发的铁杆鼓吹手,我一直都在不遗余力的向周围有志于移动应用领域开发的朋友们宣传MIDP并且推荐王先生的著作。J可想而知,当

mobilechannel的专栏 1095

【银河麒麟V10】【桌面】【服务器】系统启动问题

1、如果之前运行好好的,重启后系统报错,一般80%是因为fstab的问题,回想下之前有没有添加过外接存储,修改过/etc/fstab,如果是的话一般是因为存储异常(比如网络存储无法连接,本地存储路径变化)导致系统开机自检失败,导致无法正常启动; 处理方式:进入单用户(单用户进入的几种方式上面有专门文章介绍),修改/etc/fstab,将新增的内容暂时注释掉,然后重启系统,能正常进入系统后再分析失败原因。 ...

桂安俊@KylinOS 3万+

Arduino I2C for TCA9548A应答扫描程序

Arduino I2C for TCA9548A应答扫描程序

perseverance51博客 1119

计算机毕业设计java爱阅书友会 “悦读圈”社群共读平台 “书伴”智能阅读社交系统

书架落灰、读书孤单、书评散落?把“找书、共读、笔记、交换”装进一个 App:扫码即可识别全书信息,AI 推荐同好书单;千人共读打卡,语音笔记自动生成金句海报;读完一键上架换书,快递上门收寄。爱阅书友会用一条链路把阅读从个人行为变成社交盛宴。

sheji3114的博客 788

ARFoundation系列讲解 - 24 锚点

一、添加平面检测和平面可视化 请参考 ARFounnation快速入门-08平面检测 案例 二、添加射线检测 1.在AR Session Origin 组件上添加ARRaycastManager 脚本

a451319296的博客 4876

《程序员》9月刊最新上市:软件工程四十年

 本期特别策划自1968年SEI提出软件工程的概念至今,已经整整40年了。40年里,计算环境发生了天翻地覆的变化,简单的字符终端演变为互联网的云计算;开发方式也从个人英雄主义发展到集体兵团作战。此时此刻,回顾软件工程的发展历史,有助于我们了解过去,看清现在,展望未来。 专题布局:(1)四十年软件工程故事(2)软件的未来(3)以实践为本,集百家之长(4)关注软件工程的国际标准和人才标

《程序员》官方BLOG 2万+

假人有限元模型

假人模型,车辆碰撞假人有限元模型,适合做乘员安全的研究者利用

Data-Structures-and-Algorithm-Analysis-in-Java.pdf

作者: Weiss, Mark A. 出版社: Addison Wesley Data Structures and Algorithm Analysis in Java is an “advanced algorithms” book that fits between traditional CS2 and Algorithms Analysis courses. In the old ACM Curriculum Guidelines, this course was known as CS7. This text is for readers who want to learn good programming and algorithm analysis skills simultaneously so that they can develop such programs with the maximum amo...

话题讨论 征文--谈论大数据时我们在谈什么 获奖名单公布

话题讨论 征文--谈论大数据时我们在谈什么 获奖名单公布

qq_43667070的博客 209

C# WinForm 基于DirectShow.dll编写的程序,可边预览边保存视频,音频和图片

基于微软的DirectShow.dll的二次开发1.自动识别连接的摄像头跟麦克风且可以对其进行选择(默认选中第一个)2.可录制wmv和avi两种格式的视频并且都带有音频,avi可以录制的分辨率和帧数进行选择,wmv默认进行了淸晰度优化如不喜欢可去除代码中有相关提示3.可在预览点开之后进行拍照,也可边录制视频边拍照4.添加了视频和音频的压缩功能(酌情使用)这次二次开发发现C#对DirectShow的相关信息太少,这次做完也不敢藏私共享出来,还望大家指正

《程序员》2013年4期精彩内容:中国云计算大势图

《程序员》封面报道:中国云计算大势图 在美国,Amazon的AWS和RackSpace等IaaS服务已非常普及,其上支撑着Engine Yard、Heroku等许多PaaS平台,共同为更多的XaaS服务企业和其他社会化、移动互联网等领域的创业公司不断兴起提供了土壤,形成生机勃勃的生态系统。与此相比,中国的云计算还有较大差距。本期封面报道邀请了多位一线云计算专家,全景剖析了中国云计算的现状与趋势,分...

《程序员》官方BLOG 696

Camera2Demo

在Camera2 的基础上进行封装,使得Camera2一堆初始化逻辑与Activity分离,降低耦合度,完成预览拍照并保存的操作

话题讨论&征文--谈论大数据时我们在谈什么 获奖名单公布

从社会发展趋势的角度,很明显大数据会是目前肉眼可及的视野范围里能看到的最大趋势之一。从传统IT 业到互联网、互联网到移动互联网,从以智能手机和Pad 为主要终端载体的移动互联网到可穿戴设备的移动互联网,然后再到万物互联的物联网,这一定是不可违抗的发展规律和前进方向。伴随着这个趋势必然有越来越多、形态越来越丰富的超量数据不断产生,而大数据明显是由此衍生出来的明确且必然的发展趋势。

优快云 官方博客 6万+

话题讨论&征文--谈论大数据时我们在谈什么 获奖名单发布

    从社会发展趋势的角度,非常明显大数据会是眼下肉眼可及的视野范围里能看到的最大趋势之中的一个。从传统IT 业到互联网、互联网到移动互联网,从以智能手机和Pad 为主要终端载体的移动互联网到可穿戴设备的移动互联网,然后再到万物互联的物联网,这一定是不可违抗的发展规律和前进方向。伴随着这个趋势必定有越来越多、形态越来越丰富的超量数据不断产生,而大数据明显是由此衍生出来的明...

weixin_33869377的博客 109

Spring AI + GPT-5.5 + Ollama 配置教程:Base URL、超时与流式调用

由于不同 Spring AI、Spring Boot 小版本之间仍可能存在差异,创建项目时应检查 Spring Initializr、Spring AI BOM 和官方兼容矩阵,不要直接复制旧教程中的 Starter 名称和版本号。多人项目最好隔离不同客户端,并在脱敏前提下记录最终 URL、状态码、请求耗时、请求 ID 和模型 ID。Spring AI 接入模型 API,至少要同时确认 Starter、Base URL、请求路径、API Key、模型 ID、连接超时、读取超时和流式客户端这 8 项。

2601_95893075的博客 222

【JVM】对象内存布局

HotSpot JVM 中,Java 对象内存布局由对象头(12字节,含Mark Word与压缩Klass Pointer)、实例数据及对齐填充构成,总大小为8字节倍数。对象头支持锁状态动态复用,指针压缩使引用仅4字节,但堆超32GB时失效。实例字段按类型优先级重排序以减少间隙,最小对象大小为16字节。通过JOL工具可精准验证布局,理解锁机制、GC、伪共享等底层行为。

2301_79732484的博客 149

V8 机制、手写核心函数与 TypeScript 类型体操

或固定初始化(如数组先定长、对象先给全字段)保持类型与形状稳定;这些都比"换框架"更基础。只能处理纯数据(丢函数、Date、RegExp、循环引用报错)。生产级深拷贝要处理:原始值短路、循环引用、V8(Chrome / Node 的 JS 引擎)不是"解释一行跑一行"那么简单,它用。图:V8 执行流程——解释执行 + 热点优化,优化失败会 Deopt 回退。JS 内存自动管理,但"自动"不等于"不会漏"。是"固定间隔最多执行一次"。手写 Promise 是"懂异步"的试金石。是"停下后才执行最后一次",

qq_38468358的博客 328

Java EE 进阶:8.MyBatis 操作数据库(入门)(第一弹)

Java EE 进阶:8.MyBatis 操作数据库(入门)(第一弹)

要努力去发光,而不是被照亮~ 115

Spring Boot 数据源与 MyBatis(-Plus) 自定义配置详解

本文详解 Spring Boot 中单数据源环境下 HikariCP 与 MyBatis-Plus 的自定义配置。通过手动声明 SqlSessionFactory,实现下划线转驼峰、日志输出、一级缓存策略等精细化控制。结合 HikariCP 核心参数调优(如最大连接数、连接生命周期),确保高性能与稳定性。适用于仅需访问单一数据库的场景,避免多数据源复杂性,兼顾性能与可维护性。

BADAO_LIUMANG_QIZHI的博客 194

LeetCode Hot 100 二叉树专题(二)3 题(Java)

本篇文章共 3 题:543. 二叉树的直径、102. 二叉树的层序遍历、108. 将有序数组转换为二叉搜索树。 每道题都统一按「① 题目分析 & 解题思路 → ② 常见解法(附代码)及讲解 → ③ 知识点总结」的顺序组织;代码使用 Java 编写,节点定义沿用 LeetCode 默认的 TreeNode。

2401_88612756的博客 364

Decorator

TaskDecorator 是异步场景下"跨线程传递上下文"的标准方案,主要用于传递 MDC、用户信息、数据源路由等上下文数据,核心价值是让异步任务的日志链路不中断、业务上下文不丢失。TaskDecorator 是 Spring 提供的一个钩子接口,用于在异步任务执行前对 Runnable 进行包装,常用于跨线程传递上下文。如果你在项目中遇到具体的异步上下文传递问题,可以把代码贴出来,我帮你给出最合适的 Decorator 方案 👍。✅ 核心能力:在线程切换时,把"父线程的上下文"搬到"子线程"

wlwork66的博客 103

数据库乐观锁深度解析:MySQL、PostgreSQL 实战 + Spring Boot 集成指南

Oracle 提供了ORA_ROWSCN伪列(System Change Number),记录最后修改行的 SCN,类似 PostgreSQL 的xmin。实践中通常仍使用 version 字段方案,逻辑与 MySQL 完全相同。-- Oracle:通过 ORA_ROWSCN 实现乐观锁-- 更新时比对 SCN// 自定义注解// AOP 切面@Aspect@Component@Slf4jtry {

yjc_1111的专栏 396
上一篇: Weblogic81和Hibernate 的集成问题-Java基础-Java-编程开发
下一篇: 书评:Java的盛宴(上)-Java基础-Java-编程开发
java169
博客等级 码龄18年 27粉丝 2568原创
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

当前余额3.43元 前往充值 >
需支付:10.00元
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付元
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值