Course Title Diploma in Python Programming
Typical Schedule 11 Weeks, 1 evening per week
Fees €1,195 including Assessment fees
Number of Intakes per year September and February
Next Commencement Date 26th February 2018 (Mondays, 6-9pm)*
Learning Mode Traditional Classroom Based
Certification CCT Certificate

Programme Overview and Audience

This programme is targeted towards those with no experience in programming who are looking to begin a career in programming with the Python programming language. Python is a general-purpose programming language that has a wide range of industry applications, from small single task scripts to complete desktop applications. This course covers all of the basics of Python programming and extends towards application specific tasks such as utilizing third party libraries and interacting with live databases. This approach allows beginners to become well accustomed to all of the different skills needed to interact with each of the available Python libraries to design and develop console applications and applications with user interfaces.

Python is a programming language which has recently begun to gain an ever-increasing market share. The cross-platform nature of Python allows it to be used for different tasks on any operating system. This allows Python developers to be utilised for many different IT related roles.

This program is well suited for beginners with or without programming experience who want to begin making Python console and Desktop Graphical User Interface (GUI) applications. During this course a focus is placed upon the quality of code created and the overall maintainability of the developed solution.

 

Programme Aims and Objectives

On completion of this course, the learner will have acquired the skills to:

  • Develop a custom program using Python
  • Work with local file storage facilities through Python.
  • Design Pythons scripts to maximize reusability
  • Create object oriented Python code
  • Implement advanced Python features such as error handling and logging, libraries and available services
  • Implement tests using xUnit framework
  • Assess the needs of a user base and design a program specification
  • Design and develop a custom user interface for a python application

Programme Content

This section provides a detailed breakdown of all of the content covered during this course.
Introduction

  • Introduction to software development and how software works
  • Assessing the needs of a user and creating a formal design specification
  • Introducing students to the Python programming language

Operating Systems & Implementations

  • Becoming familiar with installing Python in both Linux and Windows operating systems
  • Understanding and working with different implementations of Python including CPython, Jython and Iron Python
  • Platform neutral development principles

Python Basics

  • Variables
  • Control structures
  • Functions

Data Types

  • Utilizing code libraries
  • Python data structures such as Dictionary, List, Tuples
  • System I/O and file handling files with Python
  • Debugging Python applications

OO Programming

  • Introduction to object-oriented programming with Python
  • Object Creation and Utilisation
  • Getters and Setters

Optimisation & Quality

  • Threads
  • Memory Constraints
  • Code Quality Assessment
  • Design Patterns in Code

Testing and Debugging

  • Error handling and native logging
  • Outline of common utility functions available in Python
  • Unit testing with Python
  • Manipulating XML & JSON with Python

Databases

  • Interacting with databases using Python
  • Benchmarking your Python code and optimization strategies

Third Party Libraries

  • Developing a lightweight client for interacting with HTTP servers
  • Accessing third-party APIs such as Twitter through Python, opening the potential of your application
  • Processing HTML documents using Document Object Model parsers
  • Creating a design specification for an application

GUI Programming

  • User interface design environments
  • Python GUI libraries
  • GUI Widgets in Python

Software Deployment

  • Deployment environment variations
  • Deploying a Python application
  • Developing a user interface
  • Creating an installer for a Python application

Assessment

Continuous Assessment and Project work will be utilised to assess student progression on this programme. This approach provides hand on experience for each of the different libraries and functions discussed during this course.

Career Progression, Opportunities and Further Study Options
This programme provides a strong foundation in the concepts of Python programming in both procedural and object-orientated design. On completion of this course, the learner will have the skills needed to begin a QQI Level 6 program in IT. The learner will also have the skills needed to begin a junior role in IT support relating to Python programming and operating systems or a junior development role in Python programming.

Additional Information

All course material is included in the programme fee. Fees are payable by credit card, debit card, bank transfer, bank draft or cheque. All fees must be paid before the programme begins. Please note that CCT closes on public holidays and for a number of days over the Christmas and New Year holiday period. CCT reserves the right to postpone, cancel, or alter part-time courses without notice, or to change any of the details in the college website or brochures at any time. Fees are not refundable unless the course is cancelled by CCT.

 

*Provisional – subject to change