Problem Solving Python Programming and Video Games

2.4
2.4 rating

This course is an introduction to computer science and programming in Python. Upon successful completion of this course you will be able to:
1. Take a new computational problem and develop a plan to solve it through problem understanding and decomposition.
2. Follow a design creation process that includes specifications algorithms and testing.
3. Code test and debug a program in Python based on your design.

Important computer science concepts such as problem solving (computational thinking) problem decomposition algorithms abstraction and software quality are emphasized throughout. The Python programming language and video games are used to demonstrate computer science concepts in a concrete and fun manner. However a learner can take the knowledge and skills from this course and apply them to non-game problems other programming languages and other computer science courses.

You do not need any previous programming Python or video game experience. However some computer skills (e.g. mouse keyboard document editing) knowledge of algebra attention to detail (as with many technical subjects) and a “just give it a try” spirit will be keys to your success. Despite the use of video games for all the programming examples PVG is not about computer games. PVG will still provide valuable knowledge and skills for non-game computational problems.

The interactive learning objects (ILO) of the course provide automatic context-specific guidance and feedback like a virtual teaching assistant as you develop problem descriptions algorithms and functional test plans. The course forums will be supported by the creators of the course to help you succeed.

All videos assessments and ILOs are available free of charge. There is an optional certificate available for a fee.

WEEK 1
1 hour to complete
Module 0: Introduction
In Module 0 you will meet the instructional team and be introduced to the four themes of this course: computer science problem solving Python programming and how to create video games.
6 videos (Total 31 min) 2 readings 1 quiz

WEEK 2
3 hours to complete
Module 1: Design Hacking Version 1
In Module 1 you will explore the game creation process that is used in this course. You will use this process to design Version 1 of the first game Hacking. You will use two problem-solving techniques: problem decomposition and algorithms. You will explore five criteria for problem decomposition: experiential decomposition feature selection problem refinement spatial decomposition and temporal decomposition. To create your design for Hacking Version 1 you will use three interactive learning objects: the description builder functional test plan builder and algorithm builder.
SHOW ALL SYLLABUS
SHOW ALL
7 videos (Total 58 min) 6 readings 6 quizzes

WEEK 3
4 hours to complete
Module 2: Program Hacking Version 1
In Module 2 you will discover how lexics syntax and semantics can be used to understand and describe programming languages. You will use these concepts to understand your first Python statement (expression statement) first three Python expressions (literal identifier function call) and first five Python types (int str float function NoneType). You will use these Python constructs to write test and debug Hacking Version 1 a text-based game version. You will then reflect on your game version by using a third problem-solving technique called abstraction including the specific technique of solution generalization to solve similar problems.
SHOW ALL SYLLABUS
SHOW ALL
12 videos (Total 79 min) 7 readings 11 quizzes

WEEK 4
10 hours to complete
Module 3: Hacking Version 2
In Module 3 you will identify solution issues in your game. You will apply a second form of the abstraction problem-solving technique called using templates to solve a solution issue by using a graphics library. You will then use lexics syntax and semantics to learn two new Python statements (assignment import) two new Python expressions (binary expression attribute reference) and one new Python type (module). You will employ these Python constructs and a simple graphics library to write test and debug Hacking Version 2.
12 videos (Total 74 min) 18 readings 30 quizzes

WEEK 5
9 hours to complete
Module 4: Hacking Version 3
In Module 4 you will modify your game design to support multiple gameplay paths using a new problem decomposition criteria called case-based decomposition which utilizes a selection control structure. You will learn one new Python statement (if) one new Python expression (unary expression) and one new Python type (bool). You will employ these Python constructs to write test and debug Hacking Version 3.
8 videos (Total 40 min) 13 readings 19 quizzes

WEEK 6
11 hours to complete
Module 5: Hacking Version 4 & 5
In Module 5 you will modify your game design using two new abstraction techniques called control abstraction and data abstraction. You will explore two different control abstractions called definite and indefinite repetition. You will learn two new Python statements (for while) four new Python expressions (subscription expression expression list parenthesized expression list display) and three new Python types (tuple list range). You will employ these Python constructs to write test and debug Hacking Version 4 and Hacking Version 5.
17 videos (Total 73 min) 18 readings 29 quizzes

