SFU Course Code |
Description |
Related Textbook |
Programming Language / Software / Tools |
Platform |
CMPT 128 |
Introduction to Computing Science for Eng. Students |
Absolute C++ : Walter Savitch |
C++ / MS Visual Studio |
Windows |
CMPT 150 |
Introduction to Computer Design |
Logic and Computer Design Fundamentals : M. Morris Mano |
Assembly Language |
MIPS |
CMPT 225 |
Data Structures and Programming |
Data Structures and Other Objects Using C++ : Walter Savitch |
C++ / g++ Compiler |
Linux |
CMPT 250 |
Introduction to Computer Architecture |
Computer Organization and Design : David A. Patterson |
VHDL |
MIPS |
CMPT 275 |
Software Engineering I |
Software Engineering : Ian Sommerville |
Objective-C / MS Project |
Mac OS X / iOS / Windows |
CMPT 300 |
Operating Systems I |
Modern Operating Systems : Tanenbaum |
C/gcc - C++/g++ Compiler |
Linux |
CMPT 307 |
Data Structures and Algorithms |
Introduction to Algorithms : T. H. Cormen |
NA |
NA |
CMPT 320 |
Sociotechnological Issues of Computing Science |
Various Articles and Lecture Notes |
NA |
NA |
CMPT 354 |
Database Systems I |
Database Systems : Kifer |
SQL / MS SQL Server |
Windows |
CMPT 363 |
User Interface Design |
Various Articles and Lecture Notes |
myBalsamiq |
NA |
CMPT 365 |
Multimedia Systems |
Fundamentals of Multimedia : Z. N. Li |
C++/g++ Compiler - MATLAB |
Linux - Windows |
CMPT 370 |
Information System Design |
System Analysis and Design in a Changing World : John W. Satzinger |
UML / MS Visio |
Windows |
CMPT 371 |
Data Communications and Networking |
Computer Networking - A Top-Down Approach : James F. Kurose |
C++/g++ Compiler |
Linux |
CMPT 383 |
Comparative Programming Languages |
Programming Language Pragmatics : Michael L. Scott |
Haskell / Prolog |
Windows |
CMPT 415 |
Special Research Project: Undergraduate Capstone Open Source Project |
NA |
C++ / JavaScript / BlackBerry 10 SDK / Apache Cordova API |
Windows / Linux / BB10 |
CMPT 454 |
Database Systems II |
Database Systems : Kifer |
NA |
NA |
CMPT 470 |
Web-Based Information Systems |
Various Articles and Lecture Notes |
HTML5 / CSS 3 / LAMP Server / PHP / MySQL / PHPmyAdmin / Laravel Framework for PHP / CakePHP Framework / jQuery / JSON / JavaScript |
Linux / Linux Server |
CMPT 471 |
Networking II |
Internetworking with TCP/IP Volume One : Douglas E. Comer |
Bash Scripting - C++/g++ Compiler |
Linux |
CMPT 474 |
Web Systems Architecture |
Various Articles and Lecture Notes |
AWS Amazon EC2 / Python |
Linux |
CMPT 475 |
Software Engineering II |
Facts and Fallacies of Software Engineering : Robert L. Glass |
UML / MS Visio |
Windows |
CMPT 376W |
Technical Writing and Group Dynamic |
Style: Lessons in Clarity and Grace : Joseph M. Williams |
NA |
NA |
I have also completed several Engineering courses in physics, chemistry, and mechanics (solid, and fluid) during my studies at University of Tehran, and Kwantlen Polytechnic University towards my Civil Eng. degree.