Skip to content

C# Software Solutions Foundations of Program Design

Best in textbook rentals since 2012!

ISBN-10: 0321267168

ISBN-13: 9780321267160

Edition: 2007

Authors: John Lewis

List price: $141.20
Blue ribbon 30 day, 100% satisfaction guarantee!
what's this?
Rush Rewards U
Members Receive:
Carrot Coin icon
XP icon
You have reached 400 XP and carrot coins. That is the daily max!

Lewis provides the most up-to-date introduction to the C# programming language. Takes an object oriented approach by covering C# for a beginning programmer. It provides both text-based and GUI-based examples to demonstrate computing concepts. It uses UML: Unified Modeling Language throughout to illustrate program designs. MARKET: For readers who want to learn how to program using the C# language.
Customers also bought

Book details

List price: $141.20
Copyright year: 2007
Publisher: Addison Wesley
Publication date: 3/16/2006
Binding: Mixed Media
Pages: 736
Size: 7.36" wide x 9.13" long x 0.40" tall
Weight: 2.398
Language: English

Preface
Introduction
Computer Processing
Software Categories
Digital Computers
Binary Numbers
Hardware Components
Computer Architecture
Input/Output Devices
Main Memory and Secondary Memory
The Central Processing Unit
Networks
Network Connections
Local-Area Networks and Wide-Area Networks
The Internet
The World Wide Web
Uniform Resource Locators
The C# Programming Language
A C# Program
Debugging: Starting and Single Stepping Through the Program
Program Structure
Comments
Identifiers and Reserved Words
C# Identifiers
White Space
Program Development
Programming Language Levels
Editors, Compilers, and Interpreters
Development Environments
Syntax and Semantics
Errors
Object-Oriented Programming
Problem Solving
Object-Oriented Software Principles
Data and Expressions
Character Strings
The Write and WriteLine Methods
String Concatenation
Escape Sequences
Variables and Assignment
Variables
The Assignment Statement
Constants
Primitive Data Types
Integers and Floating Points
Signed and Unsigned Integers
The Decimal Data Type
Characters
Booleans
Expressions
Arithmetic Operators
Operator Precedence
Increment and Decrement Operators
Assignment Operators
Data Conversion
Conversion Techniques
Interactive Programs
Debugging: Breakpoints and Viewing Contents of Variables
Windows-Based Applications
Event-Based Programming
Handling Events
Graphical User Interface (GUI)
The Graphics Model
Coordinate Systems
Representing Color
Your First GUI Program
Adding to the Program
Analysis of the Einstein Application
Drawing Shapes
The Graphics Class
Using Classes and Objects
Creating Objects
Overview of Strings
Aliases
String and StringBuilder Class Details
.NET Architecture and Base Class Libraries
Base Class Libraries
The using Declaration
The Random Class
The Math Class
Formatting Output
Standard Numeric Formatting
Custom Numeric Formatting
Composite Formatting
Enumerated Types
Components and Containers
Forms
Loading Forms
Creating New Forms
Accessing Forms Controls in the Form Designer
Placing Controls on the Form
Displaying and Closing the Copyright Form
Displaying the Copyright Form and Using the Load Event
Drawing Lines and Pen Styles
Enumerations in Visual Studio
Pen Example Program
Client Rectangle and Setting Screen Height
Images
Label Demo Program
Writing Classes
Anatomy of a Class
Adding Classes to a Project
Instance Data
UML Class Diagrams
Encapsulation
Visibility Modifiers
Accessors and Mutators
Anatomy of a Method
The return Statement
Parameters
Local Data
Bank Account Example
Properties
Coding Standards
Constructors Revisited
Debugging: Viewing Contents of Object Variables
Debugging: Step Into, Step Out, and Step Over
Using Classes for Graphical Images
Brushes
Hatch Brushes
Gradient Brushes
Graphical User Interfaces
Buttons
Finding Code in Your Source File
Adding Event Handlers Manually
Accept and Cancel Buttons
Text Fields
Cursor Control and Selecting Portions of Text Boxes in Code
Multiline Text Boxes
Control Characters in Text Boxes
Setting Tab Stops
Conditionals and Loops
Boolean Expressions
Equality and Relational Operators
Logical Operators
The if Statement
The if-else Statement
if Statement
Using Block Statements
The Conditional Operator
Nested if Statements
Comparing Data
Comparing Floats
Comparing Characters
Comparing Objects
The switch Statement
The while Statement
Infinite Loops
Nested Loops
Other Loop Controls
The do Statement
The for Statement
The foreach Statement and An Introduction to Arrays
Simple File I/O
Comparing Loops
Debugging: The Watch Window
Debugging: The Command Window
Drawing with Loops and Conditionals
Determining Event Sources
Dialog Boxes
Using Dialog Box Results
MessageBox: The System-Supplied Dialog Box
More Button Components
Check Boxes
Radio Buttons
TextBox Validations
Infinite Loops in Event Handlers
Object-Oriented Design
Software Development Activities
Identifying Classes and Objects
Assigning Responsibilities
Static Class Members
Static Variables
Static Methods
Class Relationships
Dependency
Dependencies Among Objects of the Same Class
Aggregation
The this Reference
Interfaces
The IComparable Interface
Method Design
Method Decomposition
Method Parameters Revisited
The ref keyword
The out keyword
Method Overloading
Operator Overloads in Classes
Creating Class Libraries
Object Browser
Testing
Reviews
Defect Testing
Debugging: Module-Level Testing and Changing Program Order
Debugging: Tracing Problems and the Output Window
GUI Design
Panels and Picture Boxes
Panels
Picture Boxes
Drawing on Controls
Tab Controls
Arrays
Array Elements
Declaring and Using Arrays
Bounds Checking
Initializer Lists
Arrays as Parameters
Arrays of Objects
Command-Line Arguments
Variable-Length Parameter Lists
Two-Dimensional Arrays
Multidimensional Arrays
The ArrayList Class
Specifying an ArrayList Element Type
ArrayList Efficiency
The foreach Loop
Polygons and Polylines
The Point and PointF Classes
The Size and SizeF Classes
The Rectangle and RectangleF Classes
Using ArrayList for Size, Point, and Rectangle
Drawing with Point, PointF, Rectangle, RectangleF, and Arrays
Mouse Events
Key Events
Form Special Events
Inheritance
Creating Subclasses
The protected Modifier
The base Reference
Multiple Inheritance
Overriding Methods
Shadowing Variables
Class Hierarchies
The Object Class
Abstract Classes
Interface Hierarchies
Visibility
Designing for Inheritance
Restricting Inheritance
The Component Class Hierarchy
Overriding Event Handlers
Extending GUI Components
The Timer Class
Polymorphism
Late Binding
Polymorphism Via Inheritance
Polymorphism Via Interfaces
Sorting
Selection Sort
Insertion Sort
Comparing Sorts
Searching
Linear Search
Binary Search
Comparing Searches
Designing for Polymorphism
System Supplied Dialog Boxes
Open File Dialog Box (OpenFileDialog)
Save File Dialog Box (SaveFileDialog)
Folder Browser Dialog Box (FolderBrawserDialog)
Color Dialog Box (ColorDialog)
Font Dialog Box (FontDialog)
Page Setup Dialog Box (PageSetupDialog)
Print Dialog Box (PrintDialog)
Sliders and Up-Down Counters
System Registry Operations
Exceptions
Exception Handling
Uncaught Exceptions
The try-catch Statement
The finally Clause
Exceptions Propagation
The Exception Class Hierarchy
I/O Exceptions
Generating Custom Events
Creating the Delegate
Defining the Event
Generating the Event
Handling the Event
Reviewing Event Processing
Tool Tips and Mnemonics
Tool Tips
Mnemonics
Disabling Components
List Boxes and Combo Boxes
Miscellaneous Controls Example
Calendar Controls
Status Bar
Menus
Serialization
Scroll Panels
Scrolling Text Boxes
Split Panes
Other Sample Programs
Recursion
Recursive Thinking
Infinite Recursion
Recursion in Math
Recursive Programming
Recursion vs. Iteration
Direct vs. Indirect Recursion
Using Recursion
Traversing a Maze
The Towers of Hanoi
Recursion in Graphics
Tiled Pictures
Fractals
Printing
The Print Document (PrintDocument)
Printer Settings (PrinterSettings)
Using the Preview Dialog (PrintPreviewDialog)
The Printed Page
The PrintPage Event Handler
A Print Example
Collections and Data Structures
Collections and Data Structures
Separating Interface from Implementation
Dynamic Representations
Dynamic Structures
A Dynamically Linked List
Other Dynamic List Representations
Linear Data Structures
Queues
Stacks
Nonlinear Data Structures
Trees
Graphs
C# Collection Classes
Adding Custom Indexers to a Class
Number Systems
The Unicode Character Set
Coding Standards, Software Engineering and Related Topics
Visual Studio Installation Guide
Appendices E through G are available at www.aw.com/cssupport under "Author: Lewis."
Index