WEEK 7
7 hours to complete
Module 6: Hacking Version 6
In Module 6 you will learn a new control abstraction called a user-defined function. You will learn how to implement user-defined functions using two new Python statements (function definition return). You will employ these Python constructs to significantly improve the quality of your code in Hacking Version 6.
8 videos (Total 64 min) 8 readings 19 quizzes

WEEK 8
1 hour to complete
Module 7: Hacking Version 7
In Module 7 you will not learn any new problem-solving techniques or Python language features. Instead you will exercise your problem-solving skills and practice the language constructs you already know to improve your proficiency. You will add some fun features to the Hacking game by designing coding testing and debugging Hacking Version 7.
5 videos (Total 12 min) 5 readings 2 quizzes

WEEK 9
7 hours to complete
Module 8: Poke the Dots Version 1 & 2
In Module 8 you will design and implement Version 1 of a new graphical game called Poke the Dots. You will then modify your game design using data abstraction to create user-defined classes. You will learn two new Python statements (class definition pass) that will allow you to construct your own Python types. You will employ these Python constructs to implement Poke the Dots Version 2.
12 videos (Total 84 min) 16 readings 17 quizzes

WEEK 10
1 hour to complete
Module 9: Poke the Dots Version 3
In Module 9 you will not learn any new problem-solving techniques or Python language features. Instead you will exercise your problem-solving skills and practice the language constructs you already know to improve your proficiency. You will add some fun features to the Poke the Dots game by designing coding testing and debugging Poke the Dots Version 3.
5 videos (Total 10 min) 5 readings 5 quizzes

WEEK 11
3 hours to complete
Module 10: Poke the Dots Version 4
In Module 10 you will modify your game design using a new form of control abstraction called user-defined methods. User-defined methods allow you to restrict access to the attributes of a class to improve data abstraction. You will employ user-defined methods to implement Poke the Dots Version 4.
6 videos (Total 39 min) 4 readings 5 quizzes

WEEK 12
1 hour to complete
Module 11: Poke the Dots Version 5
In Module 11 you will not learn any new problem-solving techniques or Python language features. Instead you will exercise your problem-solving skills and practice the language constructs you already know to improve your proficiency. You will add some fun features to the Poke the Dots game by designing coding testing and debugging Poke the Dots Version 5.
5 videos (Total 8 min) 5 readings 2 quizzes


Tham gia đánh giá khóa học

Nếu bạn đã học qua khóa học này thì mời bạn tham gia đóng góp ý kiến và đánh giá để cộng đồng bạn học có thêm thông tin tham khảo.

Cung cấp bởi: Coursera /  University of Alberta

Thời lượng: 57 giờ
Ngôn ngữ giảng dạy: Tiếng Anh
Chi phí: Miễn phí / 0
Đối tượng: Beginner

Thông tin về nhà cung cấp

Coursera (/ kərˈsɛrə /) là một nền tảng học tập trực tuyến toàn cầu được thành lập vào năm 2012 bởi 2 giáo sư khoa học máy tính của đại học Stanford là Andrew NgDaphne Koller, nền tảng này cung cấp các khóa học trực tuyến (MOOC) cho cộng đồng người học online.

Coursera hợp tác với các trường đại học danh tiếng tại Bắc Mỹ và trên khắp thế giới, cùng với nhiều tổ chức khác để cung cấp các khóa học trực tuyến chất lượng, theo chuyên ngành và được cấp chứng chỉ trong nhiều lĩnh vực như kỹ thuật, khoa học dữ liệu, học máy, toán học, kinh doanh, khoa học máy tính, tiếp thị kỹ thuật số, nhân văn, y học, sinh học, khoa học xã hội , và nhiều ngành khác.

Các khóa học cùng chủ đề

Visual Perception for Self-Driving Cars

This course will introduce you to the main perception tasks in autonomous driving, static and dynamic object detection, and will survey common computer vision methods for robotic perception. By the...

Motion Planning for Self-Driving Cars

This course will introduce you to the main planning tasks in autonomous driving, including mission planning, behavior planning and local planning. By the end of this course, you will be...

Capstone: Autonomous Runway Detection for IoT

This capstone project course ties together the knowledge from three previous courses in IoT though embedded systems: Development of Real-Time Systems Web Connectivity & Security and Embedded Hardware and Operating...

Leave a Reply

Your email address will not be published. Required fields are marked *

Scroll to Top