C# Programming

Course:  CS1
Duration:  5 Days
Level:  I
Course Summary

This is a thorough and comprehensive 5-day course providing a practical introduction to programming in C# utilizing the services provided by .NET. It is available at Visual Studio 2019 (C# 6.0), but also relevant to previous releases. Delegates working on earlier releases need to advise us at the time of booking so that we can adapt the course content accordingly.

The course introduces object-oriented concepts at an early stage and C# is taught in a way that capitalizes on this object orientation. Besides supporting traditional OO features, such as classes, inheritance and polymorphism, C# introduces several additional features such as properties, indexers, delegates, events, and interfaces. These make C# a compelling language for developing object-oriented and component-based systems. This course provides thorough coverage of all these features and important new features such as implicit typing, extension methods, lambda expressions and Language-Integrated Query (LINQ) are looked at.

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. It includes a succinct introduction to creating GUI programs using Windows Forms.

« Hide The Details
Topics Covered In This Course

Overview of .NET Framework Programming

  • .NET Executables and the CLR.
  • A .NET Test Bed for C# Programming.
  • Using Visual Studio. Introducing C# Programs
    • 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. Control Structures
        • If Statements.
        • Loops.
        • Arrays.
        • The Foreach Construct.
        • Switch. Object Oriented Programming
        • Objects.
        • Classes.
        • Inheritance.
        • Polymorphism.
        • Object Oriented Languages. 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. Methods, Properties and Operators
        • Methods.
        • Parameter Passing.
        • Method Overloading.
        • Variable Length Parameter Lists.
        • Properties.
        • Operator Overloading. Characters and Strings
        • Characters.
        • Strings.
        • String Input.
        • String Methods.
        • The StringBuilder Class. Arrays and Indexers
        • Arrays.
        • System.Array.
        • Jagged Arrays.
        • Rectangular Arrays.
        • Arrays as Collections.
        • Indexers. Inheritance
        • Single Inheritance.
        • Access Control.
        • Method Hiding.
        • Initialization. Virtual Methods and Polymorphism
        • Virtual Methods and Dynamic Binding.
        • Method Overriding.
        • Polymorphism.
        • Abstract Classes.
        • Sealed Classes.
        • Heterogeneous Collections. Formatting and Conversion
        • Using the ToString Method.
        • Format Strings.
        • String Formatting Methods.
        • Type Conversions. Exceptions
        • Exception Fundamentals.
        • Structured Exception Handling. Interfaces
        • Interface Fundamentals.
        • Programming with Interfaces.
        • Using Interfaces at Runtime. . NET Interfaces and Collections
        • Collections.
        • IEnumerable and IEnumerator.
        • Copy Semantics and ICloneable.
        • Comparing Objects.
        • Generic Types.
        • Type Safe Collections. Delegates and Events
        • Delegates.
        • Anonymous Methods.
        • Events. Introduction to Windows Forms
        • Creating Windows Applications Using VS.
        • Partial Classes.
        • Buttons, Labels and Textboxes.
        • Handling Events.
        • Listbox Controls. Other Features
        • Auto Implemented Properties.
        • Implicitly Typed Variables.
        • Object Initializers.
        • Collection Initializers.
        • Anonymous Types.
        • Partial Methods.
        • Extension Methods.
        • Lambda Expressions.
What You Can Expect

Upon successful completion of this course, students will be able to:

  • Implement programs using C# and classes from the .NET Framework.
  • Implement simple GUI programs using Windows Forms.
  • Work with C# Namespaces, Variables, Operators and Expressions.
  • Understand C# Data Types.
  • Control program execution with control structures.
  • Understand Classes, Inheritance and Polymorphism.
  • Work with Object Properties and Methods.
  • Work with Character and String data.
  • Understand Arrays and Indexers.
  • Format and Convert Data.
  • Handle Exceptions.
  • Understand Interfaces.
  • Understand Collections and Generic Types.
  • Work with Delegates and Events.
  • Create basic Windows Forms.
  • Understand the new features in the latest releases of C#
Who Should Take This Course

This course is for all developers requiring the skills to develop applications in Microsoft's C# language.

Recommended Prerequisites

Delegates would benefit from having some previous programming experience.

Training Style

Hands on.

« Hide The Details

Every student attending a Verhoef Training class will receive a certificate good for $100 toward their next public class taken within a year.

You can also buy "Verhoef Vouchers" to get a discounted rate for a single student in any of our public or web-based classes. Contact your account manager or our sales office for details.

Schedule For This Course
There are currently no public sessions scheduled for this course. We can schedule a private class for your organization just a couple of weeks from now. Or we can let you know the next time we do schedule a public session.
Notify me the next time this course is confirmed!
Can't find the course you want?
Call us at 800.533.3893, or
email us at info@verhoef.com