HomeAboutTraining CoursesFAQ
العربيةmohd@sbeeh.com+962 77 984 65 64
SBEEH Software Academy

Instructor-led IT training delivered by Microsoft Certified Trainers (MCT) — in Amman, Jordan, and across the GCC.

Explore

  • About Us
  • IT Training Courses
  • Verify a Certificate
  • FAQ

Get in Touch

  • +962-779846564
  • mohd@sbeeh.com
  • Amman, Jordan

SBEEH Software delivers software development services, advanced technologies implementation, business process automation, IT consulting, and professional IT training led by Microsoft Certified Trainers (MCT) for organizations across Jordan, Saudi Arabia, UAE, Qatar, Kuwait, Bahrain & Oman.

© SBEEH Software. All rights reserved. 2026.

Back to Training Courses
Object-Oriented Programming with C#
.NET DevelopmentBeginnerFace to Face / Online

Object-Oriented Programming with C#

Object-Oriented Programming with C# is a beginner .NET Development course delivered in person and online by SBEEH Software Academy in Amman, Jordan.

3 Days (24 Hours)

Last updated August 16, 2026

This 3-day, hands-on course teaches the object-oriented programming (OOP) foundations that every C# and .NET developer needs before moving into web, desktop, or cloud development. Rather than treating C# as a syntax checklist, the course builds a working mental model of how objects, classes, and the .NET type system fit together, and why OOP design choices matter for maintainability.

Participants write code from the first hour in Visual Studio, progressing from simple console programs to a small multi-class application that models a real business domain (an inventory or booking system). Along the way they learn to structure code with classes and encapsulation, model relationships with inheritance and interfaces, work safely with .NET's generic collections, and handle runtime errors using structured exception handling. The course closes with delegates and events, the mechanism behind .NET's eventing model used throughout ASP.NET, WPF, and Windows Forms applications.

This course is the standard entry point at SBEEH for developers who know basic programming logic (variables, loops, conditionals) but have not yet worked with an object-oriented language, and for developers coming from procedural languages such as C, VBA, or classic ASP who need to adopt modern .NET development practices. Graduates continue directly into ASP.NET Core, Entity Framework Core, or Blazor training with a solid OOP foundation already in place.
Official reference: Microsoft Learn: .NET documentation

Day 1: C# Fundamentals and the .NET Type System

Main Topics:

  • Setting up Visual Studio and the .NET SDK
  • C# syntax, variables, and data types
  • Value types vs. reference types
  • Operators, control flow, and methods
  • Namespaces and assemblies

Detailed Subtopics:

  • Understanding the Common Language Runtime (CLR) and Just-In-Time compilation
  • Boxing and unboxing between value and reference types
  • Method parameters: by value, ref, out, and params
  • Nullable value types and null-conditional operators

Hands-On Lab: Build and debug a console application that performs input validation and basic calculations using .NET's built-in types, then step through it with the Visual Studio debugger.

Real-World Scenario: A retail company needs a small utility to validate and normalize product SKUs entered by warehouse staff before they are saved to a database.

Learning Outcome: Participants can confidently write, compile, and debug procedural C# code and explain how the CLR manages memory for value and reference types.

Day 2: Classes, Encapsulation, Inheritance, and Interfaces

Main Topics:

  • Designing classes: fields, properties, constructors, and methods
  • Encapsulation and access modifiers
  • Inheritance and method overriding
  • Abstract classes vs. interfaces
  • Polymorphism in practice

Detailed Subtopics:

  • Auto-implemented properties vs. properties with backing fields and validation logic
  • Constructor chaining and object initializers
  • Sealed classes and when to use them
  • Implementing multiple interfaces on a single class
  • The 'is-a' vs. 'has-a' design question

Hands-On Lab: Model a small class hierarchy (e.g., Employee → Manager, Developer) with an interface for payroll calculation, demonstrating overriding and polymorphic method calls.

Real-World Scenario: An HR system needs to calculate pay differently for salaried staff, hourly contractors, and commissioned sales staff, all through a common interface.

Learning Outcome: Participants can design a class hierarchy that uses inheritance and interfaces appropriately, and can explain when to prefer composition over inheritance.

Day 3: Collections, Generics, Exceptions, and Events

Main Topics:

  • Generic collections: List, Dictionary, and IEnumerable
  • Writing generic methods and classes
  • Structured exception handling with try/catch/finally
  • Custom exception types
  • Delegates, events, and lambda expressions
  • Capstone build session

Detailed Subtopics:

  • LINQ basics for filtering and projecting collections
  • Creating and throwing custom exceptions with meaningful messages
  • The publisher/subscriber pattern using events
  • Anonymous methods vs. lambda expressions

Hands-On Lab: Extend the Day 2 class hierarchy into a small inventory/booking application: store objects in generic collections, raise a custom event when stock falls below a threshold, and handle invalid input with custom exceptions.

Real-World Scenario: A small e-commerce back office needs a notification triggered automatically whenever a product's stock count drops below a reorder point.

Learning Outcome: Participants complete a working multi-class C# application demonstrating encapsulation, inheritance, generics, exception handling, and events, and can explain how these building blocks map onto larger .NET applications such as ASP.NET Core or Blazor.

Frequently Asked Questions

Additional Notes


Who Is This For?

This course is designed for developers taking their first step into object-oriented, .NET-based development.

  • Junior developers and computer science graduates starting their first C#/.NET role
  • Developers moving from procedural languages (C, VBA, classic ASP) into modern .NET development
  • Students or career-changers preparing for a software development track
  • QA engineers or business analysts who need to read and lightly modify C# code

Prerequisites

No prior C# experience is required, but participants should be comfortable with basic programming concepts before attending.

  • Basic programming logic: variables, loops, conditionals, and functions in any language
  • Comfort using a computer to install and configure development tools (Visual Studio will be provided/guided)
  • Optional: prior exposure to any procedural or scripting language (Python, VBA, JavaScript) is helpful but not required
  • A laptop capable of running Visual Studio 2022 (Windows) for the labs

What certificate do I get after this course?

Upon successful completion of the training, participants will receive an official Certificate of Completion.


Certificate of Completion
Photo Gallery

Moments From This Training

A look at our training sessions — hands-on training sessions with professionals across Jordan and the GCC.

Interested in this training?

Reach out and we'll help you plan the right training for your team.

Back to all courses