登入帳戶  | 訂單查詢  | 購物車/收銀台( 0 ) | 在線留言板  | 付款方式  | 聯絡我們  | 運費計算  | 幫助中心 |  加入書簽
會員登入 新註冊 | 新用戶登記
HOME新書上架暢銷書架好書推介特價區會員書架精選月讀2023年度TOP分類閱讀雜誌 香港/國際用戶
最新/最熱/最齊全的簡體書網 品種:超過100萬種書,正品正价,放心網購,悭钱省心 送貨:速遞 / EMS,時效:出貨後2-3日

2024年05月出版新書

2024年04月出版新書

2024年03月出版新書

2024年02月出版新書

2024年01月出版新書

2023年12月出版新書

2023年11月出版新書

2023年10月出版新書

2023年09月出版新書

2023年08月出版新書

2023年07月出版新書

2023年06月出版新書

2023年05月出版新書

2023年04月出版新書

『簡體書』像计算机科学家一样思考Java(第二版)

書城自編碼: 3661301
分類: 簡體書→大陸圖書→計算機/網絡程序設計
作者: [美]艾伦,[美]克里斯·梅菲尔德
國際書號(ISBN): 9787519856724
出版社: 中国电力出版社
出版日期: 2021-08-01

頁數/字數: /
書度/開本: 16开 釘裝: 平装

售價:NT$ 742

我要買

share:

** 我創建的書架 **
未登入.



新書推薦:
德意志精神:101个德国名人/大家小书译馆 贝克通识文库
《 德意志精神:101个德国名人/大家小书译馆 贝克通识文库 》

售價:NT$ 255.0
凯恩斯、拉斯基、哈耶克:经济思想如何影响世界
《 凯恩斯、拉斯基、哈耶克:经济思想如何影响世界 》

售價:NT$ 515.0
骗局
《 骗局 》

售價:NT$ 250.0
金融危机500年:金色的镣铐(纵观救市措施如何再造金融体系、重塑世界格局)
《 金融危机500年:金色的镣铐(纵观救市措施如何再造金融体系、重塑世界格局) 》

售價:NT$ 390.0
“600号”疗愈手册:告别焦虑
《 “600号”疗愈手册:告别焦虑 》

售價:NT$ 302.0
经纬度丛书·帝国为什么衰落:罗马、美国与西方的未来
《 经纬度丛书·帝国为什么衰落:罗马、美国与西方的未来 》

售價:NT$ 406.0
投资小白的财务自由之路
《 投资小白的财务自由之路 》

售價:NT$ 359.0
巫蛊乱长安:汉武帝晚年的夺嫡暗战
《 巫蛊乱长安:汉武帝晚年的夺嫡暗战 》

售價:NT$ 354.0

建議一齊購買:

+

NT$ 359
《 Python爬虫大数据采集与挖掘-微课视频版(大数据与人工智能技术丛书) 》
+

NT$ 648
《 Django实战 Python Web典型模块与项目开发 》
+

NT$ 599
《 PHP从入门到精通(微视频精编版) 》
+

NT$ 569
《 Go程序设计语言 》
+

NT$ 253
《 Visual Basic程序设计教程习题及习题解答(第5版)(6.0版) 》
+

