MATHEMATICS (TURKISH, PHD)
PhD TR-NQF-HE: Level 8 QF-EHEA: Third Cycle EQF-LLL: Level 8

Course Introduction and Application Information

Course Code Course Name Semester Theoretical Practical Credit ECTS
VCD3126 Computer Programming for Interaction Fall 3 0 3 5
The course opens with the approval of the Department at the beginning of each semester

Basic information

Language of instruction: En
Type of course: Departmental Elective
Course Level:
Mode of Delivery:
Course Coordinator : Dr. Öğr. Üyesi İPEK TORUN
Course Objectives: This course aims to introduce the basic concepts of contemporary computer programming languages to students who are interested in interactive media. Since the target audience is expected to have no prior experience on programming, major concepts of programming will be learned through projects with visual programming tools. Adobe Flash is chosen as a powerful visual tool with ActionScript 2, which can rapidly be used to develop applications with graphic interfaces. At the end of the course, students will be able create working prototypes for interactive media, collaborate with programming experts through a common terminology and develop further skills in any programming environment by autodidact methods.

Learning Outputs

The students who have succeeded in this course;
I.Çağdaş programlama dillerinin temel kavramlarına aşinalık kazandırmak
a.Deyimler
b.İşleçler
c.Değişkenler
d.Diziler
e.Koşullar ve döngüler
f.Sınıflar
II.Etklişimli medya tarsım aracı olara Adobe Flash uygulamasını kullanmak
a.Adobe Flash ile animasyon
b.Görsel nesnelere olay ve işlevler atamak
c.ActionScript komutları ile görsel nesneler yaratmak
d.Flash ortamında ses ve görüntüyü komutlarla denetlemek
III.Programlama dillerine dair dokümantasyonlara aşinalık kazandırmak
a.Yardım dosyaları gibi birincil destek dokümanlarını kullanmak
b.Programlama kitaplarına aşinalık
c.Web eğtimleri gibi üçüncü parti kaynaklara aşinalık
IV.İyi programlama alışkanlıkları edinmek: İsimlendirme ve yorum yazma becerileri
V.Bir programlama projesinde akışı planlamak
a.Program görsellerini üretmek
b.Akış şemalarını hazırlamak
c.Pseudo kod ile planlama yapmak
VI.Programcı ve yazılım mühendisleri ile birlikte çalışabilmek için gereken terminolojiye aşinalık kazandırmak

Course Content

The course employs two methods to deliver the learning outcomes. Lectures and classwork samples are used to explain programming environments, major concepts in programming languages and the use of documentation. Individual project assignments are used to asses the learning outcomes as well as developing skills on planning and executing a programming project.
At the beginning of the course, Scratch, which is a visual programming developed by MIT will be used to deliver basic programming concepts avoiding the difficulties of learning syntax in code based programming languages. Adobe Flash with AS2 scripting will be employed to learn procedural programming and gaining coding skills on further projects.

Weekly Detailed Course Contents

Week Subject Related Preparation
1) Introducing the programming concepts Using “Scratch” of MIT as a visual programming tool. Classwork examples to learn about sprites, sequencing, iteration (looping), conditional statements, variables, lists (arrays), event handling, threads,dynamic interaction(parallel execution),coordination and synchronization,keyboard input, random numbers, boolean logic.
2) Classwork 1: Programming a simple game application with Scratch Variables, operators, conditions and loops Assignment 1: Develop a basic application idea to be applied with Scratch, sequence the flow on paper Overviewing the Scratch documentation and installing software for personal use.
3) Classwork 2: Presentation of application ideas and flows. Assignment 2: Developing the scratch application. Develop a basic application idea to be applied with Scratch, sequence the flow on paper
4) Introducing Adobe Flash as an animation tool. AS2 scripting environment Object names, syntax, best practices in programming, debugging Classwork 3: “Magnifier with mask” Preparing the visual material for the application to be coded in "Msnifier with mask" classwork.
5) Operators and conditional statements, Variables, arrays and data types Classwork 4: “Running rabbit” game, Random color change Read the chapter "Data types" in "Nathan Derksen and Jeff Berg, 2006, Beginning ActionScript 2.0,, Wiley Publishing, Inc., Indianapolis, Indiana"
6) Setting up a flash project MovieClips methods, properties, events. Creating movieClips on the fly, attaching MovieClips from library, textfields Assignment 3: Create the interface objects for a “click and pick” game. Examining the movieClip object on Adobe Flash documentation
7) Functions Classwork 5: “Click and pick” game. Assignment 3: “Score function for the click and pick game”
8) Interacting with the user, event listeners, external AS files. Classwork: Importing the “ideo-multitouch” client for AS2 Assignment 4: Develop an idea for a multitouch “click and pick” game.
9) Classes Classwork 6: “Click and pick” game for multitouch. Assignment 4: Finalize the mulitouch game
10) Handling the text, date class Classwork 7: “Desktop clock and calendar” Assignment 5: Develop a novel idea for a clock which visualizes the time.
11) Working with the sound Attaching sound to movieclip Classwork 8: Adding sound to “Click and pick” game Assignment 5: Coding the “novel clock” with sound
12) Working with microphone input Classwork 9: random color change triggered with microphone input
13) Working with camera input Classwork 10: Detect motion through camera to trigger sound and random color change Final Assignment: Develop an application idea using mulitouch input, microphone input and/or camera input. Design the application flow on paper. Design interface mock-ups for presentation
14) Presentation of ideas for final assignment Final assignment: Develop the application with multitouch input, camera input and/or microphone input. Classes Classwork 6: “Click and pick” game for multitouch. Assignment 4: Finalize the mulitouch game

Sources

Course Notes: Adobe Flash CS5 ActionScript2 Documentation
References: Nathan Derksen and Jeff Berg, 2006, Beginning ActionScript 2.0,, Wiley Publishing, Inc., Indianapolis, Indiana

Evaluation System

Semester Requirements Number of Activities Level of Contribution
Attendance % 0
Laboratory % 0
Application 10 % 20
Field Work % 0
Special Course Internship (Work Placement) % 0
Quizzes % 0
Homework Assignments 5 % 40
Presentation % 0
Project % 0
Seminar % 0
Midterms % 0
Preliminary Jury % 0
Final 1 % 40
Paper Submission % 0
Jury % 0
Bütünleme % 0
Total % 100
PERCENTAGE OF SEMESTER WORK % 60
PERCENTAGE OF FINAL WORK % 40
Total % 100

ECTS / Workload Table

Activities Number of Activities Workload
Course Hours 14 42
Laboratory
Application
Special Course Internship (Work Placement)
Field Work
Study Hours Out of Class
Presentations / Seminar
Project
Homework Assignments 15 71
Quizzes
Preliminary Jury
Midterms
Paper Submission
Jury
Final
Total Workload 113

Contribution of Learning Outcomes to Programme Outcomes

No Effect 1 Lowest 2 Low 3 Average 4 High 5 Highest
           
Program Outcomes Level of Contribution