Introduction to Programming & Coding | C# .Net Basics for Non-Developers is a skills-focused, hands-on coding course that teaches students the fundamentals of programming object oriented (OO) applications with C#.Net to a basic level, using sound coding skills and best practices for OO development. This course includes an introduction to C#.Net and Visual Studio, the application development cycle, structure of programs, and specific language syntax, developing common algorithms, console and file I/O, error handling, .NET and Windows Forms. Students will leave this course armed with the required skills to begin their journey as a .Net programmer using modern coding skills and technologies.


* Actual course outline may vary depending on offering center. Contact your sales representative for more information.

Learning Objectives

Working within an engaging, hands-on learning environment led by our highly-experienced coding mentors, students will learn how to:
Using Visual Studio to create C# applications
Working with the .NET data types
Creating variables with the proper scope and using operators to build complex expressions
Using control structures such as if, while and for
Using procedures to build complex applications
Designing and using classes
Using arrays and .NET collections
Throwing and trapping exceptions using the C# try and catch statements
Using ADO.NET to access databases
Working with files and directories
Building simple Windows Forms applications
Building and using derived classes
Defining and implementing interfaces
Performing advanced string manipulation

  • Application Development Fundamentals

  • Overview of Programming Concepts
    Understanding the Structure of a C# Program
    Understanding Data Types
    Working with Variables
    Reading From and Writing to the Console
    Overview of the .NET Framework
    Using Visual Studio
    Thinking Like a Programmer
    Designing Algorithms
    Finding Patterns in Code

  • Managing the Flow of an Application

  • Conditional Constructs
    Working with if/else Constructs
    Working with switch
    Looping Constructs
    Working with while Constructs
    Working with for and for each
    Thinking Like a Programmer
    Making Decisions
    Designing Loops

  • Working with Data

  • Using Integer Data Types
    Using Floating Point Data Types
    Using Characters and Strings
    Using Dates
    Using Booleans
    Working with Constants and Literals

  • Using Procedures to Modularize Code

  • Defining and Calling Subroutines
    Defining and Calling Functions
    Understanding Variable Scope
    Overloading Procedures Passing Parameters
    Understanding by value vs by reference Parameters
    Understanding the Call Stack
    Thinking Like a Programmer
    Finding the Procedures
    Improving Productivity with Snippets

  • Object-Oriented Programming

  • Understanding Object-Oriented Concepts
    Designing Classes
    Coding Properties and Methods
    Initializing Objects with Constructors
    Overloading Constructors
    Declaring and Instantiating Objects
    Calling Properties and Methods
    Understanding Value Types vs. Reference Types
    Working with Shared Data Members and Methods
    Thinking Like a Programmer
    Finding your Classes

  • Understanding Namespaces

  • Understanding the Role of Namespaces
    Understanding .NET Namespaces
    Defining Custom Namespaces
    Referencing Members in a Namespace
    Using the using Statement

  • Working with Data Collections

  • Understanding Arrays
    Declaring and Instantiating Arrays
    Iterating through Arrays
    Working with System.Array Methods
    Copying, Sorting, Searching and Resizing
    Passing Arrays to Methods
    Working with param array Parameters
    Working with Command-line Arguments
    Understanding .NET Collections
    Managing Data Using List
    Managing Data Using Dictionary
    Working with LINQ
    Making LINQ Queries
    Enumerating LINQ Query Results
    Working with Anonymous Types
    Using Extension Methods with LINQ

  • Building Inheritance Hierarchies

  • Understanding Inheritance
    Building Derived Classes
    Understanding Constructors in Derived Classes
    Defining and Using Protected Class Members
    Understanding Polymorphism
    Defining Overridable Methods
    Overriding Methods
    Understanding Abstract Classes
    Defining Abstract Classes
    Inheriting from Abstract Classes

  • Building GUIs with Windows Forms

  • Overview of Windows Forms
    Designing Forms
    Working with Controls
    Using Labels and Textboxes
    Using Buttons
    Using Checkboxes and Radio Buttons
    Using Menus
    Using List Controls
    Handling Events

  • Accessing Databases Using ADO.NET

  • Understanding the ADO.NET Object Model
    Opening Connections
    Executing Queries Using Commands
    Iterating Through Results Using DataReaders
    Calling Stored Procedures
    Passing Parameters to Stored Procedures
    Working with DataSets
    Binding Data to Controls

  • Exception Handling

  • Understanding Exception Handling
    Using try/catch to Handle Exceptions
    Working with the Exception Class
    Understanding Exception Propagation
    Using finally to Manage Cleanup Processing
    Throwing Exceptions

  • Working with Files, Directories and Streams

  • Using the System.IO Namespace
    Discovering Drives
    Working with Directories
    Working with Files
    Parsing a File Path
    Understanding Streams
    Working with FileStream
    Reading and Writing Text Files
    Understanding other Types of Streams

  • Working with Strings

  • Working with the String Class
    Working with String Literals and Escape Sequences
    Understanding String Manipulation Performance Issues
    Working with the StringBuilder Class
    Formatting Output with String.Format

  • Building N-Tier Applications

  • Building Large Scale Applications
    Designing N-Tier Applications
    Building .NET Assemblies
    Referencing Assemblies


This course is intended for anyone who is new to software development and wants, or needs, to gain an understanding of the fundamentals of coding and basics of .Net and object-oriented programming concepts or anyone who wants to have a basic understanding of and learn how to code C# .Net / .Net Core applications and syntax. Attendees might include anyone who wants exposure to basic coding skills, or who wants to begin the process of becoming an OO application developer; Technical team members from non-development roles, re-skilling to move into software and application development roles within an organization; Recent college graduates looking to apply their college experience to programming skills in a professional environment, or perhaps needing to learn the best practices and standards for programming within their new organization; Technical managers tasked with overseeing programming teams, or development projects.




Before attending this course, students must have: Ability to use computers to start programs, open and save files, navigate application menus and interfaces Ability to understand logical concepts such as comparisons Understand number theory Ability to create, understand, and follow structured directions or step-by-step procedures Ability to understand and apply abstract concepts to concrete examples


Length: 5.0 days (40 hours)


Not Your Location? Change

Course Schedule:

Schedule select
10:00 AM ET -
6:00 PM ET
Filling Fast
Schedule select
10:00 AM ET -
6:00 PM ET
Filling Fast
Schedule select
10:00 AM ET -
6:00 PM ET
Filling Fast
Schedule select
10:00 AM ET -
6:00 PM ET
Filling Fast
Schedule select
10:00 AM ET -
6:00 PM ET
Filling Fast