Buy New

or
Sign in to turn on 1-Click ordering.
or
Amazon Prime Free Trial required. Sign up when you check out. Learn More
Buy Used
Used - Very Good See details
$1.18 & eligible for FREE Super Saver Shipping on orders over $25. Details

or
Sign in to turn on 1-Click ordering.
 
   
More Buying Choices
Have one to sell? Sell yours here
Java: An Introduction to Computing
 
See larger image
 
Tell the Publisher!
I'd like to read this book on Kindle

Don't have a Kindle? Get your Kindle here, or download a FREE Kindle Reading App.

Java: An Introduction to Computing [Paperback]

Joel Adams (Author), Larry R. Nyhoff (Author), Jeffrey Nyhoff (Author)
4.7 out of 5 stars  See all reviews (3 customer reviews)

Price: $135.00 & this item ships for FREE with Super Saver Shipping. Details
  Special Offers Available
o o o o o o o o o o o o o o o o o o o o o o o o o o o o o o o o o o o o o o o o o o o o o o o o o o o o o o o o o o o o o o o o
In Stock.
Ships from and sold by Amazon.com. Gift-wrap available.
Only 1 left in stock--order soon (more on the way).
Want it delivered Thursday, February 2? Choose One-Day Shipping at checkout. Details
Textbook Student FREE Two-Day Shipping for students on millions of items. Learn more


Book Description

0130142514 978-0130142511 January 12, 2001

This introductory book introduces key ideas behind computing with Java and object-oriented programming in an intuitive and non-intimidating way. It not only teaches text-based programming, but also graphical/internet programming. In addition, Java: An Introduction to Computing provides an introduction to computer science as a discipline. Uses a problem-solving methodology, along with a “Spiral” approach in which central topics are introduced early and are revisited in increasing detail throughout the text. Covers Java 2, the most current version of the Java programming language. Java: An Introduction to Computing is appropriate for readers looking for an introduction to Java.


Special Offers and Product Promotions

  • Buy $50 in qualifying physical textbooks, get $5 in Amazon MP3 Credit. Here's how (restrictions apply)

Editorial Reviews

From the Inside Flap

PREFACE

To properly introduce students to computing, we believe that the first computing course should accomplish two goals:

Introduce students to the breadth of the discipline of computing, so that they come to understand the role of programming in the broader context of computing. Introduce the methodologies and techniques of computer programming using a modern programming language, providing a (fairly) complete introduction to the language.

The aim of this textbook is to accomplish both of these goals, the latter using Java. THE BREADTH OF COMPUTING

The first goal grows out of an important theme of curriculum recommendations of the Association of Computing Machinery (ACM) that an introductory course in computing should introduce the various knowledge areas of the discipline:

Architecture Artificial Intelligence and Robotics Database and Information Retrieval Human-Computer Communication Numerical and Symbolic Computation Operating Systems Programming Languages Software Methodology and Engineering Social, Ethical, and Professional Context

To accomplish the first goal, we include the Part of the Picture sections, several of which are written by experts in various areas of computing. These sections introduce these areas, trying to capture the spirit of these curriculum guidelines in a natural, unobtrusive way. They have been carefully selected to provide an overview of the discipline of computer science and to provide a foundation for further study in theoretical and/or applied computer science. Titles include:

What is Computer Science?
The History of Computing
Introduction to Computer Systems
Ethics and Issues (by Anne Marchant)
Data Representation
Computability Theory
Boolean Logic and Digital Design
Computer Architecture (by William Stallings)
Introduction to Algorithm Analysis
Numerical Methods
Database Systems (by Keith VanderLinden)
Artificial Intelligence (by Keith VanderLinden)
The TCP/IP Communications Architecture (by William Stallings)
Data Structures

A solid base is thus established for later courses in theoretical and/or applied computer science. CS1 & CS2

To help with accomplishing the second goal, a sequel to this book is planned. This first text will introduce the essential ideas of Java programming and the breadth of the discipline of computing, making it ideal for a one-semester course in computer science. The second text will be available in two flavors:

C++: An Introduction to Data Structures (already available) for those who wish to change to C++ in the CS2 course Java: An Introduction to Data Structures, for those who wish to continue with the same language in the CS2 course.

Both will introduce elementary data structures and their implementations as well as other topics that are traditionally taught in the second course including sorting, searching, and algorithm analysis. Together, this text followed by one of those listed above will provide a solid introduction to the discipline of computer science. PEDAGOGICAL APPROACHES

A popular feature of other texts we have written is to use a problem at the beginning of each chapter to introduce the subject of that chapter (e.g., methods, control, structures, inheritance, and so on). Following this example, the concepts and theory behind those ideas are explored, and other examples given to reinforce the ideas. In this approach, students see the practice of a new topic before the abstract definitions and theory that underlie that topic, providing them with a framework in which those abstract aspects can be organized and understood.

