You are on page 1of 3

OBJECT-ORIENTED PROGRAMMING IN C#

Course Duration: 5 days.

Course Overview: Microsoft’s .NET is a revolutionary advance in programming


technology that greatly simplifies application development and is a good match for the
emerging paradigm of Web-based services, as opposed to proprietary applications. Part
of this technology is a new language, C#. This new language combines the power of
C++ and the ease of development of Visual Basic. It bears a striking resemblance to
Java and improves on that language. C# may well become the dominant language for
building applications on Microsoft platforms.

This thorough and comprehensive course is a practical introduction to programming in


C#, utilizing the services provided by .NET. This course emphasizes the C# language

This course is intended to be fully accessible to programmers who do not already have a
strong background in object-oriented programming in C-like languages, such as C++ or
Java. It is ideal, for example, for Visual Basic or COBOL programmers who desire to
learn C#. The course may also be taken by more experienced programmers who desire
a thorough introduction to C# with many example programs. It is structured so that more
experienced programmers can cleanly skip the material they already know.

An important thrust of the course is to teach C# programming from an object-oriented


perspective. It is often difficult for programmers trained originally in a procedural
language to start “thinking in objects.” This course introduces object-oriented concepts
early, and C# is developed in a way that leverages its object orientation. A case study is
used to illustrate creating a complete system using C# and .NET. Besides supporting
traditional object-oriented features, such as classes, inheritance, and polymorphism, C#
introduces several additional features, such as properties, indexers, delegates, events,
and interfaces that make C# a compelling language for developing object-oriented and
component-based systems. This course provides thorough coverage of all these
features.

C# as a language is elegant and powerful. But to utilize its capabilities fully, you need to
have a good understanding of how it works with the .NET Framework. The course
explores several important interactions between C# and the .NET Framework, and it
includes an introduction to major classes for collections, delegates, and events. The final
chapter provides a succinct introduction to creating GUI programs using Windows
Forms.

Numerous programming examples and exercises are provided, including the case study.
The student will receive a comprehensive set of materials, including course notes and all
the programming examples.
Learning Objectives:
· Gain a basic understanding of the philosophy and architecture of .NET
· Acquire a working knowledge of C# programming
· Learn how to implement programs using C# and classes from the .NET Framework
· Learn how to implement simple GUI programs using Windows Forms

Prerequisites: The student should have programming experience in a high-level


language.

COURSE OUTLINE
PART 1. INTRODUCTION TO .NET Operators and Expressions
AND C# · Operator Cardinality
.NET Framework · Arithmetic Operators
· .NET: What You Need To Know · Relational Operators
· What Is Microsoft .NET? · Logical Operators
· .NET Framework Overview · Bitwise Operators
· Common Language Runtime · Assignment Operators
· Expressions
First C# Programs · Checked and Unchecked
· Hello, World
· Namespaces Control Structures
· Variables and Expressions · If Tests
· Using C# as a Calculator · Loops
· Input/Output in C# · Preview of Arrays and Foreach
· .NET Framework Class Library · More About Control Flow
· Switch
Visual Studio .NET
· Overview of Visual Studio .NET PART 3. C# PROGRAMMING
FUNDAMENTALS
· Creating a Console Application
· Project Configurations Object-Oriented Programming
· Debugging · Objects
PART 2. C# AS A LANGUAGE IN THE · Classes
C FAMILY · Inheritance
· Polymorphism
Simple Data Types · Object-Oriented Languages
· Data Types · Components
· Integer Types · Electronic Commerce Game Case
· Floating Point Types Study
· Decimal Type
Classes
· Character Type
· Boolean Type · Classes as Structured Data
· Conversions · Methods
· Constructors and Initialization
· Static Fields and Methods
· Constant and Readonly
The C# Type System Formatting and Conversion
· Overview of Types in C# · ToString
· Value Types · Format Strings
· Boxing and Unboxing · String Formatting Methods
· Reference Types · Bank Case Study—Step 4
Methods, Properties, and Operators · Type Conversions
· Methods Exceptions
· Parameter Passing · Exception Fundamentals
· Method Overloading · Structured Exception Handling
· Variable-Length Parameter Lists · User-Defined Exception Classes
· Properties · Inner Exceptions
· Operator Overloading · Bank Case Study—Step 5
Characters and Strings Interfaces
· Characters · Interface Fundamentals
· Strings · Programming with Interfaces
· String Input · Using Interfaces at Runtime
· String Methods · Bank Case Study—Step 6
· StringBuilder Class · Resolving Ambiguities
· Programming with Strings PART 4. C# AND THE .NET
Arrays and Indexers FRAMEWORK
· Arrays Interfaces and the .NET Framework
· System.Array · Collections
· Random Number Generation · Bank Case Study—Step 7
· Jagged Arrays · Copy Semantics and ICloneable
· Rectangular Arrays · Comparing Objects
· Arrays as Collections · Understanding Frameworks
· Bank Case Study—Step 1
· Indexers Delegates and Events
· Delegates
Inheritance · Stock Market Simulation
· Single Inheritance · Events
· Access Control
· Method Hiding Introduction to Windows Forms
· Initialization · Creating Windows Applications
· Bank Case Study—Step 2 Using Visual Studio .NET
· Handling Events
Virtual Methods and Polymorphism
· Virtual Methods and Dynamic
Binding
· Method Overriding
· Fragile Base Class Problem
· Polymorphism
· Abstract Classes
· Sealed Classes
· Heterogeneous Collections
· Bank Case Study—Step 3

You might also like