Skip to content
wannacode

OOP with C#

Object-oriented programming with C#: from conditions and loops to classes, polymorphism and web applications with ASP.NET.

The course is split into modules, and each module into short lessons. A lesson is a series of cards, one idea per card: a real problem, what actually happens (often with an animation next to the code), a small task, then the next idea. At the end there is an exercise for your editor and a short test.

Every module uses only what the earlier ones have shown. Your progress is kept in your browser: a lesson picks up from the card you reached.

Module 0

Welcome

3 lessons · the language, where it is used, setup

  1. The language you are learning
  2. Getting your computer ready
  3. How to solve a task

Module 1

Language basics

9 lessons · variables, conditions, loops, arrays

  1. Your first program
  2. Variables and types
  3. Input and output
  4. Doing math
  5. Conditions
  6. Loops
  7. Arrays
  8. Tables of numbers
  9. Working with text

Module 2

Methods

4 lessons · code you write once and call many times

  1. Why methods
  2. Parameters and return
  3. Overloading
  4. Recursion

Module 3

Classes and objects

5 lessons · your own types

  1. Your own type
  2. Constructors and this
  3. Behavior
  4. Encapsulation
  5. static: what all objects share

Module 4

Inheritance and polymorphism

5 lessons · what is shared, in one place

  1. Inheritance
  2. Polymorphism
  3. Abstract classes
  4. Interfaces
  5. What is it really?

Module 5

Errors and exceptions

3 lessons · when something goes wrong

  1. When something goes wrong
  2. Different errors and finally
  3. Throwing and your own exceptions

Module 10

Web and desktop

8 lessons · LINQ, async, the internet, MVC, WebAPI, WPF

  1. Lists, dictionaries and LINQ
  2. async and await
  3. How a page gets to you
  4. Your first server
  5. MVC: model, view, controller
  6. Views with Razor
  7. WebAPI: data for other programs
  8. Windows with WPF

Let's make a game

three games from scratch

8 lessons

  1. How to think about a game
  2. RPG 1: the heroes
  3. RPG 2: the battle
  4. RPG 3: the whole game
  5. Epic Cosmos 1: the objects in space
  6. Epic Cosmos 2: resources, buildings, ships
  7. The locked lab 1: rooms and commands
  8. The locked lab 2: puzzles and the way out

Project

a whole program, step by step

1 lesson

  1. Hotel reservations

More

1 page · videos for the course

  1. Useful videos

Made by Ivo Gergov as part of Evo Tech's campaign for accessible programming education ·