Table of Contents

1 The best way to read this site

The best way to read all pages of this site is to use the table of content dropdown menu on the upper right of the page. It shows the structure of the page, and allows navigation with minimal scrolling. Using it you will always know what you are reading currently.

2 Fall 2016

2.1 Syllabus

2.1.1 Recommended books

  • Mastering Object-oriented Python (2014) by Steven Lott (Safari Book Online from USD library)
  • Mastering Python Design Patterns (2015)by Sakis Kasampalis (Safari Book Online from USD library)
  • Python Cookbook 3rd Ed (2013) by Dave Beasley & Brian Jones (Safari Book Online from USD library)
  • Python 3 Object Oriented Programming by Dusty Phillips (Safari Book Online from USD library)
  • Learning Python Design Patterns (2013) by Gennadiy Zlobin (Safari Book Online from USD library)
  • Python Programming Patterns (2001) by Thomas Christopher ($2 from Amazon)
  • Design Patterns in Python, by Rahul Verma and Chetan Giridhar (Free book online)
  • Learning IPython for Interactive Computing and Data Visualization by Cyrille Rossant (Safari Book Online from USD library)
  • Design Patterns: Elements of Reusable Object-Oriented Software by the Gang of Four
  • David Flanagan's books on Java, JavaScript and Ruby (Safari Book Online from USD library)
  • The Definitive Guide to Jython: Python for the Java Platform by Josh Juneau et al (Safari Book Online from USD library)
  • Dive into Python 3, free download
  • and more …

2.1.2 Learning Outcome

Upon successful completion of this course, students will be able to:

  • Decide when to use object oriented programming and when not to
  • Choose among statically typed language such as Java, or dynamically typed languages such as Python or Ruby
  • Design and implement software systems using classes or prototypes while making appropriate use of inheritance, dynamic binding, unit testing, and design patterns
  • Achieve code reuse and avoid code duplication

2.1.3 Grading System

Your grade consists of 4 components:

  1. 15% Quizzes, and Short homework problems due in a day or two
  2. 35% More substantial homework assignments
  3. 20% Midterm Exam
  4. 30% Comprehensive Final

2.1.4 Classroom, Office, Web Site, Github Pages, etc

2.1.5 Final

Wednesday, Dec 14, 5 to 7

2.1.6 Academic Integrity

The Department strongly promotes academic integrity. Consequences of violations of academic integrity policy are severe.

2.1.7 Gradebook

2.1.8 Class Album

Date: <2015-09-01>

Author: Luby Liao

Created: 2016-09-21 Wed 10:24

Emacs (Org mode 8.2.5c)