Simply Java Programming: An Application-Driven Tutorial Approach / Edition 1

Paperback (Print)
Buy New
Buy New from BN.com
$142.95
Used and New from Other Sellers
Used and New from Other Sellers
from $3.10
Usually ships in 1-2 business days
(Save 98%)
Other sellers (Paperback)
  • All (18) from $3.10   
  • New (6) from $68.00   
  • Used (12) from $3.10   

Overview

Combining the Deitel™ signature Live-Code™ Approach with a new Application-Driven™ methodology, this book uses a step-by-step tutorial approach to begin teaching the basics of programming, builds upon previously learned concepts, and introduces new programming features in each successive tutorial. KEY TOPICS This comprehensive introduction to Java covers GUI design, swing components, methods, classes, data types, control statements, arrays, object-oriented programming, strings and characters, sequential files and more. It also includes higher-end topics such as database programming, multimedia and graphics, and Web applications development. For individuals beginning their mastery of Java Programming.

Read More Show Less

Editorial Reviews

From the Publisher

"This book is a wonderful way to get started in Java for those who learn best by doing; you don't just read about language constructs, you build real modern computer applications that demonstrate them as you follow the step-by-step tutorials." — Paul Mclachian, Compuware Corporation

"A great choice for business computing students-lots of sample programs and programming problems. Swing applications are integrated from the beginning and the book focuses on problem-solving logic." — Merrill Parker, Ph.D, Information Systems Technology, Chattanooga State

"What especially impresses me about this text is the absolutely wonderful set of exercises that the authors have included to motivate students to learn programming. I'm really looking forward to using this text in the classroom." — Ed Weihrauch, Community College of Allegheny County

"The seamless integration of UML, object-oriented programming and design, and GUI concepts make this text an excellent choice for introductory programmers looking for a springboard into advanced technologies." — Gavin T. Osborne, Saskatchewan Institute of Applied Science and Technology

"A terrific book appropriate for any Java IDE-it doesn't flinch at the challenging concepts behind object-oriented programming in Java, yet it takes students through step by step in a straightforward, readable style." — Catherine Wyman, Senior Professor, DeVry University

"A student who had missed my classes on arrays was having a hard time, so she borrowed Tutorial 8 as I was reviewing your draft manuscript. She came back and said she understood arrays. She is very excited about the book." — Craig W. Slinkman, Ph.d, University of Texas, Arlington

Read More Show Less

Product Details

  • ISBN-13: 9780131426481
  • Publisher: Prentice Hall
  • Publication date: 7/23/2003
  • Edition description: New Edition
  • Edition number: 1
  • Pages: 1300
  • Sales rank: 318,435
  • Product dimensions: 8.50 (w) x 10.90 (h) x 2.20 (d)

Meet the Author

Dr. Harvey M. Deitel, Chairman of Deitel & Associates, Inc., has 42 years experience in the computing field, including extensive industry and academic experience. Dr. Deitel earned B.S. and M.S. degrees from the Massachusetts Institute of Technology and a Ph.D. from Boston University. He worked on the pioneering virtual-memory operating-systems projects at IBM and MIT that developed techniques now widely implemented in systems such as UNIX, Linux and Windows XP He has 20 years of college teaching experience and served as the Chairman of the Computer Science Department at Boston College before founding Deitel & Associates, Inc., with his son, Paul J. Deitel. He is the author or co-author of several dozen books and multimedia packages. With translations published in numerous foreign languages, Dr. Deitel's texts have earned international recognition. Dr. Deitel has delivered professional seminars to major corporations, government organizations and various branches of the military.

Paul J. Deitel, CEO and Chief Technical Officer of Deitel & Associates, Inc., is a graduate of the Massachusetts Institute of Technology's Sloan School of Management, where he studied information technology. Through Deitel & Associates, Inc., he has delivered professional seminars to numerous industry and government clients and has lectured on C++ and Java for the Boston Chapter of the Association for Computing Machinery. He and his father, Dr. Harvey M. Deitel, are the world's best-selling Computer Science textbook authors.

Jeff A. Listfield is a Computer Science graduate of Harvard University. His coursework included classes in computer graphics, networks and computational theory and he has programming experience in several languages. Jeff has co-authored C# How to Program, C# A Programmer's Introduction and C# for Experienced Programmers, and contributed to Perl How to Program and Java How to Program, 5/e.

Cheryl H. Yaeger, Director of Microsoft Software Publications with Deitel & Associates, Inc., graduated from Boston University in three years with a bachelor's degree in Computer Science. Cheryl has co-authored various Deitel & Associates, Inc. publications, including C# How to Program, C#: A Programmer's Introduction, C# for Experienced Programmers and Visual Basic.NET for Experienced Programmers. Cheryl has also contributed to other Deitel & Associates publications including Perl How to Program, Wireless Internet and Mobile Business How to Program, Internet and World Wide Web How to Program, 2/e, Visual Basic.NET How to Program, 2/e and Simply Visual Basic.NET.

