Personal Website

ITE409: Advanced Programming

Course Description:

The main purpose of this course is to introduce students to the object-oriented programming (OOP) paradigm building on the functional programming paradigm covered in their previous programming courses. C# supports all the traditional OOP features, such as classes, inheritance, and polymorphism. Additionally, it also introduces features such as properties, indexers, events and interfaces. This makes C# a compelling language for developing object-oriented and component-based systems. Therefore, Microsoft C# as the programming language and Microsoft Visual Studio as the IDE will be used in the course. Problem analysis, solution design, debugging, and decision making all are well covered as part of this course using an OOP paradigm. Students also experiment building Windows graphical-user interface (GUI) applications using the C# language and the .NET platform. The practical part of the course focuses on programming and developing application programs that emphasis the concepts and the tools covered in the course.

Course Goal:

The goal of this course is to introduce students to the object-oriented programming (OOP) paradigm, the C# language with the .NET framework, and Microsoft Visual Studio.

Course Objectives:

Upon successful completion of this course, students will be able to:

  1. Analyze problems, describe requirements, and design solutions using an OOP approach.
  2. Understand, design, write, and test C# programs.
  3. Implement programs using C# and classes from the .NET Framework
  4. Implement simple GUI programs using Windows Forms and/or WPF
  5. Be well aware of the capabilities of the C# language and the .NET framework and their application domains.