The Advanced SoftwareDevelopment Certificate teaches skills needed by the software engineering industry. It can be completed in one of the major mainstream languages of instruction (Java, C++ or Python). Besides learning intermediate skills relating to syntax, control structures and simple data structures, the program teaches students advanced data structures including hash tables, trees and graphs, and introduces algorithms intended to solve complex problems using such data structures.
400
Program goals include:
· Design, document, test and debug programs using Python, C++ or Java
· Use design patterns in application programs
· Learn and use techniques for creating modular reusable code
· Learn and use advanced data structures and algorithms in solving non-trivial application problems.
Students learn software development techniques and methods for creating applications using Python, C++or Java. They will learn non-trivial data structures (e.g. hash tables, trees, graphs) and advanced techniques for manipulating them to solving complex real-world problems. Students also apply these skills in practical projects. The successful student will be able to use much of the coursework toward a Bachelor’s degree in computer science.
Program LearningOutcomes:
· Students are able to design, document, test and debug programs using Python, C++ or Java
· Students use design patterns in application programs
· Students demonstrate techniques for creating modular reusable code
Course | Title | Units | Year/Semester (Y1 or S1) |
---|---|---|---|
Required: Select programming language and complete sequence (A, B and C) | Please see suggested sequence below | ||
CS 3A | Object oriented programing methodologies in Python | 4.5 | |
CS 3B | Intermediate Software Design in Python | 4.5 | |
CS 3C | Advanced Data Structures and Algorithms in Python | 4.5 | |
CS 2A | Object oriented programing methodologies in C++ | 4.5 | |
CS 2B | Intermediate Software Design in C++ | 4.5 | |
CS 2C | Advanced Data Structures and algorithms in C++ | 4.5 | |
CS 1A | Object oriented programming methodologies in Java | 4.5 | |
CS 1B | Intermediate software design in Java | 4.5 | |
CS 1C | Advanced data structures and algorithms in Java | 4.5 | |
Plus any three courses from the list below | |||
CS 10 | Computer Architecture and Organization | 4.5 | |
CS 18/Math 22 | Discrete Mathematics | 5 | |
CS22A | Javascript for Programmers | 4.5 | |
CS 30A | Introduction to Linux | 4.5 | |
CS 31A | Introduction to database management systems | 4.5 | |
CS 40A | Software Engineering Methodology | 4.5 | |
CS 50A | Software Basics (CCNA) | 4.5 | |
Math 10 | Elementary Statistics | 5.0 | |
Math 48A | PreCalculus I | 5 | |
Math 48B | PreCalculus II | 5 | |
Math 48 C | PreCalculus III | 5 |
SuggestedSequence:
Fall:CS 3A/2A/1A and MATH 48A
Winter: CS 3B/2B/1B and CS 30A
Spring:CS 3C/2C/1C and CS 40A
No comments to display
No files to display