Specialization

Computer Programming

DESCRIPTION

Skills Explored Target Audience
Analytic problem solving, programming fundamentals, mobile, web, cloud, and video games Any student who wants to gain programming skills. Not open to Computer Science majors.
Specialization Description
The specialization in computer programming focuses on the practical programming skills necessary to solve technical problems on computers, mobile devices, the web, the cloud, and video games. Expert programmers are in extremely high demand across a wide range of disciplines including business, science, finance, technology, mobile apps, and video games. Learning computer programming will increase your job opportunities in any field!

Requirements for completion (two core courses plus two electives)
Minimum units: 11


All of the following courses (5 units)
ITP 165- Introduction to C++ programming (2 units)*
ITP 365- Managing Data in C++ (3 units)**

* ITP 109x, ITP 115, or a CSCI programming course can be substituted for ITP 165x, though ITP 165x is recommended.
**csci 104 or EE 355 may be substituted for ITP 365.


Electives (choose two courses for a minimum of 6 units):
ITP 341- App Development for Phones and Tablets [Android]*
ITP 342- Mobile Application Development [iOS]*
*Students must take ITP 365 prior to taking ITP 341 or ITP 342
ITP 368- Programming Graphical User Interfaces (3 units)
ITP 380- Video Game Programming (4 units)
ITP 404- Modern Technologies of Web Development (3 units) **
ITP 435- Professional C++ (3 units)
ITP 439- Compiler Development (3 units)

**Students must take ITP 365 prior to taking ITP 341 or ITP 342
**ITP 404x has additional prerequisites outside the minor, though these prerequisites can be waived for students in the minor (subject to faculty approval)

Why Students Take It
Students in math, sciences, business, and many other fields, can greatly increase their job options by having an understanding of how to solve problems as a programmer -- something this specialization is solely focused on.
Industry & Career Info Companies Hiring
Technology and computers are everywhere. Whether it's your mobile device or your car, so many things in the modern era are powered by computers. Understanding and being able to program effectively is, in some ways, the 21st century version of magic. Because of this, programmers are in extraordinarily high demand in industry. Google
Apple
Microsoft
Facebook
IBM
Intel
Adobe
Riot Games
Bloomberg
Apply for this Program Contact Advisor Request Certificate

COURSES

Required Courses (5 units)










ITP-1652Introduction to C++ Programming
ITP-3653Managing Data in C++

Elective Courses (6 units)











Not offered in Spring 2017




ITP-3413App Development for Phones and Tablets
ITP-3423Mobile Application Development
ITP-3683Programming Graphical User Interfaces
ITP-3804Video Game Programming
ITP-4043Modern Technologies of Web Development
ITP-4353Professional C++
ITP-4393Compiler Development

Additional Info

*ITP 109x or ITP 115 can be substituted for ITP 165x, though ITP 165 is recommended.

**ITP 404x has additional prerequisites outside of the minor, though these prerequisites can be waived for students in the minor (subject to faculty approval).

ITP COURSES OFFERED IN Spring 2017

Required Courses










ITP-1652Introduction to C++ Programming
ITP-3653Managing Data in C++

Elective Courses















ITP-3413App Development for Phones and Tablets
ITP-3423Mobile Application Development
ITP-3683Programming Graphical User Interfaces
ITP-3804Video Game Programming
ITP-4353Professional C++
ITP-4393Compiler Development