Full course description
Importance of Programming Languages:
Understanding different programming languages and their paradigms can increase the capacity of expressing ideas, commanding programming languages, choosing appropriate languages for given programming tasks, learning new languages, and designing new languages. This deficiency exam will cover imperative, object-oriented, functional, and logic programming paradigms, which are required for supporting several courses in our computer science and software engineering programs, including CSE 310 (Data Structures and Algorithms), CSE330 (Operating Systems), and CSE340 (Principles of Programming Languages).
This deficiency exam will cover the following course objectives:
- Objective 1: Understood features of different programming paradigms, including imperative, object-oriented, functional, and logic programming paradigms.
- Objective 2: Understood procedural programming language C and written C programs using pointers and various data structures and programming techniques, including linked list and recursion.
- Objective 3: Understood object-oriented programming language C++ and written C++ programs using pointers, different memory types (static, stack, and heap), and object-oriented features such as inheritance, polymorphism and class hierarchy.
- Objective 4: Developed an introductory understanding of an applicative programming language and written Scheme programs requiring multiple functions and recursive functions.
- Objective 5: Developed an introductory understanding of a declarative programming language and written Prolog programs that use multiple rules and recursive rules to solve a problem.
Who this deficiency exam designed for:
Students who are admitted with deficiencies to graduate programs in Software Engineering in the School of Computing, Informatics, and Decision Systems Engineering (CIDSE) at Arizona State University or students who are interested in becoming eligible to apply for this program. Students may also complete this deficiency exam if they have general interest in the topic area or who are looking for a refresher on operating systems.
What you'll receive:
If you are planning to apply for the Master of Science in Software Engineering program, please upload the certificate of completion in the prerequisite section of the application. If you are currently enrolled in the Master of Science in Software Engineering program, you will need to submit the Deficiency waiver form and upload your certificate here: https://forms.gle/AW11qXka1QVwaPoMA