このコースについて
4.2
10件の評価

100%オンライン

自分のスケジュールですぐに学習を始めてください。

柔軟性のある期限

スケジュールに従って期限をリセットします。

初級レベル

約55時間で修了

推奨:12 weeks of study, at 6 to 10 hours/week....

英語

字幕:英語

習得するスキル

Python Syntax And SemanticsVideo GamesPython ProgrammingProblem SolvingComputer Science

100%オンライン

自分のスケジュールですぐに学習を始めてください。

柔軟性のある期限

スケジュールに従って期限をリセットします。

初級レベル

約55時間で修了

推奨:12 weeks of study, at 6 to 10 hours/week....

英語

字幕:英語

シラバス - 本コースの学習内容

1
1時間で修了

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件のビデオ (合計31分), 2 readings, 1 quiz
6件のビデオ
Computer Science5 分
Programming Languages3 分
Learning Outcomes and Problem-Based Learning4 分
How to Get the Most Out of this Course5 分
Suggestions for Learner Success5 分
2件の学習用教材
Instructor Bios10 分
Acknowledgements10 分
1の練習問題
Introduction16 分
2
3時間で修了

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....
7件のビデオ (合計58分), 6 readings, 6 quizzes
7件のビデオ
Observe Hacking Game2 分
Game Versions10 分
Observe Hacking Version 11 分
Describe Hacking Version 111 分
Create Test Plan for Hacking Version 113 分
Create Algorithm for Hacking Version 110 分
6件の学習用教材
The PVG Virtual Machine20 分
Play Hacking Game10 分
Play Hacking Version 110 分
Describe Hacking Version 110 分
Create Test Plan for Hacking Version 110 分
Create Algorithm for Hacking Version 110 分
6の練習問題
Game Creation Process4 分
Understand Hacking2 分
Game Versions10 分
Understand Hacking Version 12 分
The Game Creation Process2 分
Problem Solving Ontology10 分
3
4時間で修了

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....
12件のビデオ (合計79分), 7 readings, 11 quizzes
12件のビデオ
Python Interpretation10 分
Python Lexical Analysis7 分
Python Syntax Analysis11 分
Python Objects5 分
Python Semantics of Literals and Identifiers10 分
Python Semantics of Function Calls3 分
Python Program Interpretation5 分
Program Hacking Version 19 分
The Reflection Process2 分
Review Code for Hacking Version 15 分
Solution Issues2 分
7件の学習用教材
The Python Shell in the Wing IDE20 分
Lexical Rules, Tables and Sample Problem (identifier, literal and delimiter)10 分
Syntax Diagrams and Sample Problem (expression statement, expression and function call)10 分
Semantic Rules and Sample Problem (identifier, literal and function call)10 分
Programming With the Wing IDE10 分
Hacking Version 1 Solution Code10 分
Software Quality Tests for Hacking Version 110 分
11の練習問題
Python Evaluation Examples6 分
Interpretation (lexical analysis, syntax analysis and semantic analysis)8 分
Lexical Analysis (identifier, literal and delimiter)20 分
Syntax Analysis (expression statement, expression and function call)16 分
Python Objects8 分
Semantic Analysis (identifier, literal and function call)8 分
Evaluation (identifier, literal and function call)8 分
Programming (identifier, literal and function call)2 分
Program Hacking Version 14 分
Reflect on Language Concepts used in Hacking Version 112 分
The Game Creation Process2 分
4
11時間で修了

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件のビデオ (合計74分), 18 readings, 30 quizzes
12件のビデオ
Observe Hacking Version 21 分
Describe Hacking Version 25 分
Regression Testing and Deleting Obsolete Tests4 分
Create Algorithm for Hacking Version 21 分
Python Assignment Statement8 分
Python Binary Expression and Operator Token8 分
Python Import Statement and Keyword Token7 分
Python Multi-argument Function Call5 分
Python Method Call and Attribute Reference7 分
Program Hacking Version 211 分
Review Code for Hacking Version 25 分
18件の学習用教材
Play Hacking Version 210 分
Describe Hacking Version 210 分
Create Test Plan for Hacking Version 210 分
Create Algorithm for Hacking Version 210 分
Syntax Diagrams and Sample Problem (statement and assignment statement )10 分
Semantic Rules (assignment statement)10 分
Lexical Rules and Tables (operator)10 分
Syntax Diagrams (binary expression and binary operator)10 分
Semantic Rules (binary expression)10 分
Lexical Rules and Tables (keyword)10 分
Syntax Diagrams (import statement and module)10 分
Semantic Rules (import statement)10 分
Syntax Diagrams and Sample Problem (multi-argument function call)10 分
Semantic Rules and Sample Problem (multi-argument function call)10 分
Syntax Diagrams (method call and attribute reference)10 分
Semantic Rules (method call and attribute reference)10 分
Hacking Version 2 Solution Code10 分
Software Quality Tests for Hacking Version 210 分
30の練習問題
Solution Issues in Hacking Version 110 分
Understand Hacking Version 22 分
Delete Obsolete Tests for Hacking Version 22 分
Lexical Analysis (review)16 分
Syntax Analysis (statement and assignment statement)20 分
Semantic Analysis (assignment statement)12 分
Evaluation (assignment statement)14 分
Programming (assignment statement)2 分
Lexical Analysis (operator)20 分
Syntax Analysis (binary expression and binary operator)36 分
Semantic Analysis (binary expression)18 分
Evaluation (binary expression and operator)14 分
Programming (binary expression and operator)2 分
Lexical Analysis (keyword)18 分
Syntax Analysis (import statement and module)12 分
Semantic Analysis (import statement)10 分
Evaluation (import statement and keyword)10 分
Programming (import statement and keyword)2 分
Lexical Analysis (review)22 分
Syntax Analysis (multi-argument function call)36 分
Semantic Analysis (multi-argument function call)28 分
Evaluation (multi-argument function call)14 分
Programming (multi-argument function call)2 分
Lexical Analysis (review)18 分
Syntax Analysis (method call and attribute reference)28 分
Semantic Analysis (method call and attribute reference)16 分
Evaluation (method call and attribute reference)12 分
Programming (method call and attribute reference)2 分
Program Hacking Version 24 分
Reflect on language concepts used in Hacking Version 216 分
5
10時間で修了

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件のビデオ (合計40分), 13 readings, 19 quizzes
8件のビデオ
Observe Hacking Version 335
Create Algorithm for Hacking Version 34 分
Python If Statement and Boolean Type10 分
Python Elif and Else Clauses7 分
Python Keyword Operator, Short Circuit Evaluation, Unary Expression, and Operator Precedence7 分
Program Hacking Version 32 分
Review Code for Hacking Version 34 分
13件の学習用教材
Play Hacking Version 310 分
Describe Hacking Version 310 分
Create Test Plan for Hacking Version 310 分
Create Algorithm for Hacking Version 310 分
Lexical Rules, Tables and Sample Problem (newline, indent and dedent)10 分
Syntax Diagrams (if statement)10 分
Semantic Rules (if statement)10 分
Syntax Diagrams (elif and else clause)10 分
Semantic Rules (elif and else clauses)10 分
Syntax Diagrams and Sample Problem (keyword operator, unary expression, unary operator, and operator precedence)10 分
Semantic Rule (keyword operator and unary expression)10 分
Hacking Version 3 Solution Code10 分
Software Quality Tests in Hacking Version 310 分
19の練習問題
Solution Issues in Hacking Version 26 分
Understand Hacking Version 32 分
Delete Obsolete Tests for Hacking Version 32 分
Lexical Analysis (newline, indent and dedent)34 分
Syntax Analysis (if statement)44 分
Semantic Analysis (if statement)30 分
Evaluation (if statement and boolean)14 分
Programming (if statement and boolean type)2 分
Lexical Analysis (review)44 分
Syntax Analysis (elif and else clauses)12 分
Semantic Analysis (elif and else clause)36 分
Evaluation (elif and else clauses)
Programming (elif and else clause)2 分
Lexical Analysis (review)42 分
Syntax Analysis (keyword operator, unary expression, unary operator, and operator precedence)
Semantic Analysis (short circuit evaluation and operator precedence)36 分
Programming (keyword operator, short circuit evaluation, unary expression, and operator precedence)2 分
Program Hacking Version 36 分
Reflect on language concepts used in Hacking Version 310 分
6
12時間で修了

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件のビデオ (合計73分), 18 readings, 29 quizzes
17件のビデオ
Create Algorithm for Hacking Version 44 分
Python Sequences and Subscription8 分
Python Tuple and List Types5 分
Python Sequence Element Replacement4 分
Python For Statement5 分
Program Hacking Version 42 分
Review Code for Hacking Version 45 分
Solution Issues in Hacking Version 43 分
Observe Hacking Version 51 分
Describe Hacking Version 555
Create Test Plan for Hacking Version 52 分
Create Algorithm for Hacking Version 54 分
Python While Statement4 分
Python Repetition Examples and Range Type8 分
Program Hacking Version 51 分
Review Code for Hacking Version 54 分
18件の学習用教材
Create Algorithm for Hacking Version 410 分
Syntax Diagrams (subscription)10 分
Semantic Rules (subscription)10 分
Syntax Diagrams (expression list, parenthesized expression, list display)10 分
Semantic Rules (tuple and list type)10 分
Syntax Diagrams (assignment target: subscription)10 分
Semantic Rules (assignment target: subscription)10 分
Syntax Diagrams (for statement)10 分
Semantic Rules (for statement)10 分
Hacking Version 4 Solution Code10 分
Software Quality Tests for Hacking Version 410 分
Play Hacking Version 510 分
Describe Hacking Version 510 分
Create Test Plan for Hacking Version 510 分
Create Algorithm for Hacking Version 510 分
Syntax Diagrams (while statement)10 分
Semantic Analysis (while statement)10 分
Hacking Version 5 Solution Code10 分
29の練習問題
Lexical Analysis (review)46 分
Syntax Analysis (subscription)44 分
Semantic Analysis (subscription)14 分
Evaluation (sequences and subscription)12 分
Programming (sequences and subscription)2 分
Syntax Analysis (expression list, parenthesized expression and list display)44 分
Semantic Analysis (tuple and list type)16 分
Evaluation (tuple and list type)12 分
Programming (tuple and list types)4 分
Syntax Analysis (assignment target: subscription)32 分
Semantic Analysis (assignment target: subscription)26 分
Evaluation (sequence element replacement)8 分
Programming (sequence element replacement)2 分
Syntax Analysis (for statement)44 分
Semantic Analysis (for statement)38 分
Evaluation (for statement)8 分
Programming (for statement)2 分
Program Hacking Version 46 分
Reflect on Language Concepts used in Hacking Version 48 分
Understand Hacking Version 52 分
Delete Obsolete Descriptions from Hacking Version 54 分
Syntax Analysis (while statement)40 分
Semantic Analysis (while statement)34 分
Evaluation (while statement)
Programming (while statement)2 分
Evaluation (range type)
Programming (range type)2 分
Program Hacking Version 56 分
Reflect on Language Concepts used in Hacking Version 514 分
7
7時間で修了

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件のビデオ (合計64分), 8 readings, 19 quizzes
8件のビデオ
Python Function Definitions15 分
Python Function Parameters6 分
Python Main Function and Identifier Scope9 分
Python Return Statement5 分
Python Side Effects6 分
Program Hacking Version 69 分
Review Code for Hacking Version 68 分
8件の学習用教材
Syntax Diagrams (function definition)10 分
Semantic Rules (function definition)10 分
Syntax Diagrams (parameter list)10 分
Semantic Rules (parameter list)10 分
Syntax Diagrams (return statement)10 分
Semantic Rules (return statement)10 分
Hacking Version 6 Solution Code10 分
Software Quality Tests for Hacking Version10 分
19の練習問題
Lexical Analysis (review)38 分
Syntax Analysis (function definition)56 分
Semantic Analysis (function definition)24 分
Evaluation (function definition)
Programming (function definition)2 分
Syntax Analysis (parameter list)44 分
Semantic Analysis (parameter list)38 分
Evaluation (function parameters)
Programming (function parameters)2 分
Evaluation (main function)
Programming (main function)2 分
Syntax Analysis (return statement)36 分
Semantic Analysis (return statement)22 分
Evaluation (return statement)
Programming (return statement)4 分
Evaluation (side effects)
Programming (side effects)4 分
Program Hacking Version 66 分
Reflect on Language Concepts used in Hacking Version 614 分
8
1時間で修了

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件のビデオ (合計12分), 5 readings, 2 quizzes
5件のビデオ
Observe Hacking Version 71 分
Create Algorithm for Hacking Version 73 分
Program Hacking Version 73 分
Identify Solution Issues in Hacking Version 72 分
5件の学習用教材
Play Hacking Version 710 分
Describe Hacking Version 710 分
Create Test Plan for Hacking Version 710 分
Create Algorithm for Hacking Version 710 分
Hacking Version 7 Solution Code10 分
2の練習問題
Understand Hacking Version 72 分
Program Hacking Version 76 分
9
8時間で修了

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件のビデオ (合計84分), 16 readings, 17 quizzes
12件のビデオ
Observe Poke the Dots Version 155
Create Algorithm for Poke the Dots Version 112 分
Python Import Statement Variations9 分
Python Pass Statement2 分
Program Poke the Dots Version 113 分
Review Code for Poke the Dots Version 19 分
Solution Issues in Poke the Dots Version 12 分
Create Algorithm for Poke the Dots Version 22 分
Python Class Definition15 分
Program Poke the Dots Version 25 分
Review Code for Poke the Dots Version 27 分
16件の学習用教材
Play Poke the Dots10 分
Play Poke the Dots Version 110 分
Describe Poke the Dots Version 110 分
Create Test Plan for Poke the Dots Version 110 分
Create Algorithm for Poke the Dots Version 110 分
Syntax Diagrams (import statement variations)10 分
Semantic Rules (import statement variations)10 分
Syntax Diagrams (pass statement)10 分
Semantic Rules (pass statement)10 分
Poke the Dots Version 1 Solution Code10 分
Updated Algorithm for Poke the Dots Version 110 分
Create Algorithm for Poke the Dots Version 210 分
Syntax Diagrams (class definition)10 分
Semantic Rules (class definition)10 分
Poke the Dots Version 2 Solution Code10 分
Software Quality Tests for Poke the Dots Version10 分
17の練習問題
Understand Poke the Dots2 分
Understand Poke the Dots Version 12 分
Lexical Analysis (review)50 分
Syntax Analysis (import statement variations)24 分
Semantic Analysis (import statement variations)16 分
Programming (import statement variations)2 分
Syntax Analysis (pass statement)32 分
Semantic Analysis (pass statement)28 分
Programming (pass statement)2 分
Program Poke the Dots Version 12 分
Reflect on Language Concepts used in Poke the Dots Version 18 分
Syntax Analysis (class definition)
Syntax Analysis (assignment target: attribute reference)
Semantic Analysis (class definition)32 分
Programming (class definition)2 分
Program Poke the Dots Version 22 分
Reflect on Language Concepts used in Poke the Dots Version 28 分
10
1時間で修了

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件のビデオ (合計10分), 5 readings, 5 quizzes
5件のビデオ
Observe Poke the Dots Version 31 分
Create Algorithm for Poke the Dots Version 31 分
Program Poke the Dots Version 31 分
Review Code for Poke the Dots Version 34 分
5件の学習用教材
Play Poke the Dots Version 310 分
Describe Poke the Dots Version 310 分
Create Test Plan for Poke the Dots Version 310 分
Create Algorithm for Poke the Dots Version 310 分
Poke the Dots Version 3 Solution Code10 分
5の練習問題
Understand Poke the Dots Version 32 分
Delete Obsolete Descriptions for Poke the Dots Version 32 分
Delete Obsolete Tests for Poke the Dots Version 32 分
Program Poke the Dots Version 32 分
Reflect on Event Categories Used in Poke the Dots Version 36 分
11
3時間で修了

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件のビデオ (合計39分), 4 readings, 5 quizzes
6件のビデオ
Create Algorithm for Poke the Dots Version 45 分
Python User-defined Methods and Self11 分
Python Private Attributes3 分
Program Poke the Dots Version 46 分
Review Code for Poke the Dots Version 47 分
4件の学習用教材
Create Algorithm for Poke the Dots Version 410 分
Semantic Rules (user-defined methods)10 分
Poke the Dots Version 4 Solution Code10 分
Software Quality Tests for Poke the Dots Version 410 分
5の練習問題
Lexical Analysis (review)40 分
Semantic Analysis (user-defined methods)38 分
Programming (user-defined methods)2 分
Program Poke the Dots Version 42 分
Reflect on Language Concepts used in Poke the Dots Version 48 分
12
1時間で修了

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件のビデオ (合計8分), 5 readings, 2 quizzes
5件のビデオ
Observe Poke the Dots Version 51 分
Create Algorithm for Poke the Dots Version 548
Program Poke the Dots Version 51 分
Solution Issues in Poke the Dots Version 54 分
5件の学習用教材
Play Poke the Dots Version 510 分
Describe Poke the Dots Version 510 分
Create Test Plan for Poke the Dots Version 510 分
Create Algorithm for Poke the Dots Version 510 分
Poke the Dots Version 5 Solution Code10 分
2の練習問題
Understand Poke the Dots Version 52 分
Program Poke the Dots Version 52 分

