Difference between revisions of "OPS435 Python Weekly Schedule 2019 Summer"

From CDOT Wiki
Jump to: navigation, search
Line 191: Line 191:
 
|  
 
|  
 
| <ul>
 
| <ul>
   <li>[[OPS435 Assignment 1 Summer| Assignment 1]]</li>
+
   <li>[[OPS435 Assignment 1 Summer 2019| Assignment 1]]</li>
 
</li>
 
</li>
 
|- style="vertical-align: top; background: none"
 
|- style="vertical-align: top; background: none"

Revision as of 23:12, 10 June 2019

Instructors:

  • Section A: May/June - Chris Johnson, July/Aug - Raymond Chan
  • Section B: May/June - Chris Johnson, July/Aug - Raymond Chan
  • Seciont C: May/June - Azzad Kara, July/Aug - Raymond Chan

Note: Each OPS435 section may have a different due dates for labs, tests and assignments.
This schedule is considered to be a general guideline for week-by-week content.

OPS435 Weekly Task Update
week Topics Reading/Reference Tasks/Labs
1: May 6-10 Course Overview
  • Introduction
  • Why Python?
  • Languate: natural & formal

Python Environment

  • Concepts:
    1. keywords
    2. builtins
  • Python Shell:
    1. help()
    2. dir()
    3. type()
    4. import
  • Think Python: Chapter 1
    • What is a program?
    • Input, process (sequence, looping, repetition), output
    • complier, interpreter
    • Debugging
  • Automate with Python: Chapter 1 & 2
    • Python Basics
    • Flow Control
2:May 13-17 Python Basics:
  • Objects
  • Variables
  • Operations
  • Built-in Functions
  • Think Python: Chapter 2
    • Variable, expressions and statements
    • Script mode and interactive mode
    • Python math operators and order of operations
    • String operation '+' and '*'
  • Automate with Python: Chapter 3 & 4
    • Functions
    • Lists
3:May 20-24 Reusing Python Code:
  • Functions
  • Lists
  • Think Python: Chapter 3 Functions
    • Function calls
    • Adding new functionse
    • Definitions and usess
    • Flow of execution
    • Parameters and arguments
    • Variables and parameters
    • Fruitful functions and void functions
  • Automate with Python: Chapter 5 & 6
    • Dictionaries and structuring data
    • Manipulating Strings
4:May 27-31 Basic Data Structures and String Manipulation:
  • Tuples
  • Lists
  • Sets
  • Dictionaries
  • Strings
  • Think Python: Chapter 5 Conditionals and recursion
    • Boolean expression
    • Logical operators
    • Conditional execution
    • Alternative execution
    • Chained conditionals
    • Nested conditionals
    • Recursion
    • Infinite recursion
    • Keyboard Input
  • Automate with Python: Chapter 7 & 8
    • Regular Expressions
    • Reading and Writing Files
5:Jun 3-7 Files, Exceptions:
  • File Handling
  • Error Handling
  • Think Python: Chapter 14 - Files
    • Reading and writing
    • Format operator
    • Filenames and paths
    • Catching exception
    • Databasess
    • Picking
    • Pipes
    • Writing modules
  • Automate with Python: Chapter 9 & 10
    • Organizing Files
    • Debugging
6:Jun 10-14 Review and Catch up
7:Jun 17-21 Mid-Term Test
  • This week.
  • Topics: Lab 1 to Lab 5 and All topics covered from week 1 to week 5
Catch up
Break Week:
Jun 24-28
8:Jul 1-5 Classes:
  • Components of a class
  • Classes and objects
  • Think Python: Chapter 15 - Classes and objects
    • Programmer-defined types
    • Attributes
    • Instances and return values
    • Objects are mutable
    • Copying
9:Jul 8-12 Classes:
  • Designing classes
  • Think Python: Chapter 16 - Classes and functions
    • Pure functions
    • Modifiers
    • Prototyping versus planning
10:Jul 15-19 Classes:
  • Understanding scope
  • Think Python: Chapter 17 - Classes and methods
    • The init method
    • The __str__methond
    • Operator overloading
    • Type-based dispatch
    • Polymorphism
11:Jul 22-26 Configuration management:
  • Fabric
  • Ansible
12:Jul 29-Aug 2 Python Networking
  • Network Client
  • Network Server
  • Asynchronous Python Networking
13:Aug 5-9 Exam Review
Exam Week:
Aug 12-16