Su Zhang holds B.Sc. and M.Sc. degrees in Computer Science from McGill University. Her graduate research included modeling and simulation, real-time systems and Java technology. She worked on Java and Web-technologies-related projects prior to joining Deitel. She has contributed to several Deitel Publications including Advanced Java 2 Platform How to Program, Python How to Program, Java How to Program, 5/e and she co-authored Java Web Services for Experienced Programmers.

Read More Show Less

Read an Excerpt

Welcome to Java, the Internet and World-Wide-Web programming! This book, the second in our new Simply series, was a joy to create. Our goal was to write a book that focuses on core concepts and features of Java while keeping the discussion of this highly technical subject as simple as possible.

To achieve these goals, we implemented an innovative teaching methodology. We present the core concepts of leading-edge computing technologies using the tutorial-based, APPLICATION-DRIVEN approach, combined with the DEITELJ signature LIVECODE approach of teaching programming using complete, working, real-world applications. We merged the notion of a lab manual with that of a conventional textbook, creating a book that works well in a traditional classroom setting or with students sitting at computers and building each example application as they read the tutorials.

As students work through the tutorials, they learn about Java and its fundamental features, such as graphical-user-interface (GUI) components, multimedia (audio, images, animation and video), file processing, database processing and Internet and World-Wide-Web-based client/server networking. At the end of most sections, we provide self-review questions with answers so that students receive immediate feedback on their understanding of the material. Hundreds of additional self-review questions with answers are available on this book's Companion Web Site.

Features in Simply Java Programming

This book is loaded with pedagogic features, including:

  • APPLICATION-DRIVEN Tutorial Approach. Each tutorial uses a contemporary, real-world application to teach programming concepts. The examples tend exercises are up-to-the-minute with Internet/Web-related examples and with popular applications, such as game playing, graphics, multimedia and even a three-tier Web-based bookstore. Most examples have a business lotus. At the beginning of each tutorial, students "test-drive" the completed application so they can see how it works. Then, they build the application by following step-by-step instructions. The book concentrates on the principles of good software design and stresses program clarity.
  • LIVE-CODE Approach. This book uses LIVE-CODE examples. Each tutorial rods with the complete, working application code and the students can run the application that they just created. We call this method of teaching and writing the LIVE-CODE Approach. We feel that this approach is more effective than presenting only snippets of code out of the context of a complete application.
  • Real-World Technologies. This text incorporates today's technologies to develop useful applications. For example, we use the Unified Modeling Language™ (UML) to replace flowcharts—an older standard. The UML has become the preferred graphical modeling language for designing object-oriented applications. In Simply Java, we use UML to show the flow of control for several applications, so students gain practice reading the type of diagrams that are used in industry.
  • Graphical User Interface (GUI) Programming. From the first tutorial, we immerse students in GUI programming techniques and modifying Java GUIs. Students who learn these techniques can create graphical applications quickly and easily. The early tutorials provide students with a foundation for designing GUIs—concepts that they will apply throughout the book as we teach core programming concepts. Many tutorials contain GUI Design Tips that are summarized at the end of the tutorials for easy reference. Additionally, Appendix C, GUI Design Guidelines, compiles these tips to help students as they prepare for exams.
  • Full-Color Presentation. This book is in full color so that students can see sample outputs as they would appear on a monitor. Also, we syntax color the Java code, similar to the way Java integrated development environments (IDES) color the code in their editor windows. This way, students can match what they see in the book with what they see on their screens. Our syntax-coloring conventions are as follows:
    – comments appear in green
    – keywords appear in dark blue
    – literal values and constants appear in light blue
    – text, class, method and variable names appear in black
    – errors appear in red
  • Graphics and Multimedia. Graphics and multimedia make applications fun to create and use. In our introduction to graphics, Tutorial 20, we discuss basic concepts and features of graphics. Part of Java's initial appeal was that it supported graphics, enabling Java programmers to visually enhance their applications. You will learn several of Java's capabilities for drawing two-dimensional shapes and controlling colors. In Tutorial 27, we expand our discussion of graphics by introducing additional methods of the Graphics class to outline and fill in different types of shapes. In Tutorial 28, you will explore the Java Speech API, which produces synthetic speech from text inputs. You will create a phone book application in which the user selects a name and the application speaks the corresponding phone number.
  • Databases. Databases are crucial to businesses today, and we use real-world applications to teach the fundamentals of database programming. Tutorial 26 and Tutorial 31 familiarize students with databases, presented in the context of two applications—an ATM and a three-tier Web-based bookstore. In Tutorial 26, you will learn how to connect to a database and retrieve information from a database using the JDBC API.
  • Case Study. This book concludes with a sequence of four tutorials in which the student builds a Web-based bookstore application. In Tutorial 29, you will learn the multi-tier architecture that is used to create Web applications. You will learn about Web servers and install the Apache Tomcat Web server, which you will need to run your bookstore application. In Tutorial 30, you will use HTML to create the client tier (also called the top tier)—the user interface of your application. In Tutorial 31, you will create the application's information tier and create the connections with your database as well as use SQL statements to obtain information from the database. Finally in Tutorial 32, you will create the middle tier of the Web-based bookstore and complete the application.
  • Object-Oriented Programming. Object-oriented programming is the most widely employed technique for developing robust, reusable software, and Java offers advanced object-oriented programming features. This book introduces students to declaring classes and using objects, laying a solid foundation for future programming courses.
  • Java Debugger. The Java 2 Software Development Kit (J2SDK) provides software called a debugger, which allows you to analyze the behavior of your applications to locate logic errors. At the ends of several tutorials, we provide Using the Debugger sections in which you will learn to detect and remove logic errors by using the Java debugger.
