Duration
5 days
Overview
C# is a general purpose, multi-paradigm programming language developed by Microsoft that runs on the .NET Framework. C# is widely used for building mobile applications, games and windows applications. This is an introductory programming course using the C# language. It does not assume any prior programming experience. This course will prepare students for intermediate C# and ASP.NET courses.
Chapter 1: Introducing C#
- What is the .NET Framework?
- What is C#?
- Visual Studio 2017
Chapter 2: Writing a C# Program
- The Visual Studio 2017 Development Environment
- Console Application
- Desktop Applications
Chapter 3: Variables and Expressions
- BasicC# Syntax
- Basic C# Console Application Structure
- Variables
- Simply Types
- Variable Naming
- Litreal Valluels
- Expressions
- Mathematical Operators
- Assignment Operators
- Operator Precedence
- Namespaces
Chapter 4: Flow Control
- Boolean Logic
- Boolean Bitwise and Assignment Operators
- Operator Precedence Updated
- Branching
- The Ternary Operator
- The if statement
- The switch statement
- Looping
- do Loops
- while Loops
- for Loops
- interrupting Loops
- Infinite Loops
Chapter 5: More About Variables
- Type Conversion
- Implicit Conversions
- Explicit Conversions
- Explicit Conversions Using the Convert Commands
- Complex Variable Types
- Enumerations
- Structs
- Arrays
- Multidimensional Arrays
- Arrays of Arrays
- String Manipulation
Chapter 6: Functions
- Defining and Using Functions
- Return Values
- Parameters
- Variable Scope
- The Main() Function
- Struct Functions
- Overloading Functions
- Using Delegates
Chapter 7: Debugging and Error Handling
- Debugging in Visual Studio
- Error Handling
- try-catch-finally
- Throw Expressions
- Listing and Configuring Exceptions
Chapter 8: Introduction to Object-Oriented Programming
- What is Object-Oriented Programming?
- What is an Object?
- Everything’s an Object
- The Life Cycle of an Object
- Static and Instance Class Members
- OOP Techniques
- Interfaces
- Inheritance
- Polymorphism
- Relationships between Objects
- Operator Overloading
- Events
- Reference Types versus Value Types
- OOP in Desktop Applications
Chapter 9: Defining Classes
- Class Definitions in C#
- Interface Definitions
- System.Object
- Constructors and Destructors
- OOP Tools in Visual Studio
- Class Library Projects
- Interfaces versus Abstract Classes
- Struct Types
- Shallow Copying versus Deep Copying
Chapter 10: Defining Class Members
- Member Definitions
- Defining Fields
- Defining Methods
- Defining Properties
- Tuple Deconstruction
- Refactoring Members
- Automatic Properties
- Additional Class Member Topics
- Hiding Base Class Methods
- Calling Overridden or Hidden Base Class Methods
- Using Nested Type Definitions
- Interface Implementation
- Implementing Interfaces in Classes
- Partial Class Definitions
- Partial Method Definitions
- The Call Hierarchy Window
Chapter 11: Collections, Comparisons, and Conversions
- Collections
- Using Collections
- Defining Collections
- Indexers
- Comparisons
- Type Comparisons
- Pattern Matching with the is Operator Pattern Expression
- Value Comparisons
- Conversions
- Overloading Conversion Operators
- The as Operator
Chapter 12: Generics
- What Are Generics?
- Using Generics
- Nullable Types
- The System.Collections.Generic Namespace
- Defining Generic Types
- Defining Generic Classes
- Defining Generic Interfaces
- Defining Generic Methods
- Defining Generic Delegates
- Variance
- Covariance
- Contravariance
Chapter 13: Files
- File Classes for Input and Output
- The File and Directory Classes
- The FileInfo Class
- The DirectoryInfo Class
- Path Names and Relative Paths
- Streams
- Classes for Using Streams
- The FileStream Object
- The StreamWriter Object
- The StreamReader Object
- Asynchronous File Access
- Reading and Writing Compressed Files
- Monitoring the File System
Programme scope, delivery arrangements and suitability are confirmed during enquiry.