Computer Science: An Overview, 13th edition
Published by Pearson (March 13, 2018) © 2019
- Glenn Brookshear Marquette University
- Dennis Brylow Marquette University
eTextbook
- Anytime, anywhere learning with the Pearson+ app
- Easy-to-use search, navigation and notebook
- Simpler studying with flashcards
- Hardcover, paperback or looseleaf edition
- Affordable rental option for select titles
For introduction to computer science courses.
Surveys the breadth of computer science, with the depth needed to explore concepts
Computer Science is written for students of computer science as well as students from other disciplines. Its broad coverage and clear exposition are accessible to students from all backgrounds, encouraging a practical and realistic understanding of the subject.
With a new full-color design, each chapter in the 13th Edition has seen revisions, updates and corrections from the previous editions. The text also continues to use Python to provide programming tools for exploration and experimentation. The text's companion website extends resources to enhance the course.
Hallmark features of this title
- This text follows a bottom-up arrangement of subjects that progresses from the concrete to the abstract, an order that results in a sound pedagogical presentation.
- Ethical and legal aspects of areas such as Internet security, software engineering and database technology bring to light what students should know to be safe and responsible users of technology.
- Uses Python code examples and Python-like pseudocode, due to its wide acceptance in other STEM fields, such as physics and biology, and as the language of choice for computational science applications.
- Each chapter includes a collection of questions called Social Issues that challenge students to think about the relationship between the material in the text and the society in which they live.
New and updated features of this title
- NEW: Full-color design:
- Many figures and diagrams are now rendered more descriptively.
- Syntax coloring is now used to better effect for clarifying code and pseudocode segments in the text. It reflects the use of color in most modern programming interfaces to aid the programmer's understanding of code.
- UPDATED: Revisions, updates and corrections from the previous editions in each chapter.
- UPDATED: More than 1,000 total problems in the 13th Edition that enhance student participation.
- UPDATED: Intersections with the new College Board Advanced Placement® Computer Science Principles (“CSP”) exam, while the primary audience for this book remains college-level introductory courses, this edition explicitly calls out many points of intersection with CSP content to better assist students and instructors either preparing for the AP® CSP exam or taking a college-level course that is intended to correspond with the credit from that exam.
*Asterisks indicate suggestions for optional sections.
- 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
- 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
- Data Manipulation
- 2.1 Computer Architecture
- 2.2 Machine Language
- 2.3 Program Execution
- *2.4 Arithmetic/Logic Instructions
- *2.5 Communicating with Other Devices
- *2.6 Programming Data Manipulation
- *2.7 Other Architectures
- 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
- Networking and the Internet
- 4.1 Network Fundamentals
- 4.2 The Internet
- 4.3 The World Wide Web
- *4.4 Internet Protocols
- *4.5 Simple Client Server
- 4.6 Cybersecurity
- 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
- 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
- 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
- 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
- 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
- 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
- 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
- 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. Vole: A Simple Machine Language
- D. High-Level Programming Languages
- E. The Equivalence of Iterative and Recursive Structures
- F. Answers to Questions & Exercises
About our author
Glenn Brookshear is a Professor Emeritus at Marquette University, where he taught Formal Language, Introduction to Computer Science, and Theory of Computation. He is the author of the previous editions of Computer Science: An Overview.
Need help? Get in touch