About the Book
Computer Science: An Overview truly
lives up to its title, providing a timely introduction to the entire computer
science discipline. Broad coverage, combined with clear explanations, has
made it the leading textbook for the breadth-first course. This book provides
a balanced, realistic picture that communicates the dynamics of computer
science by presenting topics in a historical perspective in which past
developments, the current state of the art, and directions of research
are discussed. The coverage of topics such as programming languages, operating
systems, algorithms, software engineering, networking, database design,
artificial intelligence, and machine architecture result in a complete
overview of the field of computer science.
Features
-
Provides a language-independent introduction
to material that includes C#, C, C++, and Java as example languages. Language
specific lab material is available on the book's Companion Web site.
-
Includes the most up-to-date presentation
of computer science concepts available.
-
Contains over 1,000 problems/exercises to
make the concepts stick - answers to more than 300 are included in an Appendix.
-
Discusses ethical and legal aspects that concern
computer scientists, including Internet security, software engineering,
and database technology implications.
-
Presents material in an independent manner
that allows topics to be covered in any order.
Related
Books
Computer Fluency, Literacy & Introduction
to Computer Science (Computer
Science)
Table of Contents
0. Introduction.
The Role of Algorithms.
The Origins of Computing Machines.
The Science of Algorithms.
Abstraction.
An Outline of Our Study.
Social Repercussions.
1. Data Storage.
Bits and Their Storage.
Main Memory.
Mass Storage.
Representing Information as Bit Patterns.
*The Binary System.
*Storing Integers.
*Storing Fractions.
*Data Compression.
*Communication Errors.
2. Data Manipulation.
Computer Architecture.
Machine Language.
Program Execution.
*Arithmetic/Logic Instructions.
*Communicating with Other Devices.
*Other Architectures.
3. Operating Systems.
The Evolution of Operating Systems.
Operating System Architecture.
Coordinating the Machine's Activities.
*Handling Competition Among Processes.
Security.
4. Networking and the internet.
Network Fundamentals.
The Internet.
The World Wide Web.
*Network Protocols.
Security.
5. Algorithms.
The Concept of an Algorithm.
Algorithm Representation.
Algorithm Discovery.
Iterative Structures.
Recursive Structures.
Efficiency and Correctness.
6. Programming Languages.
Historical Perspective.
Traditional Programming Concepts.
Procedural Units.
Language Implementation.
*Object-Oriented Programming.
*Programming Concurrent Activities.
*Declarative Programming.
7. Software Engineering.
The Software Engineering Discipline.
The Software Life Cycle.
Modularity.
Design Methodologies.
Tools of the Trade.
Testing.
Documentation.
Software Ownership and Liability.
8. Data Abstractions.
Data Structure Basics.
Implementing Data Structures.
A Short Case Study.
Customized Data Types.
Classes and Objects.
*Pointers in Machine Language.
9. Database Systems.
Database Fundamentals.
The Relational Model.
*Object-Oriented Databases.
*Maintaining Database Integrity.
*Traditional File Structures.
Data Mining.
Social Impact of Database Technology.
10. Artificial Intelligence.
Intelligence and Machines.
Understanding Images.
Reasoning.
Artificial Neural Networks.
Genetic Algorithms.
Other Areas of Research.
Considering the Consequences.
11. Theory of Computation.
Functions and Their Computation.
Turing Machines.
Universal Programming Languages.
A Noncomputable Function.
Complexity of Problems.
*Public Key Cryptography. |