Mar 29, 2024  
2019-2020 Catalog 
    
2019-2020 Catalog [ARCHIVED CATALOG]

Add to Portfolio (opens a new window)

CIT 129 - Python 2: Algorithms, modeling and data processing, Experimental


Credits: 3
1 Lecture Hours 2 Lab Hours

Prerequisites: CIT 119

 
Description
Building on language foundations developed in Python 1, this second semester python course focuses on the  language’s powerful file processing and data manipulation tools.  Students will explore core libraries that allow programs to access operating system services, manipulate data of many types, interact with the user through graphical user
interfaces (GUIs), and crunch out data metrics. This fast-paced course is project-focused and builds not only python programming skills but also best practices in object-oriented software design.


Learning Outcomes
Upon successful completion of the course, the student will:

  1. Identify and load a python library suitable for processing files of a given type.
  2. Integrate an operating system process into a given program, making use of core python OS-related objects.
  3. Create instances of the core python graphical user interface (GUI) components: buttons, text boxes, select boxes and images
  4. Use data-display related GUI components to convey meaningful information extracted from a simple data set.
  5. Implement a user-centered design in python and gather user feedback to a prototype.
  6. Model the core phases of smart algorithm design with a simple, non-technical design problem.
  7. Convert a given algorithm written in English into working python code and test its functionality.
  8. Design and implement a new algorithm to solve a technical problem.
  9. Creatively design and implement a simulation of a given human or system interaction using best practices in design phases.
  10. Using a version control system, like git, curate an online portfolio of working and documented python code from at least 2 course projects.
  11. Effectively discuss their python skills and their applications to an employer during a practice interview.
Listed Topics
  1. File types and python object adapters
  2. Looping through files with dictionaries
  3. File-based data stores
  4. Operating system interaction
  5. User-interface GUI components
  6. Data display GUI components
  7. GUI Design through user interview
  8. User-centered design
  9. Top-down design approach
  10. Psuedocode versions of algorithms
  11. Algorithm implementation in python
  12. Searching, sorting, and traversal algorithms
  13. Monte carlo simulations
  14. Simulation design phases
  15. Model and unit testing
  16. Technical interview preparation
Reference Materials
Print Book: Python Programming: An Introduction to Computer Science, 2nd Edition, by John
Zelle, Franklin, Beedle, and Associates Independent Press. Amazon link.
Online learning tool: Code Academy’s Interactive Python programming course
Python Software Foundation’s Python 2.7 Language reference


Course and Section Search




Add to Portfolio (opens a new window)