Computer Science 203:

Software Engineering

Gregory M. Kapfhammer

Triangles 1 flickr photo by vincentag shared under a Creative Commons (BY-NC-ND) license

Color Scheme

Key Concept

Corresponding Diagram

In-Class Discussion

In-Class Activity

Details in the Textbook

Think Python

Chapters 1 through 3

Chapter 1

Python Programming Basics

Python Programs

Input and output

Mathematical computations

Conditional execution

Iteration and recursion

Modules, classes, and functions

How are Python and Java the same?

How are Python and Java different?

Why did we pick Java?

Role of the Python interpreter

Role of the Pytest framework

Role of the linting tools

Role of the code formatting standards

Importance of making mistakes

Application to the software project

Chapter 2

Variables, expressions, and statements

Python Programs

Assignment statements

Variable names

Expressions and statements

Script and interactive mode

Order of operations

Python Programs

String manipulation

Source code formatting

Docstrings and comments

Debugging and testing

Errors: syntax, runtime, semantic

Chapter 3


Python Programs

Function calls

Function composition

Function definition

Flow of execution

Parameters and arguments

What are the benefits of functions?