Sign up
Forgot password?
FAQ: Login

Tucker A.B. (ed.) Computer Science Handbook

  • pdf file
  • size 17,45 MB
  • added by
  • info modified
Tucker A.B. (ed.) Computer Science Handbook
2nd edition. — Chapman & Hall/CRC, 2004, — 2624 p. — ISBN10: 158488360X, ISBN13: 978-1584883609.
The purpose of The Computer Science Handbook is to provide a single comprehensive reference for computer scientists, software engineers, and IT professionals who wish to broaden or deepen their understanding in a particular subfield of computer science. Our goal is to provide the most current information in each of the following eleven subfields in a form that is accessible to students, faculty, and professionals in computer science: algorithms, architecture, computational science, graphics, human-computer interaction, information management, intelligent systems, net-centric computing, operating systems, programming languages, and software engineering
The field of computer science has undergone a dramatic evolution in its short 70-year life. As the field has matured, new areas of research and applications have emerged and joined with classical discoveries in a continuous cycle of revitalization and growth. In the 1930s, fundamental mathematical principles of computingwere developed byTuring andChurch.
Early computers implementedby vonNeumann,Wilkes, Eckert,Atanasoff,andothers in the 1940s led tothe birth of scientific and commercial computing in the 1950s, and to mathematical programming languages like Fortran, commercial languages like COBOL, and artificial-intelligence languages like LISP. In the 1960s the rapid development and consolidation of the subjects of algorithms, data structures, databases, and operating systems formed the core of what we now call traditional computer science; the 1970s saw the emergence of software engineering, structured programming, and object-oriented programming. The emergence of personal computing and networks in the 1980s set the stage for dramatic advances in computer graphics, software technology, and parallelism. The 1990s saw the worldwide emergence of the Internet, both as a medium for academic and scientific exchange and as a vehicle for international commerce and communication.
ThisHandbook aims to characterize computer science in thenewmillenium, incorporating the explosive growth of the Internet and the increasing importance of subject areas like human–computer interaction, massively parallel scientific computation, ubiquitous information technology, and other subfields that 1-58488-360-X/$0.00+$1.50 2004 by CRC Press, LLC 1-1 would not have appeared in such an encyclopedia even ten years ago. We begin with the following short definition, a variant of the one offered in [Gibbs 1986], which we believe captures the essential nature of computer science as we know it today.
Computer science is the study of computational processes and information structures, including their hardware realizations, their linguistic models, and their applications. The Handbook is organized into eleven sections which correspond to the eleven major subject areas that characterize computer science [ACM/IEEE 2001], and thus provide a useful modern taxonomy for the discipline. The next section presents a brief history of the computing industry and the parallel development of the computer science curriculum. Section 1.3 frames the practice of computer science in terms of four major conceptual paradigms: theory, abstraction, design, and the social context. Section 1.4 identifies the grand challenges of computer science research and the subsequent emergence of information technology and cyber-infrastructure that may provide a foundation for addressing these challenges during the next decade and beyond. Section 1.5 summarizes the subject matter in each of the Handbook’s eleven sections in some detail.
This Handbook is designed as a professional reference for researchers and practitioners in computer science.Readers interested in exploring specific subject topicsmayprefer tomove directly to the appropriate section of the Handbook — the chapters are organized with minimal interdependence, so that they can be read in any order. To facilitate rapid inquiry, theHandbook contains a Table of Contents and three indexes (Subject, Who’s Who, and Key Algorithms and Formulas), providing access to specific topics at various levels of detail.
Computer Science: The Discipline and its Impact.
Ethical Issues for Computer Scientists.
Algorithms and Complexity
Basic Techniques for Design and Analysis of Algorithms.
Data Structures.
Complexity Theory.
Formal Models and Computability.
Graph and Network Algorithms.
Algebraic Algorithms.
Cryptography.
Parallel Algorithms.
Computational Geometry.
Randomized Algorithms.
Pattern Matching and Text Compression Algorithms.
Genetic Algorithms.
Combinatorial Optimization.
Architecture and Organization
Digital Logic.
Digital Computer Architecture.
Memory Systems.
Buses.
Input/Output Devices and Interaction Techniques.
Secondary Storage Systems.
High-Speed Computer Arithmetic.
Parallel Architectures.
Architecture and Networks.
Fault Tolerance.
Computational Science
Geometry-Grid Generation.
Scientific Visualization.
Computational Structural Mechanics.
Computational Electromagnetics.
Computational Fluid Dynamics.
Computational Ocean Modeling.
Computational Chemistry.
Computational Astrophysics.
Computational Biology.
Graphics and Visual Computing
Overview of Three-Dimensional Computer Graphics.
Geometric Primitives.
Advanced Geometric Modeling.
Mainstream Rendering Techniques.
Sampling, Reconstruction, and Antialiasing.
Computer Animation.
Volume Visualization.
Virtual Reality.
Computer Vision.
Human-Computer Interaction
The Organizational Contexts of Development and Use.
Usability Engineering.
Task Analysis and the Design of Functionality.
Human-Centered System Development.
Graphical User Interface Programming.
Multimedia.
Computer-Supported CollaborativeWork.
Applying International Usability Standards.
Information Management
Data Models.
Tuning Database Design for High Performance.
Access Methods.
Query Optimization.
Concurrency Control and Recovery.
Transaction Processing.
Distributed and Parallel Database Systems.
Multimedia Databases: Analysis, Modeling, Querying, and Indexing.
Database Security and Privacy.
Intelligent Systems
Logic-Based Reasoning for Intelligent Systems.
Qualitative Reasoning.
Search.
Understanding Spoken Language.
Decision Trees and Instance-Based Classifiers.
Neural Networks.
Planning and Scheduling.
Explanation-Based Learning.
Cognitive Modeling.
Graphical Models for Probabilistic and Causal Reasoning.
Robotics.
Net-Centric Computing
Network Organization and Topologies.
Routing Protocols.
Network and Internet Security.
Information Retrieval and Data Mining.
Data Compression.
Security and Privacy.
Malicious Software and Hacking.
Authentication, Access Control, and Intrusion Detection.
Operating Systems
What Is an Operating System?
Thread Management for Shared-Memory Multiprocessors.
Process and Device Scheduling.
Real-Time and Embedded Systems.
Process Synchronization and Interprocess Communication.
Virtual Memory.
Secondary Storage and Filesystems.
Overview of Distributed Operating Systems.
Distributed and Multiprocessor Scheduling.
Distributed File Systems and Distributed Memory.
Programming Languages
Imperative Language Paradigm.
The Object-Oriented Language Paradigm.
Functional Programming Languages.
Logic Programming and Constraint Logic Programming.
Scripting Languages.
Event-Driven Programming.
Concurrent/Distributed Computing Paradigm.
Type Systems.
Programming Language Semantics.
Compilers and Interpreters.
Runtime Environments and Memory Management.
Software Qualities and Principles.
Software Process Models.
Traditional Software Design.
Object-Oriented Software Design.
Software Testing.
Formal Methods.
Verification and Validation.
Development Strategies and Project Management.
Software Architecture.
Specialized System Development.
Appeddix
Professional Societies in Computing.
The ACM Code of Ethics and Professional Conduct.
Standards-Making Bodies and Standards.
Common Languages and Conventions.
  • Sign up or login using form at top of the page to download this file.
  • Sign up
Up