Essential C# Programming Course
Course Description
This course is aimed at people requiring a comprehensive introduction/intermediate knowledge of the key features of the C# language.
Course pre-requisites:
Topics covered on the 5 day Essential C# Programming course
The classic hello world program compiling and running from the command line using Visual Studio- Arithmetic and expressions
- Integer data types
- Real or floating point data types
- Decimal data types
Overview
- C# History
- Languages and Standards
Language Concepts
- Independent Compilation
- Separate Compilation
- Concrete Data Types
- Abstract Data Types
- Dynamic arrays
- Polymorphism
- Numeric Polymorphism
- General Polymorphism
- Structured Programming
- Stepwise Refinement
- Information Hiding ? Modules
- Pointers and References
- Operator Overloading
- Threads and Multitasking
- Exception Handling
- Object Oriented Programming
- Meyer's Approach
- Rumbaugh et al
- Development Environments
- Graphical Development Tools
- Software Components
- COM, OLE, ActiveX
- JavaBeans
- C# Concepts and Terminology
- Classes
- Constants
- Fields
- Methods
- Properties
- Events
- Indexers
- Instance constructors
- Destructors
- Static constructors
- Inheritance
- Interfaces
- Delegates
- Attributes
An Introduction to C#
- Program Development
- Hello World
- Hello World using Developer Studio
- Console Application
- Simple text i/o
- Simple numeric i/o
- On-Line Documentation
Arithmetic and Expressions in C#
- Integral types
- Floating point types
- The decimal type
- Math Members
- Operators
- Simple Expression Evaluation
- Floating point arithmetic.
- Numeric formatting
- Escapes and Literals
Some more on C# data types
- bool
- Characters and strings in C# - Unicode
- char
- Value and Reference Types
- Enum types
- Other C# types
- Struct types
- Class types
- Object types
- Array types
Strings
- String Constructors, Fields, Methods, Operators and Properties
Arrays In C#
- Simple one dimensional (1 d) array using for statement
- Simple 1 d array using foreach statement
- Array initialisation
- Simple 2 d array
- Arrays of arrays
- Ragged arrays
- Array Member List
- Public Static (Shared) Methods
- Public Instance Properties
- Public Instance Methods
- Protected Instance Constructors
- Protected Instance Methods
Control Structures
- Statements
- labeled statement
- declaration statement
- embedded statement
- End points and reachability
- Blocks
- Statement lists
- The empty statement
- Labeled statements
- Declaration statements
- Expression statements
- Checked and unchecked statements
- The lock statement
- The using statement
- Compound Statement or Block
- Expression
- Iteration statements
- while
- foreach examples
- Jump statements
- break examples
- continue examples
- goto
- return
- Jump example
- try, catch and throw
Input and Output
- Text i/o using the Console class
- Numeric i/o using the Console class
- Text i/o from files using the StreamReader class
- Numeric i/o from files using the StreamReader class
- Reading a file name from standard input
- Reading a file name from the command line
- Using StreamReader and StreamWriter with hard coded file names
- Reading a file from a web server
- Reading tabular data from a text file
- The System.Console Class
- The StreamReader Class
- The System.IO.File Class
Exceptions
- The Exception Hierarchy
- Single Public Fields
- Public Methods
- Integer Arithmetic Exceptions Examples
- Floating point Examples
Threads
- Basic thread syntax
- Using sleep
- Threads and static variables
- Threads with static variables and locked sections
- Threads with start, suspend and resume
- Thread priority
- Thread states
Structs in C#
- Basic struct syntax
- Simple struct example - dates
Classes
- Basic Class syntax
- Examples
- Greatest Common Divider
- Recursion in C#
- Checked arithmetic
- Using try and catch
- Date Class
- Arrays of Dates
- Inheritance - Virtual Date Base Class
- Parameter Passing
- Passing by ref and out
- Notes
- Instance and Static members
- Instance and Member Example
An Introduction to the System.Collections Namespace
- Names and Telephone Numbers using the Hashtable Class
- Names and Telephone Numbers using the SortedList Class
- A Spelling Checker
- Spelling Checker 2
Operator Overloading
- Complex in other languages
- Simple example using the float data type
- Simple example using the double data type
- Supporting mixed mode complex arithmetic using implicit type conversions
- Supporting mixed mode complex arithmetic using explicit type conversions
- Arrays of Complex Numbers
An Introduction to Windows Programming
- The .Net IDE
- Other Languages and the .Net Environment
- Visual Development
- The Toolbox
- The Form
- The Solutions Window
- The Properties Window
- Buttons and event handling using a MessageBox control
- Getting help when writing programs
- Running the program
- Using TextBoxes to get user input
- Using RichTextBoxes to display program output
- Using a PictureBox to display a graphics image
- Selecting a file with the OpenFileDialog control
- Text and Graphics using GDI+
- GDI+
- Creating Graphical Images with GDI+
- Rendering with GDI+
- 2-D Vector Graphics
- Imaging
- Text and Typography
- Coordinate systems
- The OnPaint method and parameters
- Graphics objects
- Simple graphics example using the DrawLine method
- Plotting sines and cosines - default coordinate system
- Plotting sine and cosine with alternate coordinate system
- Simple text example
- Sum of three numbers
- BMI Calculations
Additional Language Features
- Events and Event Handling
- Interfaces
- Attributes
- Delegates
- Windows Programming
- The Scribble Example
- Namespaces
- Assemblies and Versioning
Course Classification:
Technical Training Course
This is an instructor led training course taught in a classroom based environment.
Scheduled course dates
| March 2010 | April 2010 | May 2010 | June 2010 | July 2010 |
| 1-5 | 12-16 | 24-28 | - | - |
View full schedule of C Programming courses
Print / Download PDF Version of full course schedule
If you would prefer to run this course at your premises as you have several employees to place on the course perhaps, then we are also able to offer onsite Programming Training and bespoke Programming courses