JSC «Kazakh-British Technical University»
School of IT and Engineering
APPROVED BY
Dean of FIT
____________________
«____»__________ 20__
SYLLABUS
Discipline: Programming Principles 2
Number of credits: 4 (2/0/2)
Term: Spring 2024
Instructor’s full name:
Personal Information Time and place of classes Contact information
about the Instructor Lessons Office Hours e-mail
Beisenbek M. Baisakov According to the According to the b.baisakov@kbtu.kz
schedule schedule
According to the According to the
Askar K. Akshabayev a.akshabaev@kbtu.kz
schedule schedule
Bobur According to the According to the
b.mukhsimbaev@kbtu.kz
A.Mukhsimbayev schedule schedule
Course duration: 4 credits, 15 weeks (60 class hours)
Course prerequisites: Programming Principles I
Course Description:
Objective of this course is to teach students how to use basic programming principles for creating
console and desktop applications. This course uses Python as the main programming language.
The course will teach students how to use Python core libraries like IO, Pygame, Serialization,
Forms, Database and etc. to create applications. Students who successfully pass this course may
expect to acquire firm grasp on programming principles.
Course Goals, Learning Outcome(s) and Outline:
● Learn the fundamentals of Python
● Work with primitive types and expressions
● Work with non-primitive types (classes, structs, arrays and enums)
● Learn the difference between value types and reference types
● Control the flow of programs using conditional statements
● Use arrays and lists
● Work with files and directories
● Work with text
● Work with date and time
version: 1.0.1
● Debug Python applications effectively
● Understand the problems with inheritance and how composition solves these problems
● Learn how to create Graphical User Interface Elements
Methodology:
Class discussion, class assignments, A/V presentation, real-life experience, classroom
exercises, and self-study.
Materials:
1) https://www.w3schools.com/python/default.asp
2) Python documentation - https://docs.python.org/
3) Pygame documentation - https://www.pygame.org/docs/
COURSE CALENDAR
Class work
Topic Seminars and TSIS
L1. Python fundamentals. TSIS 1
1. Python Intro
2. Python User Input
3. Python Get Started
4. Python Syntax
5. Python Comments
6. Python Variables
7. Python Data Types
8. Python Numbers
9. Python Casting
10. Python Strings
11. Python String Formatting
12. Python Booleans
13. Python Operators
14. Python If...Else
15. Git
L2. Python fundamentals. TSIS 2
1. Python While Loops
2. Python Lists
3. Python For Loops
4. Python Arrays
5. Python Tuples
6. Python Sets
7. Python Dictionaries
L3. TSIS 3
1. Python Functions
2. Python Lambda
3. Python Classes and Objects.
4. Python Inheritance
TSIS 1 + TSIS 2 + TSIS 3 defense
L4. TSIS 4
1. Python Iterators, Generators
2. Python Scope
3. Python Modules
4. Python Dates
5. Python Math
6. Python JSON
L5. TSIS 5
Regex in Python
Using Regex to search and match string patterns in text.
1. Metacharacters
2. Special Sequences
3. compile function
L6. TSIS 6
Directories and files.
1. Python File Handling
2. Python Read Files
3. Python Write/Create Files
4. Python Delete Files
5. Working with directories
Python builtin functions.
1. Builtin function of python.
TSIS 4 + TSIS 5 + TSIS 6 defense
L7. Pygame TSIS 7
1. Getting Started
2. Working with Images
3. Music and Sound Effects
4. Geometric Drawing
5. Timer
L8. Pygame TSIS 8
1. Fonts and Text
2. More on Input
3. Centralized Scene Logic
4. Game Creation
L9. Pygame. TSIS 9
1. Snake.
2. Paint.
TSIS 7 + TSIS 8 + TSIS 9 defense
L10. Databases TSIS 10
Saving data to database. Reading from the database. Updating and
deleting data in the database.
L11. Databases TSIS 11
Additional topics
TSIS 10 + TSIS 11 defense
Exam
COURSE ASSESSMENT PARAMETERS
Type of activity Final scores
Github submission 11%
Practice defense/midterm/end of term 49%
Final exam 40%
Total 100%
Criteria for evaluation of students during semester:
Weeks Total
Assessment criteria
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 scores
1. Github submission * ** *** * * * * * 11%
2. Practice defense/midterm/end * * * * 49%
of term
3. Final exam * 40%
Total 100%
Academic Policy
KBTU standard academic policy is used.
- Cheating, duplication, falsification of data, plagiarism, and crib are not permitted under
any circumstances!
- Attendance is mandatory.
Attention. f student missed without plausible reason more than 30% of lessons
student receives «F (Fail)» grade;
Students must participate fully in every class. While attendance is crucial, merely being in
class does not constitute “participation”. Participation means reading the assigned
materials, coming to class prepared to ask questions and engage in discussion.
- Students are expected to take an active role in learning.
- Written assignments (independent work) must be typewritten or written legibly and be
handed in time specified. Late papers are not accepted!
- Students must arrive to class on time.
- Students are to take responsibility for making up any work missed.
- Make up tests in case of absence will not normally be allowed.
- Mobile phones must always be switched off in class.
- Students should always be appropriately dressed (in a formal/semi-formal style).
- Students should always show tolerance, consideration and mutual support towards other
students.
Minutes #34 of School of Information Technology and Engineering meeting on January 8, 2024