Notes to the Instructor Focus of the Book

Our goal was clear: Produce a Java textbook for introductory-level courses in computer programming for students with little or no programming experience. This book teaches computer programming principles and the Java language, including data types, control statements, object-oriented programming, classes, GUI concepts, event-driven programming, graphics, database, Web-applications development and more. After mastering the material in this book, students-will be able to program in Java and to employ its cross-platform capabilities.

Lab Setup

Before you can compile and run the applications in this book, the Java 2 Software Development Kit (J2SDK), or an appropriate Java development tool, must be installed. We discuss installing the J2SDK in the Before You Begin section that follows the Preface. For computer labs in which students are not allowed to install software, instructors and system administrators must ensure that appropriate Java software is installed on the lab computers in advance of the course. Several tutorials require additional software. Tutorial 26 requires IBM's Cloudscape database software, which is included on the CD that accompanies this book. The Cloudscape installation instructions appear in Tutorial 26. Tutorial 28 uses speech synthesis software, which must be installed to run and develop the Phone Book application. Download and installation instructions for this software appear in Tutorial 28. Configuring and executing the Bookstore case study in Tutorials 29-32 require IBM's Cloudscape database software and Apache Tomcat software, which is also included on the CD that accompanies this book. Installation instructions for Apache Tomcat appear in Tutorial 29. Note: For instructors and students who prefer to use Microsoft Access for the database applications, we will post instructions at www.deitel.com/books/simplyJava1/index.html.

Note Regarding the Platform We Used to Develop the Book

We assume that students are using Windows platform computers (Windows 2000 or Windows XP, in particular), so all directory names, instructions and sample screen captures appear in Windows format. However, the instructions and concepts presented work well on most computer platforms. Note: All windows that show source code were created in Sun™ ONE Studio 4 Community Edition. © Copyright 2003 Sun Microsystems, Inc. All rights reserved. Used by permission.

Note Regarding Terminology Used for Event Handlers in the Book

Each event handler in this book calls another method, which actually contains the code that processes the event. For a Mutton named cal cul ate7Button, for example, the event handler actionPerformed calls method cal culate7ButtonActionPerformed to process the event. We implemented the code in this manner so that our code would be similar to the code that is generated by the GUI designers provided with many of today's popular Java IDES. In the early chapters, we refer to methods such as calculate7ButtonActionPerformed as "event handlers." Chapter 13 presents a more thorough introduction to event handling. At that point, we refer to methods like calculate7ButtonActionPerformed as "methods" and use the term "event handler" only for those methods that are declared by event-listener interfaces.

Objectives

Each tutorial begins with objectives that inform students of what to expect and give them an opportunity, after reading the tutorial, to determine whether they have met the intended goals.

Outline

The tutorial outline enables students to approach the material in top-down fashion. Along with the tutorial objectives, the outline helps students anticipate future topics and set a comfortable and effective learning pace.

Example Applications (with Application Outputs)

We present Java features in the context of complete, working Java applications. We call this our LIVE-CODE approach. All examples are available on the CD that accompanies the book or as downloads from our Web site, www.deitel.com/books/simplyJava1/index.html.

Illustrations/Figures

An abundance of charts, line drawings and application outputs are included. The discussion of control statements, for example, features carefully drawn UML activity diagrams. Note: We do not teach UML diagramming as a program-development tool, but we do use UML diagrams to explain the precise operation of many of Java's control statements.

Programming Tips

Hundreds of programming tips help students focus on important aspects of application development. These tips and practices represent the best the authors have gleaned from a combined seven decades of programming and teaching experience.

Good Programming Practices
Good Programming Practices highlight techniques that help students write applications that are clearer, more understandable and more maintainable.

Common Programming Errors
Students learning a language—especially in their first programming course-frequently make errors. Pointing out these Common Programming Errors in the text reduces the likelihood that students will make the same mistakes.

Error Prevention Tips
These tips describe aspects of Java that prevent errors from getting into applications in the first place, which simplifies the testing and debugging process.

GUI Design Tips
The GUI Design Tips highlight graphical-user-interface conventions to help students design attractive, user-friendly GUIs and use GUI features.

