For Introductory Computer Science Programming courses using Java (CSI with Java). Best-selling author, Walter Savitch, uses a conversational style to teach programmers problem solving and programming techniques with Java. Readers are introduced to object-oriented programming and important computer science concepts such as top-down design, debugging, style, and abstract data types. The Java coverage is a concise, accessible introduction that covers key language features. Thorough early coverage of objects is included, with an emphasis on applications over applets. Prof. Savitch includes a highly flexible format that allows instructors and readers to adapt coverage of topics to their order of preference. This text assumes no previous programming experience.
"synopsis" may belong to another edition of this title.
Preface for Students
This book is designed to teach you the Java programming language, and even more importantly, to teach you basic programming techniques. This book requires no previous programming experience and no mathematics other than some very simple high school algebra. However, to get the full benefit of the book, you should have a version of Java available on your computer, so that you can practice with the examples and techniques given in the book. You should have a version of Java with a version number of either 1.1.x or higher or 1.2.x or higher. (The exact number that is filled in for the x is not critical. The x need not even be present. If it says only "version 1.1" or "version 1.2," that is fine. If you have an earlier version of Java, numbered 1.0.x, that will not be a problem for most of the book, but it will definitely be a problem for Chapter 7, and, as you will see, the latest version of Java can be obtained easily and inexpensively.)
Copies of the Programs from the Text
This book contains a CD that includes all the programs and other software examples in the book, so that you can practice with these examples without having to type them into your computer.
Obtaining a Copy of Java
The CD that comes with this book also includes a version of Code Warrior, which is an integrated development environment including an editor and other utilities in addition to the Java language. The CD includes a version of Code Warrior for PC Windows environments and a version for Macintosh environments. The version included on the CD is Code Warrior Lite, which allows you to sample Code Warrior on programs from the text to see if you wish to purchase the full version at a special student rate. Your local college or university bookstore should stock the full student version of Code Warrior. The Code Warrior environment provided on the CD will allow you to run the programs in this book. If you want to write other Java programs, you will need to purchase the full version of Code Warrior or obtain some other version of Java. If you want an alternative to Code Warrior, a version of Java can be obtained free of charge from Sun Microsystems. At the time of printing, a copy of Java version 1.1.x could be downloaded free of charge from the following web site:
If you have a web browser such as Netscape's Navigator or Microsoft's Internet Explorer, you can use it to go to this web site and download the software you need to install Java on your computer. At the time that this book was sent to press, only preliminary copies of version 1.2 of Java were available. By the time this book comes out there should be more or less final versions of Java 1.2 available. You might want to search the web for the location of the Sun web site that offers version 1.2. At the time this book went to press, preliminary version of Java version 1.2 could be obtained at the following web site:
If you cannot find version 1.2, version 1.1 will do fine for learning Java with this book. While you are using your web browser to download Java, you can also go to another web site to download an integrated development environment. An integrated development environment includes an editor and other utilities and will make it more convenient to write and run Java programs. One suitable integrated development environment is the WinEdit environment from Wilson Window Ware. It can be downloaded to try for free. The web site is:
windowware Self-Test Questions
Each chapter contains numerous self-test question. Complete answers for all the self-test questions are given at the end of each chapter. One of the best ways to practice what you are learning is to do the self-test questions, without looking at the answers, and to only look at the answers after you have done the questions and want to check your answers.
This Text Is Also a Reference Book
In addition to using this book as a textbook, you can and should use it as a reference. When you need to check a particular point that you may have forgotten or that you hear mentioned by somebody but have not yet learned yourself, just look in the index. Many index entries give a page number for "quick reference." Turn to this quick reference page. It will contain a short entry, usually set off in a box, that gives all the essential points on that topic. This can be done to check details of the Java language, as well as details on programming techniques.
Boxed sections in every chapter give you a quick summary of the main points in that chapter; you can use these boxes to review the chapter or to preview the chapter or to check details of the Java language.
We Want Your Opinions
This book was written for you, and I would like to hear any comments you have on the book. You can contact me via electronic mail at the following address:
Unfortunately, I cannot provide you with answers to the programming exercises. The publisher provides selected answers to these exercises to only those instructors who adopt the book. For help on the programming exercises, you will have to contact your instructor. (If you are not in a class, then, unfortunately, we still cannot provide answers to the programming exercises.) But, remember that there are answers to all the self-test questions at the end of each chapter.It covers programming techniques, as well as the basics of the Java programming language. It is suitable for courses as short as one quarter or as long as one full academic year. It requires no previous programming experience and no mathematics other than a little high school algebra. This book can also be used for a course designed to teach Java to students who have already had another programming course, in which case, the first few chapters can be assigned as outside reading. All the code in the book has been tested using both version 1.1 and version 1.2 of Sun Microsystem's Java JDK. The coverage of Java was carefully arrived at by class testing and is a concise, accessible introduction for beginners.
If you are an instructor, this book adapts to the way you teach, rather than making you adapt to the book. This book does not tightly prescribe the order in which your course must cover topics. Neither does it prescribe the specialized libraries that must be used in your course. You can easily change the order in which chapters and sections are covered. The details about rearranging material are explained in the section of this preface entitled Alternative Orderings.
Since Java does not include any simple console input, most texts, even more advanced texts, provide some class library for console input. This book requires that you add as little input software as possible, since only one simple class is used for console input. Even that one console input class, which is included early in the book, becomes an understandable programming example for students well before the end of the book. All the remaining software is from standard Java libraries that should be part of any Java installation.
Coverage of Problem Solving and Programming Techniques
This book is designed to teach students basic problem-solving and programming techniques and is not simply a Java syntax book. The book contains numerous case studies and programming tips sections, as well as many other sections that explain important problem-solving and programming techniques, such as top-down design, loop design techniques, debugging techniques, style techniques, abstract data types, basic object-oriented programming techniques, and other computer science topics.
Object-Oriented and Traditional Techniques
Any course that really teaches Java must teach classes early, since almost everything in Java involves classes. The behavior of parameters depends on whether they are class parameters. Even the behavior of the equals operator (==) depends on whether it is comparing objects or simpler data items. Classes cannot be avoided, except by means of absurdly long and complicated "magic formulas." This book introduces classes fairly early, specifically in Chapter 4. Moreover, all the basic information about classes, including inheritance, is presented by the end of Chapter 6. However, some topics on classes, including inheritance, can be postponed to later in a course. Although this is an early classes book, it does not neglect traditional programming techniques, such as top-down design and loop design techniques. These older topics may not be current glamour topics, but they are information that all beginning students need.
The AWT and GUIs
Java comes with a library known as the AWT that allows programmers to design portability GUIs (graphical user interfaces). This book uses the AWT to teach students to produce professional looking windowing interfaces. In the process, students learn event-driven programming, as well as receiving a lot of practice with object-oriented programming. As this material was class-tested and views of instructors were gathered, we found that the AWT was a more acc
Best-selling author, Walter Savitch, uses a conversational style to teach programmers problem solving and programming techniques with Java. Readers are introduced to object-oriented programming and important computer science concepts such as top-down design, debugging, style, and abstract data types. The Java coverage is a concise, accessible introduction that covers key language features. Thorough early coverage of objects is included, with an emphasis on applications over applets.
Professor Savitch includes a highly flexible format that allows instructors and readers to adapt coverage of topics to their order of preference. This text assumes no previous programming experience.
Other Key Features
* Complete explanations of Java language features are included with sample code and entire programs.
* Summary Boxes that summarize key Java features and problem solving techniques provide quick review of chapter material.
* Programming Tips explain good programming practices, while Gotcha sections identify common programming problems and pitfalls.
* The AWT is used to teach how to design portable GUIs and produce professional windowing interfaces. In the process, readers learn event-driven programming and object-oriented programming.
* The Java material was tested using Sun Microsystem's Java JDK version 1.1 and is consistent with changes scheduled for version 1.2.
* Self-Test Questions with answers follow important topics so users can check their level of understanding.
* Engaging Case Studies expose readers to real-life applications.
* The book's CD-ROM includes all the programs and classes, a student version of Code Warrior, and an integrated development environment for Windows 95/NT and Macintosh.
* The Companion Web Site includes an Online Student Study Guide and program code.
"About this title" may belong to another edition of this title.
Book Description Prentice Hall, 1998. Paperback. Book Condition: New. book. Bookseller Inventory # 0132874261
Book Description Prentice Hall, 1998. Paperback. Book Condition: New. Bookseller Inventory # P110132874261
Book Description Prentice Hall, 1998. Paperback. Book Condition: New. Book & CD. Bookseller Inventory # DADAX0132874261
Book Description Prentice Hall. PAPERBACK. Book Condition: New. 0132874261 New Condition. Bookseller Inventory # NEW6.3019564