C# Curriculum
Our C# programming course is designed for individuals who want to learn C# from scratch, regardless of their current knowledge. The course is divided into two parts: "Programming fundamentals in C#" and "Object-oriented programming in C#". The first part covers the basics of C# programming, while the second part focuses on more advanced concepts.
Each part is divided into six modules, and each module contains a project to help students apply what they have learned. Our approach to learning is flexible, allowing students to choose to take all or just a few modules depending on their learning goals and requirements.
Our basic course, "Programming fundamentals in C#", is ideal for beginners who want to learn the basics of programming with C#. On the other hand, the advanced course, "Object-oriented programming in C#", is designed for those who want to take their C# programming skills to the next level.
Our course is perfect for individuals who want to develop their skills for a career in the IT industry or for those who want to learn coding as an extracurricular activity. We understand that each student's schedule and pace of learning are unique, and we strive to provide flexible learning solutions that best meet the needs of our students.
Programming fundamentals
-
Topic 1: Overview of C#
Topic 2: Setting up the C# Development Environment
Topic 3: Writing and Running a Simple C# Program
Project: Personal Profile
Overview: In this module, students will learn the basics of C# programming language. They will be introduced to the C# environment and learn how to write and execute a simple program. They will also create a program that prompts the user for their personal information and displays it back to them.
-
Topic 1: Declaring and Initializing Variables
Topic 2: Primitive Data Types
Topic 3: String Data Type
Project: Temperature Conversion
Overview: In this module, students will learn about variables and data types in C#. They will be introduced to the primitive data types and learn how to declare and initialize variables. They will also create a program that converts temperature from Fahrenheit to Celsius.
-
Topic 1: Arithmetic Operators
Topic 2: Relational Operators
Topic 3: Logical Operators
Project: Simple Calculator
Overview: In this module, students will learn about operators and expressions in C#. They will be introduced to arithmetic, relational, and logical operators and learn how to use them to perform basic calculations. They will also create a program that functions as a simple calculator.
-
Topic 1: If-else Statements
Topic 2: Switch Statements
Topic 3: For Loops
Topic 4: While Loops
Project: Guess the Number
Overview: In this module, students will learn about control structures in C#. They will be introduced to if-else and switch statements and learn how to use them to make decisions in their programs. They will also learn about for and while loops and use them to create a program that generates a random number and prompts the user to guess it.
-
Topic 1: Declaring and Initializing Arrays
Topic 2: Accessing Array Elements
Topic 3: Array Operations
Topic 4: Introduction to Collections
Project: Phonebook
Overview: In this module, students will learn about arrays and collections in C#. They will be introduced to the concept of arrays, how to declare and initialize them, and how to perform basic operations on them. They will also learn about collections and use them to create a program that manages a phonebook.
-
Topic 1: Defining and Calling Methods
Topic 2: Passing Parameters
Topic 3: Returning Values
Project: Tic Tac Toe Game
Overview: In this project, you will create a Tic Tac Toe game using C#. The game will be a two-player game, where each player takes turns placing their symbol (X or O) on a 3x3 grid until one player wins or the game ends in a tie.
Object-Oriented Programming
-
Object-oriented programming concepts and principles
C# classes and objects
Class constructors and instance variables
Class methods and static variables
Access modifiers
Encapsulation
Project: Library Catalog System
Overview: In this project, you will create a simple library catalog system using C# classes and objects. The program should allow users to add new books, search for books by title or author, and view book details. You will use the object-oriented concepts and principles learned in this module to create the program.
-
Inheritance and its advantages
C# inheritance syntax
Method overriding and base keyword
Polymorphism and its types
Abstract classes and methods
Interfaces and their implementation
Project: Vehicle Hierarchy
Overview: In this project, you will implement inheritance and polymorphism to create a hierarchy of vehicles. You will create a base Vehicle class and extend it to create specific vehicle classes like Car, Truck, and Motorcycle. You will use the concepts of inheritance and polymorphism learned in this module to create the program.
-
Exceptions and their types
Try-catch-finally blocks
Checked and unchecked exceptions
Input and output streams in C#
Reading and writing files
Project: Employee Management System
Overview: In this project, you will create an employee management system using C# exception handling and file I/O techniques. The program should allow users to add, view, update, and delete employee records. You will use the exception handling and file I/O concepts learned in this module to create the program.
-
Generic classes and methods
Type parameters and constraints
Collection interfaces and classes
List, Dictionary, and HashSet
Iterators and foreach loop
Project: Social Network System
Overview: In this project, you will create a social network system using C# generics and collections. The program should allow users to add, view, update, and delete user profiles and posts from the social network database. You will use the generics and collections concepts learned in this module to create the program.
-
Introduction to Windows Forms framework
Windows Forms controls and containers
Layout managers
Event-driven programming
Handling events with event handlers
Project: Connect 4
Overview: In this project, you will create a Connect 4 game using Java Swing components and event handling. The game should allow users to play against each other on a graphical game board. You will use the Swing components and event handling concepts learned in this module to create the program. The game should have the following features:
A grid for the game board
Tokens for each player that can be dropped into the grid
Rules for winning the game (4 tokens in a row horizontally, vertically, or diagonally)
Option to start a new game or quit the program
-
Introduction to networking in C#
IP addresses and ports
Client-server model
Socket programming in C#
Creating a server and client
Project: Online Chat System
Overview: In this project, you will create an online chat system using C# socket programming. The program should allow users to connect to a server and chat with other users in real time. You will use the socket programming concepts learned in this module to create the program.