6055

Please select the start dates for your courses below.

1
Introduction to Programming in C++

Scheduled Start

2
Advanced Programming in C++

Scheduled Start

3
Introduction to Data Structures

Scheduled Start

4
Advanced Data Structures

Scheduled Start

Program Overview
This program will teach you core computer science competencies in programming and data structures. Understanding how programming works is essential in many technical disciplines such Information Technology, Software Engineering, Cybersecurity, and Computer Science. The courses utilize the C++ programming languages to establish a solid foundation in programming and data structures for the students. Students gain valuable hands-on experience programming solutions to problems in the labs. I the labs, students will practice their core programming skills and will also develop many advanced data structures including, hashtables, sorting and search algorithms, binary trees, AVL trees, graph algorithms and many more advanced computing topics. In addition to the applied programming labs, students will also gain an understanding of computational complexity through the analysis of the data structures and programs that are developed.
What you will learn
  • Identify and explain a programming development lifecycle, including planning, analysis, design, development, and maintenance.
  • Demonstrate a basic understanding of object-oriented programming by using structures and classes in software projects.
  • Use object-oriented programming techniques to develop executable programs that include elements such as inheritance and polymorphism.
  • Document and format code in a consistent manner.
  • Apply basic searching and sorting algorithms in software design.
  • Apply single-and multi-dimensional arrays in software.
  • Use a symbolic debugger to find and fix runtime and logical errors in software.
  • Demonstrate a basic understanding of programming methodologies, including object oriented, structured, and procedural programming.
  • Describe the phases of program translation from source code to executable code.
  • Design and develop programs that utilize linked lists to store data internally.
  • Design and develop programs that utilize stacks and queues to manage collections of data.
  • Design and develop programs that recursion to solve problems that can be expressed with recurrence.
  • Utilize binary search trees and balanced trees to implement fast retrieval of data from a collection of data stored in memory.

Course List

1
Introduction to Programming in C++

Course Details
Learn the fundamentals of programming in the C++ programming language, including iteration, decision branching, data types and expression.

2
Advanced Programming in C++

Course Details
Learn the advanced programming topics in the C++ programming language, including functions, computation complexity, arrays and strings.

3
Introduction to Data Structures

Course Details
Learn the advanced programming topics in the C++ programming language, including pointers, dynamic storage, recursion, searching, and sorting.

4
Advanced Data Structures

Course Details
Learn the advanced programming topics in the C++ programming language, including file processing, linked lists, stacks, queues, trees, binary search trees and tree balancing algorithms.

Meet Your Instructors

Aspen Olmsted

Adjunct Professor at New York University Tandon School of Engineering Aspen Olmsted is an adjunct faculty member in the New York University Tandon School of Engineering in the Computer Science and Engineering department. Aspen's fulltime job is as an assistant professor and Graduate program director at the College of Charleston. He obtained a Ph.D. in Computer Science and Engineering from The University of South Carolina. Before his academic career, he was CEO of Alliance Software Corporation. Alliance Software developed N-Tier enterprise applications for the performing arts and humanities market. Dr Olmsted’s research focus is on the development of algorithms and architectures for distributed enterprise solutions that can guarantee security and correctness while maintaining high-availability. In his Secure Data Engineering Lab, Aspen mentors over a dozen graduate and undergraduate students each year

Itay Tal

Industry Assistant Professor at New York University Tandon School of Engineering Tel-Aviv University 2005 M.Sc., Computer Science Tel-Aviv University 1998 B.Sc., Computer Science and Mathematics
6055

Duration

9 months

Learning Partner

New York University (NYUx)

Pacing

Self-paced

Program Type

MicroBachelors®