NCBS 443A: JUST-IN-TIME SUPPORT FOR C S 3A
Foothill College Course Outline of Record
Heading | Value |
---|---|
Effective Term: | Summer 2022 |
Units: | 0 |
Hours: | 2.5 lecture per week (30 total per quarter) |
Corequisite: | C S 3A. |
Degree & Credit Status: | Non-Degree-Applicable Non-Credit Course |
Foothill GE: | Non-GE |
Transferable: | None |
Grade Type: | Non-Credit Course (Receives no Grade) |
Repeatability: | Unlimited Repeatability |
Student Learning Outcomes
- Students are able to discuss and apply debugging techniques, and use the debugger included in their integrated development environment
- Students will demonstrate an ability to read project specifications and write functioning programs that meet those specifications
- Students are able to discuss and apply PEP-8 and other python style guidelines
- Students will demonstrate the ability to install an Integrated Development Environment on a computer
Description
A just-in-time approach to the core prerequisite skills, competencies, and concepts needed in C S 3A. Intended for students who are concurrently enrolled in C S 3A at Foothill College. Topics include: installation of an integrated development environment and other software, navigating a file system hierarchy, developing a logic-based approach to programming, identifying errors in a program using a debugger and other means.
Course Objectives
The student will be able to:
- Explore topics related to developing effective learning skills
- Install integrated development environment software
- Manipulate a hierarchical file system
- Write code that follows a software specification/requirements document
- Demonstrate an understanding of flow control using flowcharts and other means
- Identify and fix program errors using a debugger and other means
- Write pseudocode and turn pseudocode into programming code
- Follow style conventions in a particular programming language
Course Content
- Explore topics related to developing effective learning skills
- Learn study skills
- Organizational skills
- Time management
- Test preparation
- Research
- Install integrated development environment software
- Navigate to a vendor site and choose an appropriate operating system and software version
- Unpack software as needed
- Choose appropriate installation options
- Solve installation issues
- Manipulate a hierarchical file system
- Navigate to a target folder/directory
- Move, copy, delete and rename files
- Write code that follows a software specification/requirements document
- Parse the spec into required program elements, such as classes, functions, and variables
- Run provided testing code to verify that a program behaves as expected
- Develop testing code to verify that a program meets spec
- Prepare a sample run to document successful testing
- Demonstrate an understanding of flow control using flowcharts and other means
- While loops
- For loops
- If statements
- Exit conditions
- Identify and fix program errors using a debugger and other means
- Unconditional and conditional breakpoints
- Watch lists
- Stack trace
- Write pseudocode and turn pseudocode into programming code
- Follow style conventions in a particular programming language
Lab Content
Not applicable.
Special Facilities and/or Equipment
Access to a computer laboratory with the appropriate software.
Method(s) of Evaluation
Methods of Evaluation may include but are not limited to the following:
Group and independent exploratory activities
Homework
Performance in C S 3A
Method(s) of Instruction
Methods of Instruction may include but are not limited to the following:
Group work
Discussion
Mini-lectures
Instructor-guided discovery
Formative assessment
Representative Text(s) and Other Materials
Horstmann, Cay S., and Rance D. Necaise. Python for Everyone, 3rd ed.. 2019.
Types and/or Examples of Required Reading, Writing, and Outside of Class Assignments
- Assigned reading from the parent course, and supplemental reading as assigned to reinforce course concepts
- Written documentation of code
- Written reflection after completing an assignment, and after receiving feedback
- Supplemental coding assignments to reinforce concepts from the parent course
Discipline(s)
Computer Science