- Author: Faraz Rasheed
- Format: PDF (protected – no copying of text to clipboard)
- Price: free
The book is divided in to three progressive levels. In the first beginner stage the author discusses the .Net Framework, C# Language Fundamentals and Object Oriented Programming.
In the second intermediate section he goes into depth with Object Oriented constructs such as inheritance, polymorphism, abstract classes, interfaces, structures, enumerations and exceptions.
In the third and final advanced section he delves into what is required to implement real world applications using C# with Base Libraries, focusing on topics such as Collections, Delegates, Events and Windows Programming with a number of control, as well as Data Access with ADO.Net, Threads and Streams.
Chapters include:
- Introduction
- C# Language Fundamentals
- Classes and Objects
- Inheritance & Polymorphism
- Structures, Enumeration, Garbage Collection & Nested Classes
- Abstract Classes & String Manipulation
- Exception Handling
- Delegates & Events
- WinForms & Windows Applications
- More Windows Controls & Standard Dialog Boxes
- Data Access using ADO.Net
- Multithreading
- The File System & Streams
- New Features In C# 2.0
- The Road Ahead
http://www.programmersheaven.com/ebooks/csharp_ebook.pdf
- Author: Richard Riehle
- Format: PDF
- Price: free
This book highlights some key features of the Ada language, with coded examples, that are essential for getting started as an Ada programmer. It emphasizes syntax, control structures, subprogram rules, and how-to coding issues rather than design issues.
Ada Distilled is for experienced programmers new to Ada. Heavily commented example programs help experienced programmer experiment with Ada. This is not a comprehensive book on the entire Ada language. In particular, it says very little about Ada Finalization, Storage Pool Management, Representation Specifications, Concurrency, and other more advanced topics.
Chapters include:
- What is Ada Distilled?
- Summary of Language
- Types and the Type Model
- Control Structures for Algorithms
- Access Types (Pointers)
- Subprograms
- Package Design
- Child Library Units
- Object-Oriented Programming with Packages
- Using Standard Libraries and Annexes
- Exception Management
- Generic Components
- New Names from Old Ones
- Concurrency with Tasking
http://www.adapower.com/pdfs/AdaDistilled07-27-2003.pdf
- Author: John English
- Format: HTML
- Price: free
This book is a beginner’s introduction to Ada 95. It uses an example-driven approach that gradually develops small programs into large case-study type programs. The focus of this book is on using object-oriented approaches to write maintainable, extensive programs. Important and unique ADA features such as exception handling, user-defined types, procedures, functions, and packages are covered early in the text.
Chapters include:
- Programming concepts
- Fundamentals of Ada
- Statements
- Procedures, functions and packages
- Defining new data types
- Composite data types
- Exceptions
- Program design and debugging
- Private types
- Designing with abstract data types
- Dynamic memory allocation
- Generics
- Building a calculator
- Tagged types
- Polymorphism and dispatching
- Controlled types
- An object-oriented calculator
- Designing a spreadsheet
- Multitasking
- Loose ends
- Language summary
- Selected standard packages
- Language-defined attributes
- Package Listings
http://www.it.bton.ac.uk/staff/je/adacraft/
- Author: John Barrow
- Format: online HTML
- Price: free
This course uses Delphi to teach object orientation. Delphi’s roots lie in Pascal, and so it has a sound, structured foundation. It is also strongly object oriented and provides many OO characteristics such as class inheritance, static binding and dynamic binding, and reference semantics.
The module makes extensive use of graded, worked examples to give students hands-on experience in the implementation of OO code. This helps to bridge the gap between the seemingly simple OO principles and the ramifications of these principles in practice. Through the inductive sequencing of concepts and through the extensive use of worked examples, this module strongly supports independent study, and has been prepared with distance learning students in mind.
Chapters include:
- Introduction to OO basics
- Introduction to class inheritance
- Programmer defined classes and objects
- Accessing an object and its data
- The Sender parameter and substitution
- Introducing type inheritance
- Using and abusing inheritance
- Indirection
- Association & Composition
- Two Patterns Using Composition
- Some Patterns for varying behaviour
- Bidirectional links, Callbacks and Linking Classes
- Factory Patterns
- A Decorator
http://delphi.about.com/od/course/a/oop_intro.htm
- Author: Axel Schreiner
- Format: PDF
- Price: free
Object-oriented programming is the current cure-all – although it has been around for much more then ten years. At the core, there is little more to it then finally applying the good programming principles which we have been taught for more then twenty years. C++ (Eiffel, Oberon-2, Smalltalk … take your pick) is the New Language because it is object-oriented – although you need not use it that way if you do not want to (or know how to), and it turns out that you can do just as well with plain ANSI-C. Only object-orientation permits code reuse between projects, although the idea of subroutines is as old as computers and good programmers always carried their toolkits and libraries with them.
This book is not going to praise object-oriented programming or condemn the Old Way. We are simply going to use ANSI-C to discover how object-oriented programming is done, what its techniques are, why they help us solve bigger problems, and how we harness generality and program to catch mistakes earlier. Along the way we encounter all the jargon – classes, inheritance, instances, linkage, methods, objects, polymorphisms, and more – but we take it out of the realm of magic and see how it translates into the things we have known and done all along.
Chapters include:
- Abstract Data Types — Information Hiding
- Dynamic Linkage — Generic Functions
- Programming Savvy — Arithmetic Expressions
- Inheritance — Code Reuse and Refinement
- Programming Savvy — Symbol Table
- Class Hierarchy — Maintainability
- The ooc Preprocessor — Enforcing a Coding Standard
- Dynamic Type Checking — Defensive Programming
- Static Construction— Self-Organization
- Delegates — Callback Functions
- Class Methods— Plugging Memory Leaks
- Persistent Objects — Storing and Loading Data Structures
- Exceptions — Disciplined Error Recovery
- Forwarding Messages — A GUI Calculator
http://www.planetpdf.com/developer/article.asp?contentid=6635