Introduction to Programming with C#

The course objective is to introduce the students to the bases of computer programming with the C# language. The course covers data types, variables, operators, expressions, statements, logical constructs, loops, arrays, methods, working with objects, strings, basic data structures, input/output and the bases of object-oriented programming.

Requirements

Elementary computer skills: required.

Computer English: initial level.

Preliminary programming skills: not required.

Course Program

0. Course Introduction (lectures: 1)

  • National Academy for Software Development – courses and opportunities

  • Introduction to programming with C# – course overview

  • The final exam and follow-ups

1. Introduction to Programming (lectures:1, practice: 1)

  • What is computer programming?

  • My first C# program

  • Visual Studio. Compiling, running and debugging programs

  • MSDN Library

2. Primitive data types. Variables(lectures: 1, practice: 1)

  • Integer types

  • Floating-point types

  • Boolean type

  • Char

  • String

  • Object

  • Variables. Using variables

  • Literals

3. Operators. Expressions (lectures: 1,practice: 1)

  • Operator Precedence

  • Arithmetic operators

  • Logical Operators

  • Bitwise Operators

  • Comparison Operators

  • Assignment Operators

  • Other operators

  • Implicit and Explicit Type Conversion

  • Expressions

4.Using console (lectures: 1,practice: 1)

  • Printing to the console

  • Reading from the console

5. Conditional statements (lectures: 1,practice: 3)

  • if and if-elsestatements

  • Nested if statements

  • switch-casestatement

6. Loops (lectures: 1, practice: 3)

  • while loops

  • dowhileloops

  • for loops

  • Nested loops

7. Methods (lectures: 1,practice: 1)

  • Declaring methods

  • Calling methods

  • Using parameters

  • Returning values

  • Recursion

8. Intermediate exam (practice: 4)

9. Arrays (lectures: 1, practice: 3)

  • Declaring and creating arrays

  • Accessing array elements

  • Inputting and outputting arrays

  • Iterating over arrays with for and foreach loops

  • Multidimensional arrays

10. Using classes and objects (lectures: 1,practice: 1)

  • Classes and objects

  • Classes in C# - fields, properties, methods, constructors

  • Instance and static members – accessing and calling members

  • Structures

  • Namespaces

  • Introduction to .NET Common Type System

11. Strings and string manipulation (lectures: 1, practice: 3)

  • Basic operations with strings – comparison, concatenation,
    extracting substring, searching

  • More operations with strings – replacing substrings, deleting
    substrings

  • Formatting strings

12. Basic data structures (lectures: 2, practice: 6)

  • Lists – the List<T> class

  • Stacks – Stack<T> class

  • Queues – the Queue<T> class

  • Trees – terminology and types

  • Hash tables – the Dictionary<Tkey, Tvalue> class

13. Basic input/output – text files (lectures: 1, practice: 3)

  • Streams

  • Reading text files

  • Writing text files

  • Handling I/O exceptions

14. Defining classes and objects (lectures: 1, practice: 3)

  • Defining simple classes

  • Using classes and objects

  • Constructors

  • Properties

  • Static members

15. Interview skills (lectures: 1, practice: 1)

16. Object-oriented programming – advanced concepts (lectures: 1,practice: 3)

  • Inheritance

  • Encapsulation and abstraction

  • Cohesion and coupling

  • Polymorphism

17. Final exam (practice: 4)

The final exam is an assignmentthat covers whole the studied material and acts as an entrance exam for thenext level training courses in the Academy (.NET, Java, J2EE).

Training Duration

Lectures: 18 hours

Exercises: 33 hours

Exams: 8 hours

Allocation: 8 weeks, 2 times * 4 hours at week

Pricing

The course is free of charge!

Employment

The best students will get a job offer by a software company and will complete the next level training in the Academy for free.

Discussion Forum

Visit the official discussion forum of the course.