Technical Programming Option


Technical Programming option is focused on efficient software development and maintenance in today's world characterized by complex applications requiring different levels of functionality, performance, flexibility and integration. Based on previous basic understanding of programming methods, computer architecture and programming languages (C, Java and C++) students will enhance their programming skills by learning advanced techniques needed for software development: object-oriented analysis and design code techniques used for desktop, Web and distributed applications (client-server and 3-tier architectures),  concurrent programming (multi-threading, synchronization  and interprocess-communication),  and project management.
Technical programming specialization helps students gain low-level programming skills at the Win32 API and Windows kernel level as well as high-level programming skills. Low-level programming skills are important for software development because they offer deep understanding of the functionality at the operating system level and improve the quality of software design and development at any other level. The high-level programming skills are practiced using the .NET framework and include Windows forms, Windows Presentation Foundation (WPF), Windows Communication Foundation (WCF), ASP.NET and ADO.NET. It is well known that in today's world almost any software application involves a Web component; therefore the option offers a good understanding and practice in this area: distributed Web applications using Web Services and WCF, dynamically-built Web pages with ASP.NET, data access technologies with ADO.NET, and multimedia applications using Silverlight.
In Technical Programming, students also learn project management skills and techniques by designing and implementing a large project. The project is intended to give students the chance to experience the work and responsibilities of a real-life project. Students learn to work in a team, manage or report to a manager, keep deadlines, take responsibilities and have initiative. The class (set) of 20 students is organized into teams of 3 – 4 students with a team leader and a project manager. Students have analysis, design, programming and testing responsibilities.
Compared to other Options how Different is the Curriculum?

There are three option courses:

  1. Comp3951 - Offered in January
  2. Comp4952 - Offered in September
  3. Comp4956 - Offered in September

Besides the otion courses, you will also take:

  • Win32(Comp3770) and Graphics course(Comp4560)
  • Two industry projects(Comp3900 and Comp4900)                                              

more details..