Course Catalog

Golden Gate University offers degree and certificate programs at three teaching centers and online.

NUMBER COURSE TITLE
CS 50
Introduction to Programming

3 Unit(s)

This course introduces students to computer programming, covering the basics of communicating with a machine using a programming language, like Python. Students will become familiar with essential concepts, algorithms, and elements of Python as a programming language (such as symbols, grammar, and rules) and apply them to analyze, write, and test code. They will be able to translate tasks that can be executed by the computer, helping them solve concrete problems from different areas.

View Course Sections: Summer 2024 , Spring 2024 , Fall 2023

CS 60
Computer Science I

4 Unit(s)

This course introduces students to computer science through object-oriented programming, covering topics from the basic "Hello, World!" program to recursion. Students will learn how to "think like a computer" to solve problems in the digital and non-digital world. They will become familiar with essential concepts and algorithms in the Java programming language and apply them to analyze, write, and test code. Additionally, students will develop a growth mindset when it comes to programming and build skills for debugging, error handling, and defensive programming. They will also recognize the social impact and power of computer science within our modern society. This course may not be audited. This course is offered only for students enrolled in GGU Degrees+ programs, in partnership with Outlier.org.

View Course Sections: Summer 2024 , Spring 2024 , Fall 2023

CS 61
Computer Science II

4 Unit(s)

This course builds on the foundational programming skills from Computer Science I with an emphasis on data structures and algorithm analysis using the Java programming language. Students will learn how to analyze, implement, and solve problems with computational thinking, employing various data structures and algorithmic construction. Students will study techniques for designing and organizing large programs, and they will learn how to optimize their programs for both efficiency and ease of collaboration. Students will have opportunities to explore and connect the ideas in the course through cumulative programming projects. This course may not be audited. This course is offered only for students enrolled in GGU Degrees+ programs, in partnership with Outlier.org.

CS 70
Computer Science I

3 Unit(s)

This course introduces the fundamental concepts of computer science and programming. Students in this course will use a programming language to solve computational and real-life problems. They will apply computational thinking and structure programming after translating problems into computer language. The course covers problem-solving strategies and introduces programming objects (variables, data types, functions, etc.), basic algorithms, and data structures. Students will also become familiar with basic computer architecture (CPU, memory, input/output devices, etc.). This course is offered only for students enrolled in the General Studies, AA (Worldwide) program offered in partnership with upGrad.

View Course Sections: Summer 2024 , Spring 2024 , Fall 2023

CS 71
Computer Science II

3 Unit(s)

This course builds on the foundations laid in CS 70 Computer Science I. Students in this course will apply advanced data structures (e.g., stacks, queues, linked lists, etc.) to code and debug, implement algorithms and principles of object-oriented programming, and use input/output operations for data processing. Additionally, students will focus on code readability, efficiency, and version control systems in order to work on large programming projects. This course is offered only for students enrolled in the General Studies, AA (Worldwide) program offered in partnership with upGrad.

View Course Sections: Summer 2024 , Spring 2024

CS 111
Data Structures and Programming Algorithms

3 Unit(s)

This course covers data structures such as arrays, linked lists, stacks, and queues. It also covers algorithm design techniques such as divide-and-conquer, dynamic programming, algorithm complexity, and performance. Prerequisite(s): CS 50.