Skip to navigation | Skip to main content | Skip to footer
Menu
Menu

COMP16321 Programming 1 syllabus 2020-2021

COMP16321 materials

COMP16321 Programming 1

Level 1
Credits: 20
Enrolled students: 450

Course leader: Gareth Henshall


Additional staff: view all staff

Requisites

  • Co-Requisite (Compulsory): COMP16412

Assessment methods

  • 50% Written exam
  • 50% Practical skills assessment
Timetable
SemesterEventLocationDayTimeGroup
Sem 1 w2-12 ONLINE Lecture Mon 12:00 - 13:00 -
Sem 1 w2-12 ONLINE Lecture Fri 13:00 - 14:00 -
Sem 1 w3-12 Lab GO2 Fri 09:00 - 10:00 M+W
Sem 1 w3-12 ONLINE Workshop Tue 09:00 - 10:00 Z
Sem 1 w3-12 ONLINE Workshop Tue 10:00 - 11:00 Y
Sem 1 w3-12 Lab GO2 Fri 12:00 - 13:00 M+W
Sem 1 w3-12 Lab GO2 Thu 12:00 - 13:00 Y
Sem 1 w3-12 Lab GO2 Thu 13:00 - 14:00 Y
Sem 1 w3-12 Lab GO2 Wed 13:00 - 14:00 M+W
Sem 1 w3-12 Lab GO2 Wed 14:00 - 15:00 Z
Sem 1 w3-12 Lab GO2 Fri 14:00 - 15:00 X
Sem 1 w3-12 Lab GO2 Thu 14:00 - 15:00 Y
Sem 1 w3-12 ONLINE LabORATORY Tue 14:00 - 15:00 M+W
Sem 1 w3-12 ONLINE Workshop Mon 14:00 - 15:00 X
Sem 1 w3-12 Lab GO2 Wed 15:00 - 16:00 Z
Sem 1 w3-12 Lab GO2 Fri 15:00 - 16:00 X
Sem 1 w3-12 ONLINE Workshop Mon 15:00 - 16:00 W
Sem 1 w3-12 ONLINE LabORATORY Tue 15:00 - 16:00 Y
Sem 1 w3-12 Lab GO2 Wed 16:00 - 17:00 Z
Sem 1 w3-12 ONLINE LabORATORY Tue 16:00 - 17:00 X
Sem 1 w3-12 Lab GO2 Wed 17:00 - 18:00 X
Sem 1 w3-12 ONLINE LabORATORY Tue 17:00 - 18:00 Z

Overview

This course introduces the basic concepts of imperative computer programming using the Python language. The basic principles of becoming a good programmer will be taught through two lectures a week, one in a ‘TED-talk’ style and the second being a live coding session. In addition there are weekly offline workshops designed to test your logical thinking and problem solving, and finally, a weekly laboratory session giving you a chance to put all of your new skills into practice.

This course unit detail provides the framework for delivery in 20/21 and may be subject to change due to any additional Covid-19 impact.  Please see Blackboard / course unit related emails for any further updates.

Aims

By the end of this course unit students will be able to:

  • Write simple python programs using best practice methods
  • Optimise & correct a pre-existing code base
  • View and complete programming tasks in a logical manner

Syllabus

Week 1: Variable, Types and State
Week 2: Iteration
Week 3: Selection
Week 4: File Handling
Week 5: Creating Functions
Week 6: Reading Week
Week 7: Packages and Libraries
Week 8: Graphics and Key Binding
Week 9: Validation and Exceptions
Week 10: Searching and Sorting Algorithms
Week 11: General Introduction to OOP
Week 12: Revision Week

Teaching methods

Lectures:

22 in total, 2 per week

Workshops:

12 in total, each one hour long, run as an offline session designed to enhance your skills as a programmer

Laboratories:

12 in total, each is a two-hour session assisted by an academic and TAs. Labs are formatively assessed and are designed to aid with coursework in this course unit.

Feedback methods

Formative feedback during workshops, laboratories and MCQs. Summative feedback with assessments.

Study hours

  • Lectures (22 hours)
  • Practical classes & workshops (24 hours)

Learning outcomes

On successful completion of this unit, a student will be able to:

  • Explain basic programming constructs and describe their manifestation in different programming languages.                              
  • Explain what a given (simple) program does.
  • Design programs to solve given (simple) problems.
  • Implement maintainable solutions to problems using appropriate development tools.
  • Evaluate the quality of code (correctness, maintainability, efficiency).
  • Estimate the development time needed to implement a solution to a problem.
  • Identify appropriate programming resources (tools, libraries) needed to implement a solution to a problem.  

 

 

Reading list

No reading list found for COMP16321.