NT$ 407
《 HTML5与CSS3网页设计基础(第2版) 》
編輯推薦:
本书是注重实践的计算机科学与程序设计教程,为许多大学与中学所采用。本书内容简明清晰、通俗易懂,而且特别重视用平实的语言来解释专业的术语,尤其适合没有经验或经验较少的人阅读。这本书从基本的编程概念讲起,逐渐谈到高级的面向对象编程技巧。
本书作者 Allen Downey 与 Chris Mayfield 在版的基础上做了大幅更新与扩充,他们会告诉你怎样把编程用作手段,来解决各种有趣的问题。每章内容都能安排在大学课程的某一周里面,而且每章末尾都有习题,可以促使你实践本章所学的内容。另外,AP Computer Science A (AP 计算机科学 A)考试与 Java SE Programmer I 认证所涉及的每个话题,几乎都会在这本书里谈到。
內容簡介:
每次揭示一个概念:通过带有范例的一系列小步骤,来逐渐解决某个复杂的问题。告诉你如何描述问题、如何构思解决方案,如何开发、测试并调试程序。学习输入与输出、决策与循环、类与方法、字符串与数组,以及递归与多态。告诉你怎样选出合适的程序开发方法,以及如何运用重要的调试技能来排除程序故障。
關於作者:
Allen Downey是Olin College of Engineering的教授。他拥有加大伯克利的计算机科学博士学位与MIT的硕士及学士学位。
Chris Mayfield是James Madison University的计算机科学副教授。他拥有普渡大学的计算机科学博士学位及犹他大学的两个学士学位。
內容試閱
前言
本书想要给没有经验或经验较少的读者介绍计算机科学与编程。我们会从基本的概念开始讲起,每遇到新的术语,笔者都会详细给出定义。这样,大家就能够循序渐进地了解书里的每个新想法。比较大的话题,例如控制流语句及面向对象编程,会分为多个小的范例,并用好几章来讲解。
笔者特意把这本书写得很精简。每章只有10 ~ 12 页,这样,如果当作大学课程的教材,那么刚好能用一星期讲完一章。当然了,这本书肯定不会把Java 的所有内容全都讲到,它只会把初学者必须掌握的编程结构与技巧展示出来。我们先从小问题与基础算法开始讲,逐渐过渡到面向对象的设计上面。以计算机科学领域的教学术语来说,这本书用的是“先讲过程,后讲对象”的教学法(也就是objects late 方法)。
本书的写作理念
本书遵循这样几条原则:
每次只讲一个概念
笔者把新手理解起来比较困难的话题,拆分成许多个小的步骤,每个步骤都对应一个新的概念,我们先理解当前讲的这个概念,然后再开始谈下一个概念。在Java 语言的特性与计算机科学的通用概念之间寻求平衡
这本书并不是专讲Java 的,而是想用Java 语言来编写范例代码,以演示计算机科学之中的概念。许多章节刚开始都会从Java 语言的某项特性讲起,但后还是会归结到计算机科学领域的概念上面。
力求简洁
笔者撰写本书时,有一项重要的目标,就是想写得尽量简短,让学生可以在一个学期的大学课程或AP 课程里面读完,并理解其中的内容。
谨慎处理专有名词
笔者尽可能在书中的少用术语,如果必须要用,那么一定会在使用之前先仔细给出定义。另外,笔者还会把每章所引入的新术语,在该章后的词汇表里面总结一遍。
涵盖各种程序开发策略
编写程序有许多种策略,可以从下往上写(bottom-up,自底向上),也可以从上往下写(top-down,自顶向下),还可以采用其他写法。笔者会演示许多种程序开发技巧,让大家选出合适的办法。
顾及不同程度的读者
编写程序的时候,我们必须知道这个程序要使用什么算法,必须确定我们要拿什么语言来写这个程序,还必须懂得如何调试其中的错误。即使你不懂这些内容,也还是可以从头开始慢慢学,因为笔者会在书里把这些知识以及相关的其他一些内容,逐步讲给大家听,而且会在附录D 里总结。
面向对象编程
有的Java 书开篇就谈类和对象,还有一些则是先讲过程式的(procedural)编程,然后逐渐过渡到面向对象的编程方式。
其实,Java 里面有许多面向对象的特性,都是为了解决以前那些编程语言的缺点而引入的,这些特性的实现方式,也受到这个因素影响。所以,如果不先讨论从前那些编程语言有什么样的缺点和问题,那么笔者就很难把Java 的某些特性解释给大家听。
当然我们会尽快(也就是从第9 章开始)讲解面向对象编程。然而笔者前面说过,这本书每次只介绍一个概念,只有把当前这个概念讲清,我们才会继续讲解下一个概念,因此,大家需要一定的时间,才会接触到面向对象的那一部分。
在Java 语言里,如果彻底不使用面向对象的特性,那么我们连一个程序都写不出来,即便是简单的Hello World 程序,也要用到对象。所以,在某些情况下,笔者会把当前必须用到的新知识点简要介绍一下,等到以后正式讨论该知识点时再详加解释。
读完全书之后,你几乎能把Java SE Programmer I 认证所要求的每个知识点都了解到,还有一些补充课程,参见Java 官网的教程页面:https://docs.oracle.com/javase/tutorial/。
这本书也适合参加AP Computer Science A(AP 计算机科学A)考试的中学生阅读,这项考试的内容包含面向对象的设计与实现[AP 是College Board(美国大学理事会)的注册商标]。AP 课程的知识点与本书相关章节之间的对应关系,参见https://thinkjava.org。
第二版与版的区别
新版是经过许多年才写成的,笔者在编写过程中,听取了几十位教师与几百名学生的意见。完整的修改情况参见本书的GitHub 网页。下面列出其中比较重要的地方:
第2 ~ 4 章
笔者重新编排了第1 章的内容,把理论部分与实践部分调整得更合理一些。新版的第2 章与第3 章,也比旧版更加清晰。另外,笔者这次会把与方法(method)有关的知识,合起来安排到一章(也就是第4 章)中,并且会给出有深度的范例。
第5 ~ 8 章
这几章也做了大幅调整,笔者添加了许多新的范例与图表,并删除了一些没有必要的内容。这次我们提前讲解字符串(把它放在数组的前面),这样就可以在循环问题里面使用字符串了。与递归有关的内容,单独设立一章,而且这次我们拿用其中的两节,来分别介绍二进制数与CodingBat。
第9 ~ 12 章
笔者修订这几章的时候,主要想把图表与解说讲得比原来更详细。现在的第9 章与第10 章,更加明确地突出了不可变对象与可变对象之间的区别,另外我们还添加了两节,分别讲解BigInteger 与StringBuilder。其余内容大致不变,但这次理解起来应该会容易一些。
第13 ~ 17 章
笔者调整了第13 ~ 14 章的内容,将ArrayList 提前讲解,而且把相关的范例,统合到一款名叫War 的卡牌游戏下面。第15 ~ 17 章是本次全新增加的内容,用来讲解更为高级的话题,例如二维数组、图形、异常、抽象类、接口与事件。
附录
笔者增加了附录B,用来更为详细地讲解文档与Javadoc。另外三个附录是版本来就有的,但这次的文字与排版更加清晰。
附录简介
本书正文里面的各章应该按照顺序阅读,因为后一章要讲的内容构建在前一章的基础之上。书后的四个附录则不用在意阅读顺序:
附录A:工具
这个附录描述怎样下载并安装Java,只有装好Java,你才能在电脑上编译Java 程序。另外,它简单介绍了DrJava 的用法,这是一套集成开发环境(Integrated Development Environment,IDE),主要给学生使用。这份附录还会提到检查代码质量所用的Checkstyle 工具,以及编写测试所用的JUnit 工具。
附录B:Javadoc
一定要给自己写的类和方法添加文档,这样才能让其他开发者(也包括你自己)将来能够明白,这些类跟方法应该如何使用。这份附录讲的就是怎样阅读并编写文档,以及如何使用Javadoc 工具。
附录C:图形
Java 提供了处理图形与动画的程序库,这是两个能够激发学习兴趣的话题。虽然这些库所用到的面向对象知识,大家要到学完第10 章之后才能完全理解,但我们不必等到那个时候,而是可以很早就开始使用。
附录D:调试
虽然整本书里面会提到各种调试建议,但是这份附录之中的建议更多,它会详细告诉你怎样调试程序。阅读正文的过程中,应该经常参考这个附录。
范例代码
书中的范例代码,几乎都可以从https://github.com/ChrisMayfield/ThinkJavaCode2访问。Git 是一种版本控制系统(version control system),能够记录并管理项目之中的文件,这些受到Git 控制的文件,可以放在同一个repository(仓库)里面(网址中的ThinkJavaCode2,就是这样一个repository)。
GitHub 是一个托管服务平台,可以存放Git 仓库,让用户通过网页方便地访问这些仓库。大家可以用下面几种方式,使用本书的范例代码:
? 种办法是点击网页中的Fork 按钮,这样就可以给GitHub 仓库创建复本。如果你还没有GitHub 账号,那么必须提前注册。做了Fork 之后,你就有了自己的GitHub 仓库,你可以用这个仓库管理自己所写的代码。另外,你还可以对这个仓库执行clone 操作,把其中的文件复制到自己的电脑里面。
? 还有一种办法是不对原仓库做fork,而是直接把那个仓库clone 下来,这样做不需要使用GitHub 账号,但同时你也无法通过GitHub 来管理自己对代码所做的修改。
? 如果你根本就不想使用Git 功能, 那么可以直接点击原仓库页面里的Download ZIP 按钮,或访问https://thinkjava.org/code2zip,把所有代码当成一份ZIP 压缩文件下载。
把原仓库clone 下来, 或者把ZIP 文件解压缩之后, 应该就会看到ThinkJavaCode2 目录了,其中的各个子目录,分别对应于本书的各章。
书中的范例代码都是用OpenJDK 11 开发并测试的。如果你的JDK版本比这个新,那么这些代码都能够正常运行,如果比这个旧,那么其中有一些代码可能无法运行。
书里印刷的代码,可以用在你自己的程序或文档之中。只要不是大量使用,就无需提前征求我们同意。比方说,拿书中的几段代码编写你自己的程序,不需要提前获得授权,但是销售或传播O’Reilly 书籍里面的范例,则需征求我们同意。引用书中的内容与范例代码回答问题,不需要提前获得授权,但是把大量范例代码纳入你的产品文档,则需征求我们同意。
我们乐意看到你在引用本书内容时标注资料来源,但这不是强制要求。如果要标注,那么通常应该按照标题、作者、出版社与ISBN 的顺序来写,例如“Think Java by Allen B. Downey and Chris Mayfield. (O’Reilly). Copyright 2020 Allen B.
Downey and Chris Mayfield, 978-1-492-07250-8”。
若不确定自己对范例代码的用法是否属于合理使用,或不确定这种用法是否需要征得我们同意,请联系permissions@oreilly.com 询问。
排版约定
本书采用下述排版约定。
斜体(Italic)
表示新术语、网址、电子邮件地址、文件名、文件扩展名。
粗体(Bold)
如果正文中的某个词会出现在每章后的词汇表里面,那么这个词在正文之中,就印成粗体。
等宽字体(Constant Width)
表示整段的程序代码,以及正文里面提到的程序内容,例如变量、函数、数据库、数据类型、环境变量、语句、关键字等。
等宽粗体(Constant Width Bold)
表示用户所输入的命令或其他文本。
O’Reilly 在线学习平台(O’Reilly Online Learning)
近40 年来,O’Reilly Media 致力于提供技术和商业培训、知识和卓越见解,来帮助众多公司取得成功。
我们有一群独家专家和创新者,他们通过图书、文章、会议和在线学习平台分享知识和技术。O’Reilly 的在线学习平台提供按需访问的直播培训课程、详细的学习路径、交互式编程环境,以及由O’Reilly 和其他200 多家出版社出版的书籍和视频。详情请访问http://oreilly.com。
联系方式
请将你对本书的评价和问题发给出版社:
美国:
O’Reilly Media, Inc.
1005 Gravenstein Highway North
Sebastopol, CA 95472
中国:
北京市西城区西直门南大街2 号成铭大厦C 座807 室(100035)
奥莱利技术咨询(北京)有限公司
这本书还有一个专门的网页,其中包含勘误表、范例代码,以及其他一些附加信息。这个版本的网址是:https://oreil.ly/think-java-2e。
涉及本书的意见与技术问题,可以发送至电子邮箱bookquestions@oreilly.com。
与我们的书籍、课程、会议、新闻等有关的详细信息,请参见http://www.oreilly.com 网站。
我们的Facebook:http://facebook.com/oreilly。
我们的Twitter:http://twitter.com/oreillymedia。
我们的YouTube:http://www.youtube.com/oreillymedia。
致谢
这些年来,有许多人给本书提出了建议与修改意见,笔者对此深表感激。下面列出从开源4.0 版以来给本书提供帮助的人士,早前版本的贡献者没有写在这里:
? Ellen Hildreth 使用本书在Wellesley College(维斯理学院)讲授数据结构,并且提供了一整套建议与修改意见。
? Tania Passfield 发现了词汇表里面的多余术语,那些术语当时已经不再出现于正文之中。
? Elizabeth Wiethoff 指出exp(–x2) 的级数展开式有误。另外,她还创作了本书的Ruby 版。
? Matt Crawford 提出了一整套修正意见。
? Chi-Yu Li 指出了书中一段范例代码里面的拼写问题及程序错误。
? Doan Thanh Nam 修正了书中的一个例子。
? Muhammad Saied 把本书翻译成阿拉伯文,并在翻译过程中发现了一些错误。
? Marius Margowski 发现了范例代码里面的一个矛盾之处。
? Leslie Klein 发现了exp(–x2) 的级数展开式之中的另一个问题,并在卡牌数组的示意图里发现了一处拼写错误,此外还帮助笔者把某些练习题设计得更加清晰。
? Micah Lindstrom 找到了好几个拼写错误,并发来了修改意见。
? James Riely 把LaTeX 格式的书稿移植到http://fpl.cs.depaul.edu/jriely/thinkapjava。
? Peter Knaggs 把本书移植到https://www.rigwit.co.uk/think/sharp。
? Heidi Gentry-Kolen 根据本书内容制作了一些视频(https://www.youtube.com/user/digipipeline)。
? Waldo Ribeiro 提交了一份pull request,其中指出了十几个拼写错误。
? Michael Stewart 对本书前半部分内容提出了建议。
? Steven Richardson 把本书改编为在线课程,并提出了许多条建议,以提升本书的质量。
? Fazl Rahman 逐章提供了详细的反馈信息,并针对本书的质量提出了许多建议。
尤其感谢给本书O’Reilly Media 版做技术评审的Blythe Samuels、David Wisneski 与Stephen Rose。他们发现了很多错误,并提出了许多有效的建议,帮助笔者把这本书做得更好。笔者同样要特别感谢Marc Loy,他详细评审了本书的O’Reilly Media 第二版,并给出许多想法与修正建议,还指出了一些有待澄清的地方。
许多同学提供了很好的反馈意见,包括:Ian Staton、Tanner Wernecke、Jacob Green、Rasha Abuhantash、Nick Duncan、Kylie Davidson、Shirley Jiang、Elena Trafton、Jennifer Gregorio 与 Azeem Mufti。
还有一些读者指出了一个或多个拼写错误,他们是:Stijn Debrouwere、GuyDriesen、Andai Velican、Chris Kuszmaul、Daniel Kurikesu、Josh Donath、Rens Findhammer、Elisa Abedrapo、Yousef BaAfif、Bruce Hill、Matt Underwood、Isaac Sultan、Dan Rice、Robert Beard、Daniel Pierce、Michael Giftthaler、Chris Fox、Min Zeng、Markus Geuss、Mauricio Gonzalez、Enrico Sartirana、Kasem Satitwiwat 与Jason Miller。
如果对本书内容有意见或想法,请发送至feedback@greenteapress.com。
—— Allen B. Downey 和Chris Mayfield

 

 

書城介紹  | 合作申請 | 索要書目  | 新手入門 | 聯絡方式  | 幫助中心 | 找書說明  | 送貨方式 | 付款方式 香港用户  | 台灣用户 | 海外用户
megBook.com.tw
Copyright (C) 2013 - 2024 (香港)大書城有限公司 All Rights Reserved.