SUNY Korea Computing Society
CSE 216 - Programming Abstractions
CSE 216 - Programming Abstractions
Intermediate-level programming concepts and paradigms, including functional programming, object-orientation, basics of type systems, memory management, program and data abstractions, parameter passing, modularity, version control, and parallel programming. Includes weekly recitations, which provide students with experience in the practice of programming in a variety of high-level languages.
Details | Description |
---|---|
Credits | 4 |
Prerequisites | C or higher in CSE 214; CSE major |
Course Outcomes
- An understanding of programming language paradigms and tradeoffs.
- An understanding of functional techniques to identify, formulate and solve problems.
- An ability to apply techniques of object-oriented programming in the context of software development.
Course Topics
Topic | Materials |
---|---|
Programming Paradigms | |
Names, Scopes and Bindings | |
Object-Oriented Design and Programming | |
Data Types and Type Systems | |
Subroutines | |
Functional Languages | |
Introduction to SML | |
Recursion and Higher Order Functions | |
Software Testing | |
JUnit, Python Unittest | |
Concurrent programming |
Textbooks
Michael L. Scott - Programming Language Pragmatics
Edit this page on GitHub