基本信息
- 原书名:Building Java Programs: A Back to Basics Approach
- 原出版社: Addison Wesley
- 作者: (美)Stuart Reges Marty Stepp
- 译者: 陈志
- 丛书名: 计算机科学丛书
- 出版社:机械工业出版社
- ISBN:9787111246619
- 上架时间:2009-4-30
- 出版日期:2008 年9月
- 开本:16开
- 页码:655
- 版次:1-1
- 所属分类:计算机 > 软件与程序设计 > JAVA(J#) > Java
教材

内容简介
目录
译者序
前言
第1章 Java编程简介
1.1 计算的基本概念
1.2 现在开始介绍Java
1.3 程序中的错误
1.4 过程分解
1.5 案例分析:输出图形
第2章 基本数据类型和确定循环
2.1 数据的基本概念
2.2 变量
2.3 for循环
2.4 复杂性管理
2.5 案例分析:输出复杂的图形
第3章 参数和对象导论
3.1 参数
3.2 具有返回值的方法
3.3 使用对象
3.4 交互式程序
译者序
本书的作者以自己的实际教学经验为依据,创新地采用了“从基础开始”、“从学习面向过程的程序设计开始”的方法,将程序设计的基本知识与面向对象程序设计方法划分为两个阶段并分别进行介绍。当读者具备了扎实的编程基础之后,再学习相对复杂的面向对象程序设计。对初学者来说,这种方式有效地分散了重点和难点,避免了因内容的难度过大而影响教学效果。而且本书在讲授基本编程知识的过程中充分利用了Java语言本身提供的类库支持,使学生在学习过程中可以利用这些预置功能编写出具有实际意义的程序,这也会增加学生学习的乐趣与成就感。总之,“先学习使用对象,再学习定义对象”是本书在安排和组织内容上的一大特色。..
本书的第1~5章由李静翻译,第6~11章和附录由陈志翻译,第12~14章由何亮翻译,并由陈志负责全书翻译的组织工作。由于译者的专业水平和时间的双重限制,错误和不妥之处诚恳地希望读者批评指正。
本书可以作为计算机专业程序设计课程的教材,也可以作为学习Java语言的入门读物。对于软件工程师、系统集成工程师以及应用和维护等相关人员来说,也不失为一本好的参考读物。...
译者
2008年春于南开大学
前言
一直以来,很多学校计算机专业的第一门程序设计课程都是新生的梦魇。但是道格拉斯·亚当斯在《银河系漫游指南》中告诉大家“不要惊慌”。学生可以逐步掌握课程讲授的内容。
很多教师尝试了不同的方法来讲授入门课程。最典型的尝试包括“尽早介绍对象”这种方法。但我们感觉这些尝试的最终效果往往不尽如人意。尽管优等生掌握的效果不错,但更多的中等学生都在吃力地应付对象的概念。
本书采用了“从基础开始”的方法,强调应该先介绍面向过程的程序设计方法。实际的教学经验告诉我们,通过学习面向过程的方法,大多数学生可以更好地掌握程序设计的技能。一旦学生打下了牢固的编程基础,就可以转而学习面向对象的程序设计方法。所以,到课程结束时,学生可以掌握这两种程序设计方法。
下面列出了本书的一些主要特色:
·先使用对象。Java本身提供了很多功能强大的对象。通过使用这些对象,学生采用传统的面向过程的程序设计技术也能写出很多有趣的程序。尽可能早而且尽可能多地使用这些对象有利于学生们在后面学习如何设计并创建对象。
·后定义对象。如果让学生在学习基本的程序设计技巧的同时学习如何定义对象,他们往往会感觉难以消化吸收如此多的内容。我们将这两部分内容分开,先讲授编程的基本知识,然后再讲授如何定义对象。
·关注如何解决问题。很多教材将重点放在程序设计语言的各个语法细节上,而我们更关注如何用程序解决问题。如,语言的一种新的功能可以帮助我们解决哪些新的问题?初学者容易犯的错误有哪些?这种新功能的最典型用法是什么?
·强调算法思维。在使用面向过程的方法来解决问题时,我们强调如何通过使用算法来解决问题:将一个大问题分解为若干个小问题,用伪代码逐步细化解决问题的算法,并努力以算法的方式去描述问题。
·层层推进。采用Java语言编写程序需要同时涉及很多概念,学生不可能在一夜之间就掌握所有这些概念。教授初学者学习Java语言就好像搭积木一样,每一块都要小心翼翼地放置。如果一次放置的积木太多,反而会带来倒塌的危险。我们一步步地引入新概念,确保学生能够掌握每一步所介绍的内容。
·全面介绍Java 5的特性。本书介绍的内容以Java 5为基础,全面介绍了这一版引入的一些新特性,例如,Scanner类、泛型、for-each循环、装箱和拆箱等。Java 6是对Java 5的补充和升级,并不会影响本书所介绍的内容,本书的内容与Java 6完全兼容。
·案例分析。我们在每章的最后都安排了一个案例分析。通过这部分内容,学生可以了解如何分阶段开发并测试一个复杂的程序。而且我们可以用相对完整的程序代码来具体展示这一章所介绍的新的编程概念,这是书中那些短的代码示例所不能做到的。
补充了绘图内容。我们提供了一个自定义的DrawingPanel类,通过它可以使用Java中丰富的绘图功能。很多学生对输出复杂图形很感兴趣,但本书只将这一部分作为选学内容。
本书的组织结构和各章之间的依赖关系
很多计算机系的入门教材都是面向语言特性来进行介绍,但是我们这本书的前半部分采用了逐层推进的方式。例如,Java语言中有很多控制结构(例如,for循环、while循环、if/else语句),很多教材都把这些内容放到一章进行介绍。当然,这对于了解程序设计的人来说很正常,但对于初学者来说就会感觉很吃力。我们发现将这些控制结构分散到不同章节去介绍的效果很好,这样学生一次只需要专心学习一个内容,而不必一次将所有内容都塞进脑袋中。
应该按照顺序学习本书的前1到6章,从第7章开始可以选择自己感兴趣的内容。
第6章专门讲述文件处理的内容,但是很多Java入门课程都去掉了这部分内容。最主要的原因还是在Java 5之前,用Java程序来处理文件是件很复杂的事情。自从Java 5引入了Scanner类,我们认为入门课程也完全可以把这部分内容包括在内。这样我们就有能力解决一些涉及到大量数据的程序。即便如此,很多教师也不愿意在这个主题上花费太多时间,所以我们将第6章的后半部分也设定为选学部分。
补充材料
我们为教师和学生准备了丰富的补充材料。附录A中提供了自测题的答案。学生还可以登录网站www.aw-bc.com/cssupport获得:
·书中出现的源码。
媒体评论
——Eric Matson, 莱特州立大学.
作者从基础开始介绍Java程序设计的方法,给人耳目一新的感觉。本书交谈式的叙述风格和对基础知识的详细介绍深深吸引了我的很多学生,他们认为这比开始就介绍艰深的面向对象内容的那些教材更容易接受。而且我也发现层层推进和强调逻辑解决问题的方法,都让这个计算机专业的第一门程序设计课更有针对性。..
——Mike Scott ,得克萨斯大学奥斯汀分校...
书摘
1.1 计算的基本概念
计算机已经融入了我们的日常生活,因特网给我们带来了几乎无限量的信息。有的信息是一些重要新闻。比如cnn.com上的头条新闻;有的则是无足轻生的垃圾信息:如果你想知道昨晚碰到的小伙子是否欺骗了他的女友,你可能会到dontdatehimgirl.com去找答案。
……