Computers Under Attack: Intruders, Worms And Viruses by Peter J. DenningComputers Under Attack: Intruders, Worms And Viruses by Peter J. Denning

Computers Under Attack: Intruders, Worms And Viruses

byPeter J. Denning

Paperback | January 1, 1990

Pricing and Purchase Info


Earn 214 plum® points

Prices and offers may vary in store


In stock online

Ships free on orders over $25

Not available in stores


C++ by Dissection presents a thorough introduction to the programming process by carefully developing working programs to illuminate key features of the C++ programming language. This book presents the concepts of the programming process using the "dissection" method, the hallmark feature that has made Ira Pohl's C and Java books of the "By Dissection" series so popular. Dissection is a unique pedagogical tool first developed by the author to point out key features of program code. It is similar to a structured walk-through of the code, with the intention of explaining newly encountered programming elements and idioms as found in working code. The book includes a CD-ROM containing a compiler and an electronic version of the book that allows readers to search, take notes, and highlight right on their computer. Each chapter presents a number of carefully explained programs, which lead the reader in a holistic manner to ever-improving programming skills. Right from the start, the reader is introduced to complete programs, and at an early point in the book, the reader is introduced to writing functions as a major feature of structured programming. It contains four to seven small code dissections per chapter, and then each chapter culminates with a larger, extended code dissection. "Software Engineering" sections in each chapter reinforce sound software engineering skills. The book assumes no programming background and can be used by first-time computer users or by experienced programmers who are transitioning to C++.
Title:Computers Under Attack: Intruders, Worms And VirusesFormat:PaperbackDimensions:592 pages, 9.25 × 6.25 × 0.88 inPublished:January 1, 1990

The following ISBNs are associated with this title:

ISBN - 10:0201530678

ISBN - 13:9780201530674


Table of Contents

1. Writing an ANSI C++ Program.
Getting Ready to Program.
A First Program.
Problem Solving Recipes.
Implementing Our Algorithm in C++.
Software Engineering: Style.
Dr. P's Prescriptions.
C++ compared with Java.

2. Native Types and Statements.
Program Elements.
Program Structure.
Simple Types.
The Traditional Conversions.
Enumeration Types.
Software Engineering: Debugging.
Dr. P's Prescriptions.
C++ compared with Java.

3. Functions, Pointers and Arrays.
Function Invocation.
Function Definition.
The return Statement.
Function Prototypes.
Default Arguments.
Functions as Arguments.
Overloading Functions.
Scope and Storage Class.
Pointer Types.
Reference Declarations.
The Uses of void.
Arrays and Pointers.
Passing Arrays to Functions.
Core Language ADT: char* String.
Multidimensional Arrays.
Operators new and delete.
Software Engineering: Program Correctness.
Dr. P's Prescriptions.
C++ Compared with Java.

4. Classes and Abstract Data Types.
The Aggregate Type class and struct.
Member Selection Operator.
Member Functions.
Access: Private and Public.
Class Scope.
An Example: Flushing.
The this Pointer.
static and const Members.
A Container Class Example: ch_stack.
Software Engineering: Class Design.
Dr. P's Prescriptions.
C++ Compared with Java.
Bit Fields.

5. Ctors, Dtors, Conversions and Operator Overloading.
Classes with Constructors.
Improving the point Class.
Constructing a Stack.
Classes with Destructors.
Members That Are Class Types.
Example: A Singly Linked List.
Strings Using Reference Semantics.
Constructor Issues and Mysteries.
Overloading and Function Selection.
Friend Functions.
Overloading Operators.
Unary Operator Overloading.
Binary Operator Overloading.
Overloading =, and ( ).
Overloading >.
Overloading _>.
Overloading new and delete.
Software Engineering: Overloading.
Dr. P's Prescriptions.
C++ Compared with Java.

6. Templates and Generic Programming.
Template Class stack.
Function Templates.
Generic Code Development: Quicksort.
Class Templates.
Parameterizing the Class vector.
Using STL: string, vector and complex.
Software Engineering: Generics.
Dr. P's Prescriptions.
C++ Compared with Java.

7. Standard Template Library.
A Simple STL Example.
Numerical Integration Made Easy.
STL: Function Objects.
Software Engineering: STL Use.
Dr. P's Prescriptions.
C++ Compared with Java.

8. Inheritance and OOP.
A Derived Class.
A Student ISA Person.
Virtual Functions: How T is Dynamically Determined.
Abstract Base Classes.
Templates and Inheritance.
Multiple Inheritance.
Inheritance and Design.
Runtime Type Identification.
Software Engineering: Inheritance.
Dr. P's Prescriptions.
C++ Compared with Java.

9. Input/Output.
The Output Class ostream.
Formatted Output and iomanip.
User-Defined Types: Output.
The Input Class istream.
Using Strings as Streams.
The Functions and Macros in ctype.
Using Stream States.
Mixing I/O Libraries.
Software Engineering: IO.
Dr. P's Prescriptions.
C++ Compared with Java.

10. Exceptions and Program Correctness.
Using the assert Library.
C++ Exceptions.
Throwing Exceptions.
try Blocks.
Converting Assertions to Exceptions.
Exception Specification.
terminate() and unexpected().
Standard Exceptions and Their Uses.
Software Engineering: Exception Objects.
Dr. P's Prescriptions.
C++ Compared with Java.

11. OOP Using C++.
OOP Language Requirements.
OOP: The Dominant Programming Methodology.
Designing with OOP in Mind.
Design Patterns.
Software Engineering: Last Thoughts.
Dr. P's Prescriptions.
C++ Compared with Java.

From Our Editors

Prominent computer scientist Peter Denning defines and distinguishes among the various kinds of attacks--intrusions, worms, and viruses. His book addresses the vulnerabilities inherent in a networked world through the stories of two major incidents that attracted national attention: the Internet Worm and the Wiley Hacker