Have OOPL, Will Travel

ude.saxetu.sc@gninwod


This is a class in the syntax and semantics of Python.


Audience

  • software developers and technical managers

Exercises and Quizzes

  • in-class exercises
  • in-class quizzes

Pedagogy


Prerequisites

  • knowledge of C++ or Java helpful

Resources

  • a class website
  • a Canvas site with discussions and quizzes
  • a Docker image with Python 3.7 and other tools
  • a GitLab site with programming examples
  • a HackerRank site with programming exercises

Tools


Topics

  • assertions
    • why they're inappropriate for unit testing
    • why they're inappropriate for user errors
  • unit testing
    • unittest
    • TestCase
    • main
    • setUp
    • subTest
    • assertIs
    • assertEqual
    • assertRaises
  • recursion
    • tail recursion
  • iteration
    • for in
    • else
    • yield
  • exceptions
    • why they're appropriate for user errors
    • try raise except
    • re-throw exceptions
  • types
    • built-in
    • user-defined
    • mutable
    • immutable
    • hashable
  • containers
    • list
    • tuple
    • namedtuple
    • string
    • set
    • frozenset
    • dict
  • operators
    • r-values
    • l-values
  • variables
    • values
    • references
  • algorithms
    • reduce
    • map
    • filter
    • zip
  • containers
    • __len__
    • iterable
      • __iter__
      • __next__
    • indexable
      • __getitem__
    • range
    • count
  • functions
    • lambda
    • closures
  • comprehensions
    • list
    • set
    • dict
    • generator
  • variables
    • global
    • local
    • class
    • instance
  • methods
    • constructors
    • instance
    • static
    • __init__
    • __iter__
    • __len__
  • functions
    • =
    • *
    • **

Copyright © Glenn P. Downing, 1989-2020