Course Information
SemesterCourse Unit CodeCourse Unit TitleT+P+LCreditNumber of ECTS CreditsLast Updated Date
3DOT205Advanced Programming1+2+02422.04.2026

 
Course Details
Language of Instruction Turkish
Level of Course Unit Bachelor's Degree
Department / Program Digital Game Design
Type of Program Formal Education
Type of Course Unit Compulsory
Course Delivery Method Face To Face
Objectives of the Course Aim of the Course To teach students intermediate and advanced topics in Game Development & Programming for games, as well as OOP concepts.
Course Content -
Course Methods and Techniques Assessment Methods and Criteria 1: Lecture, 2: Q&A (Question and Answer), 3: Discussion, 4: Practice, 5: Self-Study, 6: Group Work, 7: Research and Development.
Prerequisites and co-requisities None
Course Coordinator None
Name of Lecturers Instructor Abdülkadir Karakaş
Assistants None
Work Placement(s) No

Recommended or Required Reading
Resources Clean Code: A Handbook of Agile Software Craftsmanship - Robert Martin
Head first Design Patterns - Eric Freeman
Unity documents and tutorials
Course Notes -


Planned Learning Activities and Teaching Methods
Activities are given in detail in the section of "Assessment Methods and Criteria" and "Workload Calculation"

Assessment Methods and Criteria
In-Term Studies Quantity Percentage
Mid-terms 1 % 38
Quizzes 14 % 7
Project 1 % 55
Total
16
% 100

 
ECTS Allocated Based on Student Workload
Activities Quantity Duration Total Work Load
Course Duration 14 4 56
Mid-terms 1 20 20
Project 1 30 30
Total Work Load   Number of ECTS Credits 4 106

 
Course Learning Outcomes: Upon the successful completion of this course, students will be able to:
NoLearning Outcomes
1 Can create, develop and maintain games with C# and Unity 3D
2 Can analize the game into its core mechanics and iteratively build the game.
3 Can divide the project into meaningful classes and interfaces to build modular, robust, maintainable architectures.
4 Knows about SOLID and OOP principles and effectively uses them while developing the game.
5 Knows basic software design patterns, how they compare, and applies the right pattern when the need arises.

 
Weekly Detailed Course Contents
WeekTopicsStudy MaterialsMaterials
1 OOP alternatives, what is Object Oriented Programming - -
2 OOP Principles - Encapsulation, Cohesion, Coupling - -
3 OOP tools - Abstract classes and interfaces - -
4 OOP Principles - Abstraction - -
5 OOP Principles - Inheritance - -
6 OOP Principles - Polymorphism - -
7 SOLID Principles - Single Responsibility - -
8 Midterm Exam - -
9 SOLID Principles - Open Closed - -
10 SOLID Principles - Liskov - -
11 SOLID Principles - Interface Segregation - -
12 SOLID Principles - Dependency Inversion - -
13 Other principles DRY, YAGNI, KISS - Evaluation of projects - -
14 Evaluation of projects - -

 
Contribution of Learning Outcomes to Programme Outcomes
P1 P2 P3 P4 P5 P6 P7 P8 P9 P10 P11
C1 1 2 5 5 3 4 1 1 2 3 2
C2 1 2 5 5 3 4 1 1 2 3 2
C3 1 2 5 5 3 4 1 1 2 3 2
C4 1 2 5 5 3 4 1 1 2 3 2
C5 1 2 5 5 3 4 1 1 2 3 2

  bbb

  
  https://obs.gedik.edu.tr/oibs/bologna/progCourseDetails.aspx?curCourse=237467&curProgID=5728&lang=en