We also continue the "use it, then build it" approach with respect to the more difficult topics for beginning programmers—e.g., methods, classes, and graphical programming—a kind of spiral approach that revisits topics in increasingly greater detail. For example, to show students how methods are used, predefined methods are used in Chapters 2 and 3 as components of expressions. Once students have experience using (predefined) methods, Chapters 4 and 5 teach them to build simple methods, and subsequent chapters show how to build increasingly sophisticated methods. Similarly, students are introduced to classes in Chapter 1, with more practice following in subsequent chapters. Once students are firmly grounded in building and using classes, they explore inheritance and polymorphism in detail in Chapter 11. Through this "use it, then build it" approach, students receive extensive exposure to the concepts underlying each of these constructs, reducing the learning curve when the time comes to actually build those constructs.

We have added chapter objectives and expanded the end-of-chapter features to include a chapter summary that contains key terms and concepts along with documentation for some of the key Java classes used in the chapter. These augment the popular programming pointers used in others of our texts to provide students with good program design and style guidelines as well as warn of potential pitfalls.

This text also exposes the introductory student to object-oriented programming early and consistently. We have included many examples of developing a program to solve a problem, all of which use a design strategy that we have termed object-centered design (OCD). This gives the students a problem-solving methodology to follow. The example programs all model good documentation techniques and habits to help students learn the importance of writing maintainable programs.

New to this text are the Graphical/Internet Java sections designed to introduce students to graphics programming. The approach here also is a spiral one. Chapter 1 contains a simple greeting applet, Chapter 2 gives a simple GUI greeting application. In each chapter thereafter, the applet and/or GUI application being built is increasingly more sophisticated—for example, event-driven programming is introduced in Chapter 7 and using threads in animations in Chapter 13. The examples all make use of Java's Swing components. There is one such section per chapter, but if desired, they can be passed over in a first look at "text-based" Java programming and then covered later. CONTENT AND ORGANIZATION The background and introductory information has been consolidated into a Chapter 0, which instructors can cover in lecture, assign as reading, or omit as preferred. The presentation of computing history has been updated with more events and photos in a timeline of important people and events in the history of computing. Chapter 1 introduces Java applications and applets with a very simple example. It also introduces the design methodology, called object-centered design, a four-phase graduated methodology that novice programmers can use as an aid in designing software solutions. This methodology is used consistently to solve the problems presented throughout the remainder of the text. As the reader learns new language constructs in subsequent chapters, the methodology is expanded to incorporate these new constructs—for example, use methods to create new operations not provided in the language and classes to create new types for objects needed in a problem. A superb new presentation of the major ethical issues in computing has been contributed by Ann Marchant of George Mason University. Chapters 2 and 3 introduce the fundamental ideas of types, operations and expressions, including predefined methods. Chapters 4 and 5 introduce reusability, using methods as a way to encapsulate program statements that can be reused. Object-centered design is expanded (phase II) to incorporate this new idea. Chapter 6 builds on the ideas introduced in Chapters 1-3, presenting classes and instance methods. Object-centered design is again expanded (phase III) to incorporate this new idea. Our colleague Keith VanderLinden has contributed a Part of the Picture section on artificial intelligence for this chapter. Chapters 7 and 8 expand on the introduction in Chapter 5 to control structures for selection and repetition. These control structures are used to build increasingly sophisticated functions. Recursion is also introduced in Chapter 8. These chapters also include a concise but thorough summary of computer architecture contributed by William Stallings. Chapter 9 introduced arrays and illustrates their use with several examples. The important topics of sorting and searching are also introduced as well as multidimensional arrays. A Class Matrix is constructed in detail. Chapter 10 introduces file input and output, along with the important concept of exceptions in Java. Our colleague Keith VanderLinden kindly contributed a Part of the Picture section on databases. Chapter 11 builds on earlier chapters, reinforcing the idea of reusability through class extension and inheritance, showing how one class can reuse the work of another. Object-centered design is expanded a final time (phase IV), resulting in object-oriented design. Chapter 12 introduces Java's ArrayList and LinkedList classes and uses them to implement stacks and queues. A modified structure

From the Back Cover

In their introductory book, these best-selling authors provide the beginning computer science student or professional with a thorough introduction to computing with Java and Object-Oriented Programming. Java: An Introduction to Computing teaches traditional and graphical/internet programming. This text provides a solid introduction to computer science as a discipline with an object-oriented approach to Java. The following features and benefits make this text an invaluable tool for learning Java.

FEATURES/BENEFITS:

  • Provides extensive coverage of Java 2, including in the Swing components.
    • Enjoy a comprehensive reference to the most current version of Java.
  • Uses a "spiral" approach, with central topics introduced early and revisited in increasing detail.
    • A "use it build it" approach that reduces the learning curve for students or professionals.
  • Introduces Object-Centered Design (OCD), in Chapter, culminating in Object-Oriented Design in Chapter 11.
    • OCD provides a gentle, consistent approach to OOD and OOP, which is becoming the industry standard.
  • Covers GUI programming gradually and consistently in each chapter.
    • Learn how to build programs with graphical user interfaces.
  • Presents "Part of the Picture" sections, contributed by field experts, in each chapter.
    • Introduces the discipline of computer science, including sections on ethics, history, artificial intelligence, and architecture.

