Saturday, 19 March 2011

Fundamentals of Computer Science using Java


The primary goal of this course is to introduce basic computer science concepts, while introducing language concepts as needed.
Chapter 1 includes a brief history of computing and computing technology, and then describes the basic hardware and software organization of computer systems. The material in Appendix A may be used to supplement this coverage, or can be introduced at a later time for a clearer understanding of the low-level execution of programs. Chapter 1 also provides a preview to the software development process, and the phases included in this chapter are repeated in the Case Studies of later chapters.
Chapter 2 begins the coverage of Java. It introduces the Java syntax notation so that students will be able to read the syntax descriptions that define the language. Turtle Graphics are used to enhance the early examples. Programs are written as clients of Turtle objects and make use of simple looping and nesting of loops to produce interesting graphics.
Chapter 3 introduces computations and the basic arithmetic operators of Java. Since results of computations must be stored, it also introduces variables and assignment.
Chapter 4 covers methods as a mechanism for procedural abstraction. It covers simple methods, method invocation, parameter passing, and method results, as well as scope issues.
Chapter 5 covers I/O, specifically the BasicIO package. It describes streams as an abstraction of I/O and covers input and output streams and output formatting. The stream concept is consistent with the java.io package, and so many of these concepts are transferable.
Chapter 6 introduces control structures. Some control structures have already been used in their simplest form, but here they are described in detail. The chapter spends its time on the important structures, while only mentioning the less frequently used structures. 
Chapter 7 covers the boolean and char types and emphasizes the difference between primitive and reference types. Boolean expressions are explained here in detail, building from their use in Chapter 6. Some of the basic services of the Character class are introduced. 
Chapter 8 describes classes. Classes have been used throughout the text, however, prior to this chapter, example programs involved a single class as a client of one or more library classes. Here programs make use of multiple classes. Additionally, class interaction and information hiding principles are explained.
Chapter 9 introduces software development. Classes are used as the decomposition mechanism using a responsibility-based approach to design. The traditional seven phases of the software development life cycle are described.
Chapter 10 covers the String class and special processing for text manipulation. 
Chapter 11 covers arrays, including both single- and two-dimensional arrays, and describes standard array processing techniques.


Or

0 comments:

Post a Comment