Java面向对象程序设计(英文版.第3版)(Java之父James Gosling作序推荐)
基本信息
- 原书名: Objects First With Java: A Practical Introduction Using BlueJ (3rd Edition)
- 原出版社: Prentice Hall
- 作者: (英)David J.Barnes Michael Kolling [作译者介绍]
- 丛书名: 图灵原版计算机科学系列
- 出版社:人民邮电出版社
- ISBN:9787115175151
- 上架时间:2008-4-1
- 出版日期:2008 年4月
- 开本:16开
- 页码:480
- 版次:3-1
- 所属分类:
计算机 > 软件与程序设计 > JAVA(J#) > Java
计算机 > 软件工程及软件方法学 > 面向对象
教材 > 研究生/本科/专科教材 > 工学 > 计算机
教材 > 计算机教材 > 本科/研究生 > 计算机专业教材 > 计算机专业课程 > 程序设计
教材 > 教材汇编分册 > 高等理工
本版教材征订号:0044096424-5
编辑推荐
Java之父James Gosling作序推荐...
内容简介回到顶部↑
本节主要从软件工程的角度介绍面向对象和程序设计的基本概念,侧重于讲解面向对象程序设计原理,而不是java语言细节。书中从面向对象的基础知识讲起,介绍了对象和类;然后深入到应用结构,讲解了继承、抽象技术、构建图形用户界面、错误处理;最后给出了一个完整的案例。书中使用两个工具实际运用所介绍的概念:java编程语言以及java编程环境bluej。全书按照项目驱动的方式来展开,讨论了大量的程序项目,并且提供了很多练习。
本书内容由浅入深,适合初学者快速入门,也适合高级程序员和专业人士学习参考,可作为计算机相关专业“面向对象程序设计”课程的教材。
本书内容由浅入深,适合初学者快速入门,也适合高级程序员和专业人士学习参考,可作为计算机相关专业“面向对象程序设计”课程的教材。
目录回到顶部↑
part 1 foundations of object orientation
chapter 1 objects and classes
1.1 objects and classes
1.2 creating objects
1.3 calling methods
1.4 parameters
1.5 data types
1.6 multiple instances
1.7 state
1.8 what is in an object?
1.9 object interaction
1.10 source code
1.11 another example
1.12 return values
1.13 objects as parameters
1.14 summary
chapter 2 understanding class definitions
2.1 ticket machines
2.1.1 exploring the behavior of a natve ticket machine
2.2 examining a class definition
chapter 1 objects and classes
1.1 objects and classes
1.2 creating objects
1.3 calling methods
1.4 parameters
1.5 data types
1.6 multiple instances
1.7 state
1.8 what is in an object?
1.9 object interaction
1.10 source code
1.11 another example
1.12 return values
1.13 objects as parameters
1.14 summary
chapter 2 understanding class definitions
2.1 ticket machines
2.1.1 exploring the behavior of a natve ticket machine
2.2 examining a class definition
前言回到顶部↑
This book is an introduction to object-oriented programming for beginners. The main focus of the book is general object-oriented and programming concepts from a software engineering perspective. .
While the first chapters are written for students with no programming experience, later chapters are suitable for more advanced or professional programmers as well. In particular, programmers with experience in a non-object-oriented language who wish to migrate their skills into object orientation should also be able to benefit from the book.
We use two tools throughout the book to enable the concepts introduced to be put into practice: the Java programming language and the Java development environment BlueJ.
Java
Java was chosen because of a combination of two aspects: the language design and its popularity. The Java programming language itself provides a very clean implementation of most of the important object-oriented concepts, and serves well as an introductory teaching language. Its popularity ensures an immense pool of support resources.
In any subject area, having a variety of sources of information available is very helpful, for teachers and students alike. For Java in particular, countless books, tutorials, exercises, compilers, environments, and quizzes already exist, in many different kinds and styles. Many of them are online and many are available free of charge. The large amount and good quality of support material makes Java an excellent choice as an introduction to object-oriented programming.
With so much Java material already available, is there still room for more to be said about it? We think there is, and the second tool we use is one of the reasons . . .
BlueJ
The second tool, BlueJ, deserves more comment. This book is unique in its completely integrated use of the BlueJ environment.
BlueJ is a Java development environment that is being developed and maintained at the University of Southern Denmark, Deakin University, Australia, and the University of Kent in Canterbury, UK, explicitly as an environment for teaching introductory objectoriented programming. It is better suited to introductory teaching than other environments for a variety of reasons:
·The user interface is much simpler. Beginning students can typically use the BlueJ environment in a competent manner after 20 minutes of introduction. From then on, instruction can concentrate on the important concepts at hand – object orientation and Java – and no time needs to be wasted talking about environments, file systems, class paths, DOS commands, or DLL conflicts.
·The environment supports important teaching tools not available in other environments. One of them is visualization of class structure. BlueJ automatically displays a UML-like diagram representing the classes and relationships in a project. Visualizing these important concepts is a great help to both teachers and students. It is hard to grasp the concept of an object when all you ever see on the screen is lines of code! The diagram notation is a simple subset of UML, again tailored to the needs of beginning students. This makes it easy to understand, but also allows migration to full UML in later courses.
·One of the most important strengths of the BlueJ environment is the user’s ability to directly create objects of any class, and then to interact with their methods. This creates the opportunity for direct experimentation with objects, for little overhead in the environment. Students can almost ‘feel’ what it means to create an object, call a method, pass a parameter, or receive a return value. They can try out a method immediately after it has been written, without the need to write test drivers. This facility is an invaluable aid in understanding the underlying concepts and language details.
BlueJ is a full Java environment. It is not a cut-down, simplified version of Java for teaching. It runs on top of Sun Microsystems’ Java Development Kit, and makes use of the standard compiler and virtual machine. This ensures that it always conforms to the official and most up-to-date Java specification.
The authors of this book have several years of teaching experience with the BlueJ environment (and many more years without it before that). We both have experienced how the use of BlueJ has increased the involvement, understanding, and activity of students in our courses. One of the authors is also a developer of the BlueJ system.
Real objects first
One of the reasons for choosing BlueJ was that it allows an approach where teachers truly deal with the important concepts first. ‘Objects first’ has been a battle cry for many textbook authors and teachers for some time. Unfortunately, the Java language does not make this noble goal very easy. Numerous hurdles of syntax and detail have to be overcome before the first experience with a living object arises. The minimal Java program to create and call an object typically includes:
·writing a class;
·writing a main method, including concepts such as static methods, parameters, and arrays in the signature;
·a statement to create the object (‘new’);
While the first chapters are written for students with no programming experience, later chapters are suitable for more advanced or professional programmers as well. In particular, programmers with experience in a non-object-oriented language who wish to migrate their skills into object orientation should also be able to benefit from the book.
We use two tools throughout the book to enable the concepts introduced to be put into practice: the Java programming language and the Java development environment BlueJ.
Java
Java was chosen because of a combination of two aspects: the language design and its popularity. The Java programming language itself provides a very clean implementation of most of the important object-oriented concepts, and serves well as an introductory teaching language. Its popularity ensures an immense pool of support resources.
In any subject area, having a variety of sources of information available is very helpful, for teachers and students alike. For Java in particular, countless books, tutorials, exercises, compilers, environments, and quizzes already exist, in many different kinds and styles. Many of them are online and many are available free of charge. The large amount and good quality of support material makes Java an excellent choice as an introduction to object-oriented programming.
With so much Java material already available, is there still room for more to be said about it? We think there is, and the second tool we use is one of the reasons . . .
BlueJ
The second tool, BlueJ, deserves more comment. This book is unique in its completely integrated use of the BlueJ environment.
BlueJ is a Java development environment that is being developed and maintained at the University of Southern Denmark, Deakin University, Australia, and the University of Kent in Canterbury, UK, explicitly as an environment for teaching introductory objectoriented programming. It is better suited to introductory teaching than other environments for a variety of reasons:
·The user interface is much simpler. Beginning students can typically use the BlueJ environment in a competent manner after 20 minutes of introduction. From then on, instruction can concentrate on the important concepts at hand – object orientation and Java – and no time needs to be wasted talking about environments, file systems, class paths, DOS commands, or DLL conflicts.
·The environment supports important teaching tools not available in other environments. One of them is visualization of class structure. BlueJ automatically displays a UML-like diagram representing the classes and relationships in a project. Visualizing these important concepts is a great help to both teachers and students. It is hard to grasp the concept of an object when all you ever see on the screen is lines of code! The diagram notation is a simple subset of UML, again tailored to the needs of beginning students. This makes it easy to understand, but also allows migration to full UML in later courses.
·One of the most important strengths of the BlueJ environment is the user’s ability to directly create objects of any class, and then to interact with their methods. This creates the opportunity for direct experimentation with objects, for little overhead in the environment. Students can almost ‘feel’ what it means to create an object, call a method, pass a parameter, or receive a return value. They can try out a method immediately after it has been written, without the need to write test drivers. This facility is an invaluable aid in understanding the underlying concepts and language details.
BlueJ is a full Java environment. It is not a cut-down, simplified version of Java for teaching. It runs on top of Sun Microsystems’ Java Development Kit, and makes use of the standard compiler and virtual machine. This ensures that it always conforms to the official and most up-to-date Java specification.
The authors of this book have several years of teaching experience with the BlueJ environment (and many more years without it before that). We both have experienced how the use of BlueJ has increased the involvement, understanding, and activity of students in our courses. One of the authors is also a developer of the BlueJ system.
Real objects first
One of the reasons for choosing BlueJ was that it allows an approach where teachers truly deal with the important concepts first. ‘Objects first’ has been a battle cry for many textbook authors and teachers for some time. Unfortunately, the Java language does not make this noble goal very easy. Numerous hurdles of syntax and detail have to be overcome before the first experience with a living object arises. The minimal Java program to create and call an object typically includes:
·writing a class;
·writing a main method, including concepts such as static methods, parameters, and arrays in the signature;
·a statement to create the object (‘new’);
序言回到顶部↑
Watching my daughter Kate, and her middle school classmates, struggle through a Java course using a commercial IDE was a painful experience. The sophistication of the tool added significant complexity to the task of learning. I wish that I had understood earlier what was happening. As it was, I wasn't able to talk to the instructor about the problem until it was too late. This is exactly the sort of situation for which BlueJ is a perfect fit. .
BlueJ is an interactive development environment with a mission: it is designed to be used by students who are learning how to program. It was designed by instructors who have been in the classroom facing this problem every day. It's been refreshing to talk to the folks who developed BlueJ: They have a very clear idea of what their target is. Discussions tended to focus more on what to leave out, than what to throw in. BlueJ is very clean and very targeting.
None the less, this book isn't about BlueJ. It is about programming.
In Java. ..
Over the past several years Java has become widely used in the teaching of programming. This is for a number of reasons. One is that Java has many characteristics that make it easy to teach: it has a relatively clean definition; extensive static analysis by the compiler informs students of problems early on; and it has a very robust memory model that eliminates most ‘mysterious’errors that arise when object boundaries or the type system are compromised. Another is that Java has become commercially very important.
This book confronts head-on the hardest concept to teach: objects. It takes students from their very first steps all the way through to some very sophisticated concepts.
It manages to solve one of the stickiest questions in writing a book about programming: how to deal with the mechanics of actually typing in and running a progam. Most books silently skip over the issue, or touch it lightly, leaving it up to the instructor to figure out how to solve the problem. And leaving the instructor with the burden of relating the material being taught to the steps that students have to go through to work on the exercises.Instead, it assumes the use of BlueJ and is able to integrate the tasks of understanding the concepts with the mechanics of how students can explore them.
I wish it had been around for my daughter last year. Maybe next year ...
BlueJ is an interactive development environment with a mission: it is designed to be used by students who are learning how to program. It was designed by instructors who have been in the classroom facing this problem every day. It's been refreshing to talk to the folks who developed BlueJ: They have a very clear idea of what their target is. Discussions tended to focus more on what to leave out, than what to throw in. BlueJ is very clean and very targeting.
None the less, this book isn't about BlueJ. It is about programming.
In Java. ..
Over the past several years Java has become widely used in the teaching of programming. This is for a number of reasons. One is that Java has many characteristics that make it easy to teach: it has a relatively clean definition; extensive static analysis by the compiler informs students of problems early on; and it has a very robust memory model that eliminates most ‘mysterious’errors that arise when object boundaries or the type system are compromised. Another is that Java has become commercially very important.
This book confronts head-on the hardest concept to teach: objects. It takes students from their very first steps all the way through to some very sophisticated concepts.
It manages to solve one of the stickiest questions in writing a book about programming: how to deal with the mechanics of actually typing in and running a progam. Most books silently skip over the issue, or touch it lightly, leaving it up to the instructor to figure out how to solve the problem. And leaving the instructor with the burden of relating the material being taught to the steps that students have to go through to work on the exercises.Instead, it assumes the use of BlueJ and is able to integrate the tasks of understanding the concepts with the mechanics of how students can explore them.
I wish it had been around for my daughter last year. Maybe next year ...
媒体评论回到顶部↑
“本书正面阐释了 ‘对象’这一教学中最难的概念,它使学生得以从无到有地建立起对这些复杂概念的理解;”.
——James Gosling, “Java之父”
“本书提出了极有价值的讲授程序设计导论课程的新方法,我认为它是这门课程的最佳教材。”..
——Michael Caspersen,奥尔胡斯大学(丹麦)
“这是迄今为止我见过的教授程序设计导论课程最好的创新性方法。”
——Clemens Martin,安大略大学(加拿大)...
——James Gosling, “Java之父”
“本书提出了极有价值的讲授程序设计导论课程的新方法,我认为它是这门课程的最佳教材。”..
——Michael Caspersen,奥尔胡斯大学(丹麦)
“这是迄今为止我见过的教授程序设计导论课程最好的创新性方法。”
——Clemens Martin,安大略大学(加拿大)...
【插图】
相关资源回到顶部↑
· 【推荐】众多高校学子口口相传,他们共同的选择--华清远见嵌入式学院(嵌入式Linux就业课程、3G手机开发就业课程,通过入学测试即签100%就业协议,4个月集中实训,世界500强企业成功就业保障!!!)· 【亚嵌教育 嵌入式培训专家】(嵌入式培训,嵌入式Linux培训,ARM培训,Linux培训,3G培训,Android培训,WINCE培训,DSP培训,FPGA培训,嵌入式就业培训)
· 中文java技术网(面向国内介绍java及相关技术的专业网站,为java爱好者免费提供相关服务)
· 程序员的7种武器(正则表达式、编程语言、数据库、算法、软件调试、开发环境)
· 图灵公司详细书目







点击看大图

加载中...

