Topics


Software Engineering Database Design Programming in Python
pair programming
unit testing (unittest)
acceptance testing
source control (Git, GitHub)
issue tracking (GitHub)
documentation (pydoc)
UML (Gliffy, yUML)
extreme programming
DTD, XML, XSD, JSON
create, drop, and insert
select, project, and join
functional dependencies
multivalued dependencies
normalization
assertions and exceptions
built-in and user-defined types
stack and heap
garbage collection
control structures
lists, tuples, sets, and dicts
regular expressions
higher-order functions
function objects and lambdas
generators
classes
static and non-static data and methods
abstraction and encapsulation
interface and implementation
containers and iterators
association, aggregation, and inheritance
refinement and replacement overriding
run-time polymorphism
static and dynamic binding
virtual function tables
multiple inheritance
reflection