Principles 4
Ages 13-18

Object-Oriented Programming with PyGame

Prerequisites: Principles of Code 3

Our introduction to foundational concepts and techniques in computer programming culminates in this course where programming concepts hitherto learned like loops, functions and lists come to life as students design and build their way through their own platformer video game using the PyGame* game development framework.

Code Campers will be introduced to the object-oriented programming (OOP) paradigm - a problem solving approach that allows the programmer to think about the behaviour of his or her program in terms of a collection of objects and how they interact. These skills are then applied to the context of the game programming, where objects are used to abstract the idea of a video game as a collection of characters animated on a display.

The completion of this course will enable the student to solve complex problems beyond the field of game programming - by viewing and reasoning about problems as complex systems of simpler, intertwined objects, students gain a powerful framework for designing and building larger programs and software.

*PyGame is a lightweight albeit powerful Python game engine that allows students to build and examine the internal workings of some of their favourite video games.

2:00pm - 4:00pm
Weekend Weekly
2hrs x 8 Saturdays:
Apr 14, 21, 28
May 5, 12, 19, 26
Jun 2
Sign Up
Frequently Asked Questions

“Coding” is synonymous with “programming”. It refers to the art of writing computer code, which are instructions that a computer can follow to solve problems. Practically every facet of technology that we encounter in our daily lives - from online banking systems to video games on our iPhone, from the GPS systems we rely on navigation to the security systems that protect our homes and offices, is created from code.

Communicating with a computer requires the use of a language, just like how communicating with another human being involves the use of a language like English or Korean. The difference is that writing code for a computer in a particular language is a little like speaking to somebody who is absolutely particular about grammar and punctuation - any deviation from a language’s rules results in a computer not being able to accept the programmed instructions. Different computer languages are well-suited to doing different tasks. For example, JavaScript is the undisputed lingua franca of the web, LISP is used extensively by NASA and in Artificial intelligence research while C and FORTRAN finds its adherents in high finance especially in the field of high frequency trading.

Python is one of the world's most popular languages (consistently ranked within the Top 10 in recent years by Tiobe ) that is known for its learner-friendly syntax, versatility and ubiquity in the workplace. It is also a language that most of our instructors have had the pleasure of using in the workplace. In addition, students and parents might be interested to know that Computing will be available as an examinable subject for the Singapore "O" levels beginning in 2017 and Python will be the language taught in the curriculum.