artsciencejava

artsciencejava - The Art and Science of Java Preliminary...

Info iconThis preview shows pages 1–4. Sign up to view the full content.

View Full Document Right Arrow Icon

Info iconThis preview has intentionally blurred sections. Sign up to view the full version.

View Full DocumentRight Arrow Icon

Info iconThis preview has intentionally blurred sections. Sign up to view the full version.

View Full DocumentRight Arrow Icon
This is the end of the preview. Sign up to access the rest of the document.

Unformatted text preview: The Art and Science of Java Preliminary Draft Eric S. Roberts Stanford University Stanford, California January 2006 Preface This text is an early draft for a general introductory textbook in computer sciencea Java-based version of my 1995 textbook The Art and Science of C . My hope is that I can use much of the existing material in writing the new book, although quite a bit of the material and overall organization have to change. At this point, the material is still in a preliminary form, and the feedback I get from those of you who are taking this course will almost certainly lead to some changes before the book is published. One of the central features of the text is that it incorporates the work of the Association of Computing Machinerys Java Task Force, which was convened in 2004 with the following charter: To review the Java language, APIs, and tools from the perspective of introductory computing education and to develop a stable collection of pedagogical resources that will make it easier to teach Java to first-year computing students without having those students overwhelmed by its complexity. I am grateful to my colleagues on the Task ForceKim Bruce, Robb Cutler, James H. Cross II, Scott Grissom, Karl Klee, Susan Rodger, Fran Trees, Ian Utting, and Frank Yellinfor all their hard work over the past year, as well as to the National Science Foundation, the ACM Education Board, the SIGCSE Special Projects Fund for their financial support. I also want to thank the participants in last years CS 298 seminarAndrew Adams, Andy Aymeloglu, Kurt Berglund, Seyed Dorminani-Tabatabaei, Erik Forslin, Alex Himel, Tom Hurlbutt, Dave Myszewski, Ann Pan, Vishakha Parvate, Cynthia Wang, Paul Wilkins, and Julie Zhuo for helping me work through these ideas. In addition, I would like to thank my CS 106A TA Brandon Burr and all the hardworking section-leaders for taking on the challenge of helping to teach a course with a just-in-time approach to the materials. Particularly because my wife Lauren Rusk (who has edited all of my books) has not yet had her chance to work her wonderful magic on the language, you may still find some rough edges, awkward constructions, and places where real improvement is needed. Writing is, after all, at least as difficult as programming and requires just as much testing to get everything right. If you let me know when things are wrong, I think well end up with a textbook and a course that are exciting, thorough, and practical. Thanks in advance for all your help. Eric Roberts Professor of Computer Science Stanford University September 2005 Table of Contents 1. Introduction 1 1.1 A brief history of computing 2 1.2 What is computer science? 4 1.3 An overview of computer hardware 5 1.4 Algorithms 7 1.5 Stages in the programming process 8 1.6 Java and the object-oriented paradigm 13 1.7 Java and the World Wide Web 17 2. Programming by Example 21 2.1 The hello world program 22 2.2 Perspectives on the programming process...
View Full Document

Page1 / 316

artsciencejava - The Art and Science of Java Preliminary...

This preview shows document pages 1 - 4. Sign up to view the full document.

View Full Document Right Arrow Icon
Ask a homework question - tutors are online