2000-Level Courses

From CompSciWiki
Revision as of 14:16, 4 December 2007 by Sok (Talk | contribs)

Jump to: navigation, search

Main_Page > Computer Science Courses > [[]]


Overview

Welcome to the second year of Computer Science. In your first year, you have learned the basic programming concepts, techniques and how to program in Java language. Computer Science is not just about programming. In second year Computer Science courses, you are going to learn theories that are widely used in the Computer Science field. These courses play an important role in preparing you for more advance study in your third and fourth year Computer Science courses. This page has a list of second year Computer Science courses with a brief overview on the goal of the courses.

Note: Courses that are labelled with * are required for Computer Science Major and Honours program.





Further Information

For more information on this course please visit [ Aurora] or look up this course [ here].

CAUTION:
Please make sure you have completed the required prerequisites (minimum grade of C):

Template loop detected:

Second Year Computer Science Courses

*COMP 2080 Analysis of Algorithms

Problem solving can be complicated. This course is essential to gain the necessary problem solving skills for advance Computer Science study. Analysis of Algorithms introduces various approaches for analyzing and evaluating commonly used algorithms when solving computing problems.

*COMP 2130 Discrete Mathematics for Computer Science

Discrete Mathematics involves the study of ideas that can be divided into separated or discontinuous parts. The purpose of this course is to prepare the students for understanding complex algorithm. You will study and describe computer algorithm and programming language mathematically using Discrete Mathematics theories in this course.

*COMP 2140 Data Structures and Algorithms

Data structures are imperative to Computer Science, and arrays are just the beginning. Data Structures and Algorithms teaches implementation of various data structures (such as trees or tables), ways of storing data in a computer and algorithms for manipulating the data efficiently. This course will also discuss the performance characteristics for each data structure which will help to make good decisions on selecting an appropriate data structure for a particular application.

*COMP 2150 Object Orientation

In your first year, you have learned how to write simple programs using an object-oriented programming language, Java. In this course, you will be introduced to other object-orientation program languages in addition to Java, such as C++. You will also learn additional advanced object-oriented programming techniques (such as polymorphism) to design and implement a computer application.

*COMP 2160 Programming Practices

Good programming practice is crucial for real-world programming. In real-world, programmers occasionally work in group to build an application. Therefore, you are not writing program just for yourself. This course emphasize on how to write program properly using good practices that defined in the IT industry. In addition, this course introduce you to some useful techniques in compiling and debugging program. The concept of memory management and performance issues will also be discussed in this course to help you write better program.

COMP 2190 Introduction to Scientific Computing

Have you ever wondered how the special effects are generated in a movie? Movie graphic designers use graphic generation software which are developed based on Scientific Computing concepts to edit scenes in a movie. Scientific Computing involves creating mathematical solutions that uses computer to analyze and solve scientific and engineering problems. This course will introduce you to the concepts of numerical simulation processing and geometry computation which used primarily in graphic design.

Highly recommended for students that are interested in computer graphic design.

*COMP 2280 Introduction to Computer Systems

By understanding how the computer system works will helps you in writing a better program. This course will introduce you some basic computer architectures and discuss program and data representations and manipulation inside a computer at the machine level. You will also learn how to write programs to communicate with hardwares inside a computer directly.

COMP 2980 Workterm 1

University is not the only place for learning. The Department of Computer Science has a Co-op program that arrange students to work in business firms, IT firms or government agencies on a four month paid work term. This is the perfect opportunity to gain working experience and network with potential employers before you graduate. After you have completed your second year Computer Science courses, you can start applying for the admission to the Computer Science Co-op program. Please visit the Computer Science Co-op Program website for more information.