CS411 : Visual Programming

Course Overview

Course Synopsis

This course is about graphical user interfaces and the event-driven model as applied to desktop, web, and mobile applications. It uses a ground up approach from what you already know. This is a hands-on course. We will use in-class examples and you should focus on completing programming assignments to understand the material.

Course Learning Outcomes

Align the students with latest available tecnologies in software development.

  • Students should have strong programming base.
  • Students should have sound knowledge in Microsoft .Net technology
  • Students should be able to tackle any programming related problem dealing with .Net
  • Students should be able to switch out any other version of .net deployed by Microsoft

Course Calendar

Introduction & Administrivia1Handouts5-8
Introduction to Events2Handouts9-12
Event-driven programming3Handouts13-16
Introduction to C#4Handouts17-20
Basic C# language constructs5Handouts21-26
Object oriented programming in C#6Handouts27-34
Properties, interfaces, and indexers7Handouts35-42
Delegates, C# events, exception handling8Handouts43-46
Attributes, enums, operator overloading9Handouts47-52
Reading and writing XML10Handouts53-60
Assignment No.1 (Graded)
Working with files and directories11Handouts61-68
Introduction to WPF and XAML12Handouts69-70
Property elements, type converters, markup extensions13Handouts71-74
XAML and procedural code14Handouts75-76
Logical and visual trees15Handouts77-82
Dependency properties16Handouts83-88
Quiz No.1 (Graded)
Attached properties and element display17Handouts89-94
Transforms and Panels18Handouts95-100
Mid Term Exams
Grid Panel19Handouts101-106
Content Overflow20Handouts107-110
Panel composition21Handouts111-118
Input events22Handouts119-122
Touch manipulation events23Handouts123-128
WPF Commands24Handouts129-132
Deploying & Installing25Handouts133-136
Navigation-base apps26Handouts137-140
XAML Browser apps27Handouts141-144
Data binding29Handouts151-156
Assignment No.2 (Graded)
Collection View30Handouts157-162
Hierarchical Data Template31Handouts163-168
Introduction to Threads32Handouts169-172
Tasks & Continuations33Handouts173-176
Asynchronous functions34Handouts177-182
Parallel programs35Handouts183-188
Concurrent collections36Handouts189-194
Introduction to HTML, CSS, and JavaScript37Handouts195-200
DOM and the jQuery library38Handouts201-204
jQuery events39Handouts205-210
AJAX programming in JavaScript40Handouts211-216
Introduction to Objective-C41Handouts217-222
iOS mobile programming42Handouts223-232
Quiz No.2 (Graded)
Delegates and CoreLocation framework43Handouts233-240
Touch events44Handouts241-252
Blocks and Grand Central Dispatch45Handouts253-257
Final Term Exams
Back to Top