Register your product to gain access to bonus material or receive a coupon.
Develop a Practical, Realistic Understanding of Computer Science
Use Python to prepare students for future courses
Fit your Course Preferences
Reinforce Core Concepts
Support Learning with Student Resources
Each new text comes with a bound-in access card for six months of prepaid access to the book’s robust Companion Website www.pearsonhighered.com/brookshear. The subscription provides full access to all student support areas, including:
Computer Science: An Overview is intended for use in the Introduction to Computer Science course. It is also suitable for all readers interested in a breadth-first introduction to computer science.
Computer Science uses broad coverage and clear exposition to present a complete picture of the dynamic computer science field. Accessible to students from all backgrounds, Glenn Brookshear and Dennis Brylow encourage the development of a practical, realistic understanding of the field. An overview of each of the important areas of Computer Science provides students with a general level of proficiency for future courses. This new edition incorporates an introduction to the Python programming language into key chapters.
Teaching and Learning Experience
This program will provide a better teaching and learning experience–for you and your students. It will help:
Chapter 0 Introduction
0.1 The Role of Algorithms
0.2 The History of Computing
0.3 An Outline of Our Study
0.4 The Overarching Themes of Computer Science
Chapter 1 Data Storage
1.1 Bits and Their Storage
1.2 Main Memory
1.3 Mass Storage
1.4 Representing Information as Bit Patterns
*1.5 The Binary System
*1.6 Storing Integers
*1.7 Storing Fractions
*1.8 Data and Programming
*1.9 Data Compression
*1.10 Communication Errors
Chapter 2 Data Manipulation
2.1 Computer Architecture
2.2 Machine Language
2.3 Program Execution
*2.4 Arithmetic/Logic
*2.5 Communicating with Other Devices
*2.6 Programming Data Manipulation
*2.7 Other Architectures
Chapter 3 Operating Systems
3.1 The History of Operating Systems
3.2 Operating System Architecture
3.3 Coordinating the Machine’s Activities
*3.4 Handling Competition Among Processes
3.5 Security
Chapter 4 Networking and the Internet
4.1 Network Fundamentals
4.2 The Internet
4.3 The World Wide Web
*4.4 Internet Protocols
4.5 Security
Chapter 5 Algorithms
5.1 The Concept of an Algorithm
5.2 Algorithm Representation
5.3 Algorithm Discovery
5.4 Iterative Structures
5.5 Recursive Structures
5.6 Efficiency and Correctness
Chapter 6 Programming Languages
6.1 Historical Perspective
6.2 Traditional Programming Concepts
6.3 Procedural Units
6.4 Language Implementation
6.5 Object-Oriented Programming
*6.6 Programming Concurrent Activities
*6.7 Declarative Programming
Chapter 7 Software Engineering
7.1 The Software Engineering Discipline
7.2 The Software Life Cycle
7.3 Software Engineering Methodologies
7.4 Modularity
7.5 Tools of the Trade
7.6 Quality Assurance
7.7 Documentation
7.8 The Human-Machine Interface
7.9 Software Ownership and Liability
Chapter 8 Data Abstractions
8.1 Basic Data Structures
8.2 Related Concepts
8.3 Implementing Data Structures
8.4 A Short Case Study
8.5 Customized Data Types
8.6 Classes and Objects
*8.7 Pointers in Machine Language
Chapter 9 Database Systems
9.1 Database Fundamentals
9.2 The Relational Model
*9.3 Object-Oriented Databases
*9.4 Maintaining Database Integrity
*9.5 Traditional File Structures
9.6 Data Mining
9.7 Social Impact of Database Technology
Chapter 10 Computer Graphics
10.1 The Scope of Computer Graphics
10.2 Overview of 3D Graphics
10.3 Modeling
10.4 Rendering
*10.5 Dealing with Global Lighting
10.6 Animation
Chapter 11 Artificial Intelligence
11.1 Intelligence and Machines
11.2 Perception
11.3 Reasoning
11.4 Additional Areas of Research
11.5 Artificial Neural Networks
11.6 Robotics
11.7 Considering the Consequences
Chapter 12 Theory of Computation
12.1 Functions and Their Computation
12.2 Turing Machines
12.3 Universal Programming Languages
12.4 A Noncomputable Function
12.5 Complexity of Problems
*12.6 Public-Key Cryptography
Appendices
A ASCII
B Circuits to Manipulate Two's Complement Representations
C A Simple Machine Language
D High-Level Programming Languages
E The Equivalence of Iterative and Recursive Structures
F Answers to Questions and Exercises
Index
*Asterisks indicate suggestions for optional sections.