C-ID Descriptor
Programming Concepts and Methodology I
Descriptor Details
-
Programming Concepts and Methodology I
-
Not Identified
-
122
-
-
Not Identified
-
3.0
-
Not Identified
-
Uploaded: 10/12/2017 04:44:03 PM PDT
Introduces the discipline of computer science using a high level language utilizing programming and practical hands-on problem solving.
None
COMP 112 (CS0) or Comparable Experience
I. Programming Fundamentals (PF)
PF1. Fundamental programming constructs
Minimum coverage time: 9 hours
Topics
- Basic syntax and semantics of a higher-level language
- Variables, types, expressions, and assignment
- Simple I/O
- Conditional and iterative control structures
- Functions and parameter passing
- Structured decomposition
Learning Outcomes
- Analyze and explain the behavior of simple programs involving the fundamental programming constructs covered by this unit;
- Modify and expand short programs that use standard conditional and iterative control structures and functions;
- Design, implement, test, and debug a program that uses each of the following fundamental programming constructs: basic computation, simple I/O, standard conditional and iterative structures, and the definition of functions;
- Choose appropriate conditional and iteration constructs for a given programming task;
- Apply the techniques of structured (functional) decomposition to break a program into smaller pieces; and
- Describe the mechanics of parameter passing.
PF2. Algorithms and problem-solving
Minimum coverage time: 6 hours
Topics
- Problem-solving strategies
- The role of algorithms in the problem-solving process
- Implementation strategies for algorithms
- Debugging strategies
- The concept and properties of algorithms
Learning outcomes
- Discuss the importance of algorithms in the problem-solving process;
- Identify the necessary properties of good algorithms;
- Create algorithms for solving simple problems;
- Use pseudocode or a programming language to implement, test, and debug algorithms for solving simple problems; and
- Describe strategies that are useful in debugging.
II. Programming Languages (PL)
PL1. Overview of programming languages
Minimum coverage time: 2 hours
Topics
- History of programming languages
- Brief survey of programming paradigms
- Procedural languages
- Object-oriented languages
Learning outcomes
- Summarize the evolution of programming languages illustrating how this history has led to the paradigms available today; and
- Identify at least one distinguishing characteristic for each of the programming paradigms covered in this unit.
PL4. Declarations and types
Minimum coverage time: 3 hours
Topics
- The conception of types as a set of values together with a set of operations Declaration models (binding, visibility, scope, and lifetime)
- Overview of type-checking
Learning outcomes
- Explain the value of declaration models, especially with respect to programming-in-the-large;
- Identify and describe the properties of a variable such as its associated address, value, scope, persistence, and size;
- Discuss type incompatibility;
- Demonstrate different forms of binding, visibility, scoping, and lifetime management; and
- Defend the importance of types and type-checking in providing abstraction and safety.
Topics fulfilling these tasks and outcomes could include OOPS and other programming elements. This course is recommended to contain hands-on programming and problem solving tasks.
At the conclusion of this course, the student should be able to:
- Design, implement, test, and debug a program that uses each of the following fundamental programming constructs: basic computation, simple I/O, standard conditional and iterative structures, and the definition of functions;
- Use pseudocode or a programming language to implement, test, and debug algorithms for solving simple problems
- Summarize the evolution of programming languages illustrating how this history has led to the paradigms available today
- Demonstrate different forms of binding, visibility, scoping, and lifetime management
May include any or all of:
Exams
Quizzes
Programming Projects
Discussions
Class Presentations
Savitch, Walter: Problem Solving with C++ Latest Edition
-
No
-
Not Identified
-
Not Identified
-
First course in a sequence of courses that is compliant with the standards of the Association for Computing Machinery (ACM).
-
Not Identified
-
Not Identified
Delete Descriptor?
Are you sure you want to delete this descriptor?
Deleted descriptors cannot be restored.