Computer Science II

Computer Science II

Course Description

Also Listed as Advanced Programming

This course covers the fundamentals of algorithms and object oriented software development. Topics include: modern IDE for software development, primitive and reference data types, encapsulation, information hiding, selection, iteration, functions/methods, parameters, recursion, exception handling, generic linear data structures (arrays, records/structs) and maps, file types, file I/O, simple GUIs with event handling, programming to an interface, lambda expressions, semantics of inheritance and use of polymorphism, relation with subtyping, search (sequential, binary), select (min, max), and sort (bubble, insertion, selection) algorithms, complexity notation, documentation using standard tools, program testing (unit testing) and debugging, reasoning about control flow in a program, and societal impacts related to computing and software.


Transfer Guarantee

Core Courses are courses that fulfill lower-level requirements and apply to any transfer path major where they appear. Computer Science II is universal course description, which maps to specific courses on SUNY campuses. Approved SUNY Transfer Path Core Courses are guaranteed to transfer to fulfill requirements in the major and/or required cognates (not just as electives) at all SUNY campuses if the course is completed with a grade of C or better.1 You may Search for Core Course equivalents using the Transfer Navigator.

1 While a grade of C or better is guaranteed, campuses can have different policies where they accept a passing grade lower than C. Pass/Fail courses may be accepted at the discretion of the campus, but transfer is not guaranteed.