Performance Tips
Teaching students to write clear and understandable applications is the most important goal for a first programming course. But students want to write applications that run the fastest, use the least memory, require the smallest number of keystrokes, etc. Performance Tips highlight opportunities for improving application performance.

Portability Tips
The Portability Tips provide insights on how Java achieves its high degree of portability among different platforms.

Software Design Tips
The Software Design Tips highlight architectural and design issues that affect the construction of object-oriented software systems.

Skills Summary

Each tutorial includes a bullet-list-style summary of the new programming concepts presented. This reinforces key actions taken to build the application in each tutorial.

Key Terms

Each tutorial includes a list of important terms defined in the tutorial. These terms also appear in the index and in a book-wide glossary, so the student can locate terms and their definitions quickly.

240 Self-Review Questions and Answers

Self-review multiple-choice questions and answers are included after most sections to build students' confidence with the material and prepare them for the regular exercises. Students should be encouraged to attempt all the self-review exercises and check their answers.

506 Exercises (Solutions in Instructor's Manual)

Each tutorial concludes with exercises. Typical exercises include 10 multiple-choice questions, a "What does this code do?" exercise, a "What's wrong with this code?" exercise, three regular programming exercises and a programming challenge. Note: In the "What does this code do?" and "What's wrong with this code?" exercises, we show only portions of the code in the text, but the instructor's manual contains full applications with outputs. Several tutorials also include exercises that require students to use the Java debugger to locate and fix logic errors in applications.

The questions involve simple recall of important terminology and concepts, writing individual Java statements, writing small portions of Java applications and writing complete Java methods, classes and applications. Every programming exercise uses a step-by-step methodology to guide the student. The solutions for the exercises are available only to instructors through their Prentice-Hall representatives. NOTE: Please do not write to us requesting the instructor's manual. Distribution of this publication is strictly limited to instructors teaching from the book. Instructors may obtain the solutions manual only from their regular Prentice Hall representatives. We regret that we cannot provide the solutions to professionals.

GUI Design Guidelines

Consistent and proper graphical user interface design is crucial to visual programming. In each tutorial, we summarize the GUI design guidelines that were introduced. Appendix C, GUI Design Guidelines, presents a cumulative list of these GUI design guidelines for easy reference.

Java Library Reference Summaries

Each tutorial includes a summary of the components, classes, methods and other Java Library objects discussed in the tutorial. The summary includes a picture of each component, shows the component "in action" and lists the component's properties. events and methods that were discussed up to and including that tutorial. In addition. Appendix D groups the controls by tutorial for easy reference.

Index

The extensive index includes important terms both under main headings and as separate entries so that students can search for any term or concept by keyword. The code examples and the exercises are also included in the index. For every Java source code application in the book, we indexed it both under the appropriate application and as a subindex item under "applications." We have also double-indexed features such as components, methods and classes. This makes it easier to find examples using particular features.

Simply Java Ancillary Package

Simply Java is accompanied by extensive ancillary materials for instructors, including the following:

  • Instructor's Resource CD (IRCD) which contains the
    • Instructor's Manual with solutions to the end-of-tutorial exercises
    • Test-Item File of multiple-choice questions (approximately two per tutorial section).
  • Customizable PowerPoint® Slides containing all the code and figures in the text, and bulleted items that summarize the key points in the text. The slides are downloadable from www.deitel.com/books/simplyJava1/index.html and are available as part of Prentice Hall's Companion Web Site for Simply Java Programming, which offers resources for both instructors and students. The Companion Web Site is located at www.prenhall.com/deitel.
Companion Web Site

For instructors, the Companion Web Site offers a Syllabus Manager, which helps instructors plan courses interactively and create online syllabi. Students also benefit from the functionality of the Companion Web Site. Book-specific resources for students include:

  • PowerPoint® slides
  • Example source code
  • Reference materials from the book appendices
  • Tutorial objectives
  • Tutorial summaries
  • Tutorial outlines
  • Programming tips from each tutorial
  • Online Study Guide—contains additional short-answer self-review exercises with answers
  • Students can track their results and course performance on quizzes using the Student Profile feature, which records and manages all feedback and results from tests taken on the Companion Web Site. To access the Companion Web Site for Simply Java Programming, visit www.prenhall.com/deitel.
Course Management Systems

Selected content from Simply Java Programming and other Deitel texts, is available to integrate into various Course Management Systems, including CourseCompass, Blackboard and WebCT Course Management Systems help faculty create, manage and use sophisticated Web-based educational tools and programs. Blackboard, CourseCompass and WebCT offer:

  • Features to create and customize an online course
  • Communication tools
  • Flexible testing tools
  • Support materials

In addition to the tools found in Blackboard and WebCT, CourseCompass from Prentice Hall includes:

  • CourseCompass course home page, which makes the course as easy to navigate as a book.
  • Hosting on Prentice Hall's centralized servers, which allows course administrators to avoid separate licensing fees or server-space issues.
  • "How Do I" online-support sections are available for users who need help personalizing course sites.
  • Instructor Quick Start Guide
Read More Show Less

Table of Contents

1. Moving Shapes Application: Introducing Computers, the Internet and Java Programming.

2. Welcome Application: Introduction to Graphical User Interface Programming.

3. Designing the Inventory Application: Introducing JTextFields and JButtons.

4. Completing the Inventory Application: Introducing Programming.

5. Enhancing the Inventory Application: Introducing Variables, Memory Concepts and Arithmetic.

6. Wage Calculator Application: Introducing Algorithms, Pseudocode and Program Control.

7. Dental Payment Application: Introducing JCheckBoxes and Message Dialogs.

8. Car Payment Calculation Application: Introducing the while Repetition Statement.

9. Class Average Application: Introducing the do…while Reptition Statement.

10. Interest Calculator Application: Introducing the for Repetition Statement.

11. Security Panel Application: Introducing the switch Multiple-Selection Statement.

12. Enhancing the Wage Calculator Application: Introducing Methods.

13. Enhancing the Interest Calculator Application: Introduction to Event-Handling.

14. Fund Raiser Application: Introducing Scope and Conversions of Primitive Types.

15. Craps Game Application: Introducing Random-Number Generation.

16. Flag Quiz Application: Introducing One-Dimensional Arrays and JComboBoxes.

17. Student Grades Application: Introducing Two-Dimensional Arrays and JRadioButtons.

18. Microwave Oven Application: Building Your Own Classes and Objects.

19. Shipping Hub Application: Introducing ArrayList, Iterators and Mnemonics.

20. Screen Saver Application: Introducing Graphics and Inheritance.

21. “Cat and Mouse” Painter Application: Introducing Interfaces, Mouse Input and a Discussion of Event-Handling.

22. Typing Application: Introducing Keyboard Input and JMenus.

23. Screen Scraping Application: Introducing String Processing.

24. Enhanced Car Payment Calculator Application: Introducing Exception Handling.

25. Ticket Information Application: Introducing Sequential-Access Files.

26. ATM Application: Introducing Database Programming.

27. Drawing Shapes Application: Introduction to Polymorphism and Expanded Discussion of Graphics.

28. Phone Book Application: Introducing Speech Synthesis and javax.speech.

29. Bookstore Application: Web Applications: Introducing Tomcat Server.

30. Bookstore Application: Client Tier: Introducing HTML.

31. Bookstore Application: Information Tier: Examining the Database with CloudView.

32. Bookstore Application: Middle Tier: Introducing Java Server Pages.

Appendix A. Operator Precedence Chart.

Appendix B. ASCII Character Set with a Discussion of Unicode®.

Appendix C. GUI Design Guidelines.

Appendix D. Java Components.

Appendix E. Java Library Reference.

Appendix F. Keyword Chart.

Appendix G. Tomcat Setup and Cloudscape Setup Instructions.

Appendix H. Introducing Packages and Using Javadoc

Appendix I. Troubleshooting in Java

Read More Show Less

Preface

Welcome to Java, the Internet and World-Wide-Web programming! This book, the second in our new Simply series, was a joy to create. Our goal was to write a book that focuses on core concepts and features of Java while keeping the discussion of this highly technical subject as simple as possible.

To achieve these goals, we implemented an innovative teaching methodology. We present the core concepts of leading-edge computing technologies using the tutorial-based, APPLICATION-DRIVEN approach, combined with the DEITELJ signature LIVECODE approach of teaching programming using complete, working, real-world applications. We merged the notion of a lab manual with that of a conventional textbook, creating a book that works well in a traditional classroom setting or with students sitting at computers and building each example application as they read the tutorials.

As students work through the tutorials, they learn about Java and its fundamental features, such as graphical-user-interface (GUI) components, multimedia (audio, images, animation and video), file processing, database processing and Internet and World-Wide-Web-based client/server networking. At the end of most sections, we provide self-review questions with answers so that students receive immediate feedback on their understanding of the material. Hundreds of additional self-review questions with answers are available on this book's Companion Web Site.

Features in Simply Java Programming

This book is loaded with pedagogic features, including:

  • APPLICATION-DRIVEN Tutorial Approach. Each tutorial uses a contemporary, real-world application to teach programming concepts. The examples tend exercises are up-to-the-minute with Internet/Web-related examples and with popular applications, such as game playing, graphics, multimedia and even a three-tier Web-based bookstore. Most examples have a business lotus. At the beginning of each tutorial, students "test-drive" the completed application so they can see how it works. Then, they build the application by following step-by-step instructions. The book concentrates on the principles of good software design and stresses program clarity.
  • LIVE-CODE Approach. This book uses LIVE-CODE examples. Each tutorial rods with the complete, working application code and the students can run the application that they just created. We call this method of teaching and writing the LIVE-CODE Approach. We feel that this approach is more effective than presenting only snippets of code out of the context of a complete application.
  • Real-World Technologies. This text incorporates today's technologies to develop useful applications. For example, we use the Unified Modeling Language™ (UML) to replace flowcharts—an older standard. The UML has become the preferred graphical modeling language for designing object-oriented applications. In Simply Java, we use UML to show the flow of control for several applications, so students gain practice reading the type of diagrams that are used in industry.
  • Graphical User Interface (GUI) Programming. From the first tutorial, we immerse students in GUI programming techniques and modifying Java GUIs. Students who learn these techniques can create graphical applications quickly and easily. The early tutorials provide students with a foundation for designing GUIs—concepts that they will apply throughout the book as we teach core programming concepts. Many tutorials contain GUI Design Tips that are summarized at the end of the tutorials for easy reference. Additionally, Appendix C, GUI Design Guidelines, compiles these tips to help students as they prepare for exams.
  • Full-Color Presentation. This book is in full color so that students can see sample outputs as they would appear on a monitor. Also, we syntax color the Java code, similar to the way Java integrated development environments (IDES) color the code in their editor windows. This way, students can match what they see in the book with what they see on their screens. Our syntax-coloring conventions are as follows:
    – comments appear in green
    – keywords appear in dark blue
    – literal values and constants appear in light blue
    – text, class, method and variable names appear in black
    – errors appear in red
  • Graphics and Multimedia. Graphics and multimedia make applications fun to create and use. In our introduction to graphics, Tutorial 20, we discuss basic concepts and features of graphics. Part of Java's initial appeal was that it supported graphics, enabling Java programmers to visually enhance their applications. You will learn several of Java's capabilities for drawing two-dimensional shapes and controlling colors. In Tutorial 27, we expand our discussion of graphics by introducing additional methods of the Graphics class to outline and fill in different types of shapes. In Tutorial 28, you will explore the Java Speech API, which produces synthetic speech from text inputs. You will create a phone book application in which the user selects a name and the application speaks the corresponding phone number.
  • Databases. Databases are crucial to businesses today, and we use real-world applications to teach the fundamentals of database programming. Tutorial 26 and Tutorial 31 familiarize students with databases, presented in the context of two applications—an ATM and a three-tier Web-based bookstore. In Tutorial 26, you will learn how to connect to a database and retrieve information from a database using the JDBC API.
  • Case Study. This book concludes with a sequence of four tutorials in which the student builds a Web-based bookstore application. In Tutorial 29, you will learn the multi-tier architecture that is used to create Web applications. You will learn about Web servers and install the Apache Tomcat Web server, which you will need to run your bookstore application. In Tutorial 30, you will use HTML to create the client tier (also called the top tier)—the user interface of your application. In Tutorial 31, you will create the application's information tier and create the connections with your database as well as use SQL statements to obtain information from the database. Finally in Tutorial 32, you will create the middle tier of the Web-based bookstore and complete the application.
  • Object-Oriented Programming. Object-oriented programming is the most widely employed technique for developing robust, reusable software, and Java offers advanced object-oriented programming features. This book introduces students to declaring classes and using objects, laying a solid foundation for future programming courses.
  • Java Debugger. The Java 2 Software Development Kit (J2SDK) provides software called a debugger, which allows you to analyze the behavior of your applications to locate logic errors. At the ends of several tutorials, we provide Using the Debugger sections in which you will learn to detect and remove logic errors by using the Java debugger.

Notes to the Instructor

Focus of the Book

Our goal was clear: Produce a Java textbook for introductory-level courses in computer programming for students with little or no programming experience. This book teaches computer programming principles and the Java language, including data types, control statements, object-oriented programming, classes, GUI concepts, event-driven programming, graphics, database, Web-applications development and more. After mastering the material in this book, students-will be able to program in Java and to employ its cross-platform capabilities.

Lab Setup

Before you can compile and run the applications in this book, the Java 2 Software Development Kit (J2SDK), or an appropriate Java development tool, must be installed. We discuss installing the J2SDK in the Before You Begin section that follows the Preface. For computer labs in which students are not allowed to install software, instructors and system administrators must ensure that appropriate Java software is installed on the lab computers in advance of the course. Several tutorials require additional software. Tutorial 26 requires IBM's Cloudscape database software, which is included on the CD that accompanies this book. The Cloudscape installation instructions appear in Tutorial 26. Tutorial 28 uses speech synthesis software, which must be installed to run and develop the Phone Book application. Download and installation instructions for this software appear in Tutorial 28. Configuring and executing the Bookstore case study in Tutorials 29-32 require IBM's Cloudscape database software and Apache Tomcat software, which is also included on the CD that accompanies this book. Installation instructions for Apache Tomcat appear in Tutorial 29. Note: For instructors and students who prefer to use Microsoft Access for the database applications, we will post instructions at www.deitel.com/books/simplyJava1/index.html .

Note Regarding the Platform We Used to Develop the Book

We assume that students are using Windows platform computers (Windows 2000 or Windows XP, in particular), so all directory names, instructions and sample screen captures appear in Windows format. However, the instructions and concepts presented work well on most computer platforms. Note: All windows that show source code were created in Sun™ ONE Studio 4 Community Edition. © Copyright 2003 Sun Microsystems, Inc. All rights reserved. Used by permission.

Note Regarding Terminology Used for Event Handlers in the Book

Each event handler in this book calls another method, which actually contains the code that processes the event. For a Mutton named cal cul ate7Button, for example, the event handler actionPerformed calls method cal culate7ButtonActionPerformed to process the event. We implemented the code in this manner so that our code would be similar to the code that is generated by the GUI designers provided with many of today's popular Java IDES. In the early chapters, we refer to methods such as calculate7ButtonActionPerformed as "event handlers." Chapter 13 presents a more thorough introduction to event handling. At that point, we refer to methods like calculate7ButtonActionPerformed as "methods" and use the term "event handler" only for those methods that are declared by event-listener interfaces.

Objectives

Each tutorial begins with objectives that inform students of what to expect and give them an opportunity, after reading the tutorial, to determine whether they have met the intended goals.

Outline

The tutorial outline enables students to approach the material in top-down fashion. Along with the tutorial objectives, the outline helps students anticipate future topics and set a comfortable and effective learning pace.

Example Applications (with Application Outputs)

We present Java features in the context of complete, working Java applications. We call this our LIVE-CODE approach. All examples are available on the CD that accompanies the book or as downloads from our Web site, www.deitel.com/books/simplyJava1/index.html .

Illustrations/Figures

An abundance of charts, line drawings and application outputs are included. The discussion of control statements, for example, features carefully drawn UML activity diagrams. Note: We do not teach UML diagramming as a program-development tool, but we do use UML diagrams to explain the precise operation of many of Java's control statements.

Programming Tips

Hundreds of programming tips help students focus on important aspects of application development. These tips and practices represent the best the authors have gleaned from a combined seven decades of programming and teaching experience.

Good Programming Practices
Good Programming Practices highlight techniques that help students write applications that are clearer, more understandable and more maintainable.

Common Programming Errors
Students learning a language—especially in their first programming course-frequently make errors. Pointing out these Common Programming Errors in the text reduces the likelihood that students will make the same mistakes.

Error Prevention Tips
These tips describe aspects of Java that prevent errors from getting into applications in the first place, which simplifies the testing and debugging process.

GUI Design Tips
The GUI Design Tips highlight graphical-user-interface conventions to help students design attractive, user-friendly GUIs and use GUI features.

Performance Tips
Teaching students to write clear and understandable applications is the most important goal for a first programming course. But students want to write applications that run the fastest, use the least memory, require the smallest number of keystrokes, etc. Performance Tips highlight opportunities for improving application performance.

Portability Tips
The Portability Tips provide insights on how Java achieves its high degree of portability among different platforms.

Software Design Tips
The Software Design Tips highlight architectural and design issues that affect the construction of object-oriented software systems.

Skills Summary

Each tutorial includes a bullet-list-style summary of the new programming concepts presented. This reinforces key actions taken to build the application in each tutorial.

Key Terms

Each tutorial includes a list of important terms defined in the tutorial. These terms also appear in the index and in a book-wide glossary, so the student can locate terms and their definitions quickly.

240 Self-Review Questions and Answers

Self-review multiple-choice questions and answers are included after most sections to build students' confidence with the material and prepare them for the regular exercises. Students should be encouraged to attempt all the self-review exercises and check their answers.

506 Exercises (Solutions in Instructor's Manual)

Each tutorial concludes with exercises. Typical exercises include 10 multiple-choice questions, a "What does this code do?" exercise, a "What's wrong with this code?" exercise, three regular programming exercises and a programming challenge. Note: In the "What does this code do?" and "What's wrong with this code?" exercises, we show only portions of the code in the text, but the instructor's manual contains full applications with outputs. Several tutorials also include exercises that require students to use the Java debugger to locate and fix logic errors in applications.

The questions involve simple recall of important terminology and concepts, writing individual Java statements, writing small portions of Java applications and writing complete Java methods, classes and applications. Every programming exercise uses a step-by-step methodology to guide the student. The solutions for the exercises are available only to instructors through their Prentice-Hall representatives. NOTE: Please do not write to us requesting the instructor's manual. Distribution of this publication is strictly limited to instructors teaching from the book. Instructors may obtain the solutions manual only from their regular Prentice Hall representatives. We regret that we cannot provide the solutions to professionals.

GUI Design Guidelines

Consistent and proper graphical user interface design is crucial to visual programming. In each tutorial, we summarize the GUI design guidelines that were introduced. Appendix C, GUI Design Guidelines, presents a cumulative list of these GUI design guidelines for easy reference.

Java Library Reference Summaries

Each tutorial includes a summary of the components, classes, methods and other Java Library objects discussed in the tutorial. The summary includes a picture of each component, shows the component "in action" and lists the component's properties. events and methods that were discussed up to and including that tutorial. In addition. Appendix D groups the controls by tutorial for easy reference.

Index

The extensive index includes important terms both under main headings and as separate entries so that students can search for any term or concept by keyword. The code examples and the exercises are also included in the index. For every Java source code application in the book, we indexed it both under the appropriate application and as a subindex item under "applications." We have also double-indexed features such as components, methods and classes. This makes it easier to find examples using particular features.

Simply Java Ancillary Package

Simply Java is accompanied by extensive ancillary materials for instructors, including the following:

  • Instructor's Resource CD (IRCD) which contains the
    • Instructor's Manual with solutions to the end-of-tutorial exercises
    • Test-Item File of multiple-choice questions (approximately two per tutorial section).
  • Customizable PowerPoint ® Slides containing all the code and figures in the text, and bulleted items that summarize the key points in the text. The slides are downloadable from www.deitel.com/books/simplyJava1/index.html and are available as part of Prentice Hall's Companion Web Site for Simply Java Programming, which offers resources for both instructors and students. The Companion Web Site is located at www.prenhall.com/deitel .

Companion Web Site

For instructors, the Companion Web Site offers a Syllabus Manager, which helps instructors plan courses interactively and create online syllabi. Students also benefit from the functionality of the Companion Web Site. Book-specific resources for students include:

  • PowerPoint® slides
  • Example source code
  • Reference materials from the book appendices
  • Tutorial objectives
  • Tutorial summaries
  • Tutorial outlines
  • Programming tips from each tutorial
  • Online Study Guide—contains additional short-answer self-review exercises with answers
  • Students can track their results and course performance on quizzes using the Student Profile feature, which records and manages all feedback and results from tests taken on the Companion Web Site. To access the Companion Web Site for Simply Java Programming, visit www.prenhall.com/deitel .

Course Management Systems

Selected content from Simply Java Programming and other Deitel texts, is available to integrate into various Course Management Systems, including CourseCompass, Blackboard and WebCT Course Management Systems help faculty create, manage and use sophisticated Web-based educational tools and programs. Blackboard, CourseCompass and WebCT offer:

  • Features to create and customize an online course
  • Communication tools
  • Flexible testing tools
  • Support materials

In addition to the tools found in Blackboard and WebCT, CourseCompass from Prentice Hall includes:

  • CourseCompass course home page, which makes the course as easy to navigate as a book.
  • Hosting on Prentice Hall's centralized servers, which allows course administrators to avoid separate licensing fees or server-space issues.
  • "How Do I" online-support sections are available for users who need help personalizing course sites.
  • Instructor Quick Start Guide
Read More Show Less

Customer Reviews

Be the first to write a review
( 0 )
Rating Distribution

5 Star

(0)

4 Star

(0)

3 Star

(0)

2 Star

(0)

1 Star

(0)

Your Rating:

Your Name: Create a Pen Name or

Barnes & Noble.com Review Rules

Our reader reviews allow you to share your comments on titles you liked, or didn't, with others. By submitting an online review, you are representing to Barnes & Noble.com that all information contained in your review is original and accurate in all respects, and that the submission of such content by you and the posting of such content by Barnes & Noble.com does not and will not violate the rights of any third party. Please follow the rules below to help ensure that your review can be posted.

Reviews by Our Customers Under the Age of 13

We highly value and respect everyone's opinion concerning the titles we offer. However, we cannot allow persons under the age of 13 to have accounts at BN.com or to post customer reviews. Please see our Terms of Use for more details.

What to exclude from your review:

Please do not write about reviews, commentary, or information posted on the product page. If you see any errors in the information on the product page, please send us an email.

Reviews should not contain any of the following:

  • - HTML tags, profanity, obscenities, vulgarities, or comments that defame anyone
  • - Time-sensitive information such as tour dates, signings, lectures, etc.
  • - Single-word reviews. Other people will read your review to discover why you liked or didn't like the title. Be descriptive.
  • - Comments focusing on the author or that may ruin the ending for others
  • - Phone numbers, addresses, URLs
  • - Pricing and availability information or alternative ordering information
  • - Advertisements or commercial solicitation

Reminder:

  • - By submitting a review, you grant to Barnes & Noble.com and its sublicensees the royalty-free, perpetual, irrevocable right and license to use the review in accordance with the Barnes & Noble.com Terms of Use.
  • - Barnes & Noble.com reserves the right not to post any review -- particularly those that do not follow the terms and conditions of these Rules. Barnes & Noble.com also reserves the right to remove any review at any time without notice.
  • - See Terms of Use for other conditions and disclaimers.
Search for Products You'd Like to Recommend

Recommend other products that relate to your review. Just search for them below and share!

Create a Pen Name

Your Pen Name is your unique identity on BN.com. It will appear on the reviews you write and other website activities. Your Pen Name cannot be edited, changed or deleted once submitted.

 
Your Pen Name can be any combination of alphanumeric characters (plus - and _), and must be at least two characters long.

Continue Anonymously

    If you find inappropriate content, please report it to Barnes & Noble
    Why is this product inappropriate?
    Comments (optional)