Product Details

  • Paperback: 945 pages
  • Publisher: Prentice Hall (January 12, 2001)
  • Language: English
  • ISBN-10: 0130142514
  • ISBN-13: 978-0130142511
  • Product Dimensions: 9.1 x 7.1 x 1.5 inches
  • Shipping Weight: 3 pounds (View shipping rates and policies)
  • Average Customer Review: 4.7 out of 5 stars  See all reviews (3 customer reviews)
  • Amazon Best Sellers Rank: #2,032,105 in Books (See Top 100 in Books)

More About the Author

Discover books, learn about writers, read author blogs, and more.

 

Customer Reviews

3 Reviews
5 star:
 (2)
4 star:
 (1)
3 star:    (0)
2 star:    (0)
1 star:    (0)
 
 
 
 
 
Average Customer Review
4.7 out of 5 stars (3 customer reviews)
 
 
 
 
Share your thoughts with other customers:
Most Helpful Customer Reviews

5 of 5 people found the following review helpful:
5.0 out of 5 stars A class book that achieves its object, August 7, 2001
By 
Tom Sharpe (Manchester, England) - See all my reviews
This review is from: Java: An Introduction to Computing (Paperback)
I am planning to teach Java to biosciences graduates as a first language for the first time, having used a subset of C++ up to now. There are a lot of books on Java, but not so many that are suitable for mature beginners. The question is, am I about to endorse this as the course recommended text? The answer is yes - it's pretty much the book I wish I had written.

The author of a book like this has to face some difficult decisions: how soon do I talk about objects and classes? Do I use applets or applications? If applications, how to avoid making all the methods in my main class static? Do I use simplified I/O classes? And so on. I think Adams et al have made the right decisions. Object-centred design is brought in right at the beginning and provides a framework for translating from the problem domain to the program domain. There aren't any sudden leaps in complexity - GUI programs are introduced alongside console applications and fully-fledged OOP appears about two-thirds of the way in. Examples are interesting and there are some good suggestions on programming practice like including preconditions in method documentation where applicable.

Overall the book is well-presented and good value (you get a CD and there is a very useful web site). I like the sections on topics like ethics and AI, and the treatment of data structures. The quizzes are very good too. There are just a few niggles: easy I/O classes are provided on the CD, but I couldn't find advice on where to put these in order to run the console examples which all contain an import statement. I'm not totally convinced about introducing static methods as the norm, and I don't see the point of a list of the names of all the classes in Java SE 1.3 - a glossary would be more helpful. But these are minor and can be sorted out in later editions and through the web site - as an introduction to programming and computing the book represents a worthwhile addition to the literature and I (and I hope my students) will be very grateful for it.

Help other customers find the most helpful reviews 
Was this review helpful to you? Yes No


5.0 out of 5 stars Formerly one of the best intro books out there, October 21, 2006
This review is from: Java: An Introduction to Computing (Paperback)
Note. The publisher has chosen not to revise this text, and it lacks a number of useful recent Java features. Also, the publisher now only issues the text using B&W PoD technology and not the multi-color offset process in which it was originally published.

I have been successfully using this book for several years to teach Introduction to Computer Science. One of the things that I like about this title is that it presents a clear and effective design strategy. Another, feature is an excellent set of companion laboratory exercises. Not only have I been happy with this book as a college text, one of my students went on to base his own high-school course on the course based on this text which he took from me.

In addition to a lucid presentation of introductory programming, this book incorporates a number of essays on topics in computer science including complexity, ethics, and artificial intelligence.

The accompanying ancilliary materials are designed to work on a variety of platforms. An instructor needs to keep this in mind and set up a functional laboratory environment and clearly explain to students how to correctly install the software package if students are to use the ancilliaries on their own computers.
Help other customers find the most helpful reviews 
Was this review helpful to you? Yes No


4.0 out of 5 stars Good As a Review, December 5, 2001
By A Customer
This review is from: Java: An Introduction to Computing (Paperback)
I have faced with this book in the Fall 2001 computer science course "Data Structures and Algorithms". As a novice to Java, I think this book does not cover enough introductory issues such as how importing of the libraries work, what are the installation instruction of JDK. They do not even give us any clue how to set up ann lib without using JBuilder. The documentation on the CD-ROM is for JBuilder users only. But overall book structure is very good.
Help other customers find the most helpful reviews 
Was this review helpful to you? Yes No

Share your thoughts with other customers: Create your own review
 
 
 
Only search this product's reviews



Tag this product

 (What's this?)
Think of a tag as a keyword or label you consider is strongly related to this product.
Tags will help all customers organize and find favorite items.
Your tags: Add your first tag
 

Sell a Digital Version of This Book in the Kindle Store

If you are a publisher or author and hold the digital rights to a book, you can sell a digital version of it in our Kindle Store. Learn more

Customer Discussions

This product's forum
Discussion Replies Latest Post
No discussions yet

Ask questions, Share opinions, Gain insight
Start a new discussion
Topic:
First post:
Prompts for sign-in
 


Active discussions in related forums
Search Customer Discussions
Search all Amazon discussions
   
Related forums


Listmania!


Create a Listmania! list

So You'd Like to...


Create a guide


Look for Similar Items by Category


Look for Similar Items by Subject