Object-Oriented Programming in C# (VS 2017)

Course Number:

N/A

Audience:

Course Duration:
5 Days

Prerequisites:

The student should have programming experience in a high-level language.

Course Objectives:
  • 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
  • Gain a working knowledge of dynamic data type, named and optional arguments, and other new features in C# 4.0.
  • Learn how to do asynchronous programming using new keywords in C# 5.0.
  • Become aware of new features in C# 6.0 and C# 7.0.

 

Course Outline:
  • NET: What You Need To Know
    • .NET Executables and the CLR
    • A .NET Testbed for C# Programming
    • Using Visual Studio 2017
  • First C# Programs
    • Hello, World
    • Namespaces
    • Variables and Expressions
    • Using C# as a Calculator
    • Input/Output in C#
    • .NET Framework Class Library
  • Data Types in C#
    • Data Types
    • Integer Types
    • Floating Point Types
    • Decimal Type
    • Characters and Strings
    • Boolean Type
    • Conversions
    • Nullable Types
  • Operators and Expressions
    • Operator Cardinality
    • Arithmetic Operators
    • Relational Operators
    • Logical Operators
    • Bitwise Operators
    • Assignment Operators
    • Expressions
    • Checked and Unchecked
  • Control Structures
    • If Tests
    • Loops
    • Arrays
    • Foreach
    • More about Control Flow
    • Switch
  • Object-Oriented Programming
    • Objects
    • Classes
    • Inheritance
    • Polymorphism
    • Object-Oriented Languages
    • Components
  • Classes
    • Classes as Structured Data
    • Methods
    • Constructors and Initialization
    • Static Fields and Methods
    • Constant and Readonly
  • More about Types
    • Overview of Types in C#
    • Value Types
    • Boxing and Unboxing
    • Reference Types
    • Implicitly Typed Variables
  • Methods, Properties and Operators
    • Methods
    • Parameter Passing
    • Method Overloading
    • Variable-Length Parameter Lists
    • Properties
    • Auto-Implemented Properties
    • Operator Overloading
  • Characters and Strings
    • Characters
    • Strings
    • String Input
    • String Methods
    • StringBuilder Class
    • Programming with Strings
  • Arrays and Indexers
    • Arrays
    • Array
    • Random Number Generation
    • Jagged Arrays
    • Rectangular Arrays
    • Arrays as Collections
    • Bank Case Study—Step 1
    • Indexers
  • Inheritance
    • Single Inheritance
    • Access Control
    • Method Hiding
    • Initialization
    • Bank Case Study—Step 2
  • 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
  • Formatting and Conversion
    • ToString
    • Format Strings
    • String Formatting Methods
    • Bank Case Study—Step 4
    • Type Conversions
  • Exceptions
    • Exception Fundamentals
    • Structured Exception Handling
    • User-Defined Exception Classes
    • Inner Exceptions
    • Bank Case Study—Step 5
  • Interfaces
    • Interface Fundamentals
    • Programming with Interfaces
    • Using Interfaces at Runtime
    • Bank Case Study—Step 6
    • Resolving Ambiguities
  • .NET Interfaces and Collections
    • Collections
    • Bank Case Study—Step 7
    • IEnumerable and IEnumerator
    • Copy Semantics and ICloneable
    • Comparing Objects
    • Generic Types
    • Type-Safe Collections
    • Object Initializers
    • Collection Initializers
    • Anonymous Types
    • Bank Case Study—Step 8
  • Delegates and Events
    • Delegates
    • Anonymous Methods
    • Lambda Expressions
    • Events
  • Introduction to Windows Forms
    • Creating Windows Applications Using Visual Studio 2017
    • Partial Classes
    • Buttons, Labels and Textboxes
    • Handling Events
    • Listbox Controls
  • Newer Features in C#
    • Dynamic Data Type
    • Named Arguments
    • Optional Arguments
    • Variance in Generic Interfaces
    • Asynchronous Programming Keywords
    • New Features in C# 6.0 and C# 7.0
  • Appendix A.  Learning Resources
  • Electronic File Supplements
  • Supplement 1. Using Visual Studio 2017
    • Signing in to Visual Studio
    • Overview of Visual Studio 2017
    • Creating a Console Application
    • Project Configurations
    • Debugging
    • Multiple-Project Solutions
  • Supplement 2.  Language Integrated Query (LINQ)
    • What Is LINQ?
    • Basic Query Operators
    • Filtering
    • Ordering
    • Aggregation
  • Supplement 3.  Unsafe Code and Pointers in C#
    • Unsafe Code
    • C# Pointer Type
  • Supplement 4.  Using .NET Framework 4.7
    • Installing .NET Framework 4.7
    • DirectX Dependency
    • New Features in .NET 4.7

 

Share on facebook
Share on twitter
Share on linkedin
Share on email

Related Posts

About Us

IT Training, Agile Ways of Working and High Impact Talent Development Strategies

Let Us Come to You!

Classes recently delivered in: Atlanta, Boston, Chicago, Columbus, Dallas, Detroit, Indianapolis, Jerusalem, London, Milan, New York, Palo Alto, Phoenix, Pittsburgh, Portland, Raleigh, San Antonio, San Diego, San Francisco, San Jose, Seattle, Springfield, Mass., St. Louis, Tampa and more!