講師

Avatar

Duane Szafron

Professor
Computing Science
Avatar

Paul Lu

Professor
Computing Science

アルバータ大学(University of Alberta)について

UAlberta is considered among the world’s leading public research- and teaching-intensive universities. As one of Canada’s top universities, we’re known for excellence across the humanities, sciences, creative arts, business, engineering and health sciences....

よくある質問

  • 修了証に登録すると、すべてのビデオ、テスト、およびプログラミング課題(該当する場合)にアクセスできます。ピアレビュー課題は、セッションが開始してからのみ、提出およびレビューできます。購入せずにコースを検討することを選択する場合、特定の課題にアクセスすることはできません。

  • 修了証を購入する際、コースのすべての教材(採点課題を含む)にアクセスできます。コースを完了すると、電子修了証が成果のページに追加されます。そこから修了証を印刷したり、LinkedInのプロフィールに追加したりできます。コースの内容の閲覧のみを希望する場合は、無料でコースを聴講できます。

  • All learners can access all the videos, assessments, interactive learning objects (ILO), virtual machine (VM) image, and forums for free.

  • No. The PVG course by itself does not qualify for credit.

    Getting course credit from the University of Alberta requires a learner to apply to the University as either a degree or an open-studies student. Once accepted, a student must enrol, and attend classes and labs on-campus. For such students, PVG can be used as part of a for-credit introductory course to computer science and programming, called Computing Science (CMPUT) 174, Introduction to the Foundations of Computing, Part 1.

さらに質問がある場合は、受講者向けヘルプセンターにアクセスしてください。