VCD3126 Computer Programing for InteractionBahçeşehir ÜniversitesiAkademik Programlar İLETİŞİM VE TASARIMIÖğrenciler için Genel BilgiDiploma EkiErasmus BeyanıUlusal YeterliliklerBologna Komisyonu
İLETİŞİM VE TASARIMI
Lisans TYYÇ: 6. Düzey QF-EHEA: 1. Düzey EQF-LLL: 6. Düzey

Ders Tanıtım Bilgileri

Ders Kodu Ders Adı Yarıyıl Teorik Pratik Kredi AKTS
VCD3126 Etkileşim Amaçlı Bilgisayar Programlama Bahar 3 0 3 5
Bu katalog bilgi amaçlıdır, dersin açılma durumu, ilgili bölüm tarafından yarıyıl başında belirlenir.

Temel Bilgiler

Öğretim Dili: English
Dersin Türü: Departmental Elective
Dersin Seviyesi: LİSANS
Dersin Veriliş Şekli:
Dersin Koordinatörü: Dr. Öğr. Üyesi İPEK TORUN
Opsiyonel Program Bileşenleri: Yok
Dersin Amacı: Bu ders, etkileşimli medya tasarımına ilgi duyan öğrencilerin çağdaş programlama dillerini öğrenmeye başlangıç yapmasını amaçlar.
Hedeflenen öğrencilerin programlama ile ilgili deneyime sahip olmadığı düşünülerek, belli başlı çağdaş programlama kavramlarının görsel programlama araçlarının kullanıldığı projeler üzerinden aktarılması hedeflenmektedir.
Adobe Flash ortamından kullanılan ActionScript2 dili, güçlü bir görsel programlama aracı olarak tercih edilmiştir.
Dersin sonunda, öğrenciler çalışan etklşimli medya uygulaması prototipleri geliştirebilecek, programlama uzmanları ile ortak bir terminoloji kullanarak iletişim kurabilecek ve kendi kendine öğrenme yöntemleri ile programlama bilgilerini geliştirebileceklerdir.

Öğrenme Kazanımları

Bu dersi başarıyla tamamlayabilen öğrenciler;
I.Familiarity with major concepts of contemporary programming languages
a.Statements
b.Operators
c.Variables
d.Arrays
e.Conditions and Loops
f.Classes
II.Knowledge on Adobe Flash environment as an interactive media design tool
a.Animation with Adobe Flash
b.Assigning events and functions on visual objects
c.Creating objects via ActionScript command
d.Controlling audio and video in Flash
III.Familiarity with documentation about programming languages
a.Experience on using primary resources such as help files
b.Familiarity with programming books
c.Third party resources such as web tutorials
IV.Adjustment to the best programming practices such as naming conventions and comments
V.Ability to plan the flow for a programming project
a.Developing the visuals for a programming projects
b.Developing a flowchart for a programming projects
c.Planning thruogh pseudo code
VI.Familiarity with the programming terminology for collaboration with software engineers and programmers

Dersin İçeriği

Bu ders, öğrenme çıktılarına erişmek için iki metod kullanır. Sınıfta yapılan dersler ve sınıf çalışmaları programlama ortamını açıklamak, programlamaya ilişkin temel kavramları aktarma ve dokümantasyon kullanımını göstermek amacıyla gerçekleştirilir. Bireysel projeler, öğrenme çıktılarını değerlendirme amacının yanı sıra, programalama projelerini planlama ve geliştirme becerilerini de arttırır.
Dersin başlangıcında, MIT tarafından geliştirlmiş bir görsel programlama platformu olan Scratch yazılımı kullanılarak, temel programlama konseptleri aktarılır. Görsel programlama platformu kullanımı sayesinde, kod tabanlı programlama ortamlarında karşılaşılan sözdizimi sorunlarından kaçınarak konseptlere odaklanmak mümkün olur. Devamında Adobe Flash ortamındaki AS2 dili kullanılarak prosedürel yaklaşımla programlama öğretilir ve devam eden projelerle kodlama yetenekleri geliştirilir.

Haftalık Ayrıntılı Ders İçeriği

Hafta Konu Ön Hazırlık
1) Programlama kavramlarına giriş MIT “Scratch” aracını görsel programlama aracı olarak kullanmak Sınıf çalışması örnekleri: 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) Sınıf çalışması 1:Scratch ile basit oyun programlama Variables, operators, conditions, loops Ödev 1 : Scratch ile programlanacak basit bir oyun fikri geliştirme ve kağıt üzerinde akışı planlama Scratch dokümantasyonunun incelenmesi ve kişisel kullanm için yazılımın kurulumu yapılması
3) Sınıf çalışması: Oyun Fikri ve akışların sunumu. Ödev 2: Scratch uygulamasını geliştirme. Scratch ile programlanacak basit bir oyun fikri geliştirme ve kağıt üzerinde akışı planlama
4) Animasyon aracı olarak Adobe Flash AS2 betik dili Nesne isimleri, sözdizimi, iyi kod yazma alışkanlıkları, hata ayıklama Sınıf Çalışması 3: “Magnifier with mask” "Magnifier with mask" sınıf çalışmasında kodlanacak yazılımda kullanılacak görsel malzemenin hazırlanması
5) İşleçler and koşullar, değişkenler,diziler ve veri tipleri Sınıf çalışması 4: “Tavşan kaç” oyunu, Rastgele renk değiştirme "Data types" ile ilgili bölümün okunması: "Nathan Derksen and Jeff Berg, 2006, Beginning ActionScript 2.0,, Wiley Publishing, Inc., Indianapolis, Indiana"
6) Flash projesini hazırlama MovieClip yöntemleri, özellikleri, eylemleri. “on the fly” nesne yaratma, Kütüphaneden nesne çağırma, metin alanları Ödev 3: Tıkla ve al oyunu için arayüz elemanları tasarlama MovieClip nesnesi özelliklerinin Adobe Flash dokümantasyonunda incelenmesi
7) Fonksiyonlar Sınıf Çalışması 5: “Tıkla ve al” oyunu. Ödev 3: “Tıkla al oyunu” için skor fonksiyonu yazma
8) Kullanıcı ile etkileşim, event listeners, harici AS dosyaları. Sınıf Çalışması 5: “ideo-multitouch” istemcisini ekleme Ödev 4: Çok dokunuşlu bir ekran için “tıkla ve al” oyunu fikri tasarlama
9) Sınıflar Classwork 6: Çok dokunuşlu “Tıkla ve al” oyunu. Ödev 4: Oyunun kodlamasını tamamlama
10) Metin işleme, date sınıfı Sınıf Çalışması 7: “Saat ve Takvim” uygulaması Ödev 5: Zamanı görselleştirmek için geleneksel arayüzlerden farklı bir saat arayüzü tasarlama
11) Ses ile çalışma Nesnelere ses ekleme Sınıf çalışması 8: Tıkla ve al oyununa ses ekleme Ödev 5: Saat arayüzüne ses ekleme
12) Mikrofon girdisi ile çalışma Ödev 9: Ses girdisi ile rastgele renk değişimi
13) Kamera girdisi ile çalışma Sınıf Çalışması 10: Kamera girdisi ile ses tetikleme rastgele renk değişimi Final Ödevi: Multitouch, mikrofon ya da kamera girdisi ile çalışan bir uygulama fikri geliştirme. Akış şemasını çizme ve arayüz prototipleri hazırlama
14) Final ödevi fikirlerinin sunumu Final Ödevi: Final ödevi uygulamasının kodlanması ve hayata geçirilmesi Sınıflar Classwork 6: Çok dokunuşlu “Tıkla ve al” oyunu. Ödev 4: Oyunun kodlamasını tamamlama

Kaynaklar

Ders Notları / Kitaplar: Adobe Flash CS5 ActionScript2 Documentation
Diğer Kaynaklar: Nathan Derksen and Jeff Berg, 2006, Beginning ActionScript 2.0,, Wiley Publishing, Inc., Indianapolis, Indiana

Değerlendirme Sistemi

Yarıyıl İçi Çalışmaları Aktivite Sayısı Katkı Payı
Uygulama 10 % 20
Ödev 5 % 40
Final 1 % 40
Toplam % 100
YARIYIL İÇİ ÇALIŞMALARININ BAŞARI NOTU KATKISI % 60
YARIYIL SONU ÇALIŞMALARININ BAŞARI NOTUNA KATKISI % 40
Toplam % 100

AKTS / İş Yükü Tablosu

Aktiviteler Aktivite Sayısı İş Yükü
Ders Saati 14 42
Ödevler 15 71
Toplam İş Yükü 113

Program ve Öğrenme Kazanımları İlişkisi

Etkisi Yok 1 En Düşük 2 Düşük 3 Orta 4 Yüksek 5 En Yüksek
           
Dersin Program Kazanımlarına Etkisi Katkı Payı
1) İletişimin görsel alanı üzerinde tasarım odaklı uygulama yapabilme yetisini kazandırmak. 3
2) Görsel iletişime yönelik kavramsal tabanlı tasarım çözümleri önerebilme ve bütüncül bakış açısı oluşturabilme becerisini geliştirmek. 4
3) Tasarım sürecini, verilen problemin analizinden çözümlerin önerilmesi ve sonuçlandırma anına kadar yönetebilme yetisini kazandırmak. 4
4) Tasarımda yaratıcı yaklaşımın, yaratıcı düşünme ve üretme süreçlerinin becerisini kazandırmak. 3
5) Görsel iletişimin temel mecralarına (basılı, hareketli ve etkileşimli) hakim olarak, ortamlar arası bağlantılar kurabilme yetisini kazandırmak. 5
6) İletişim problemlerinin, görsel ortamlardaki karşılıklarının tasarım odaklı çözümlemelerini gerçekleştirebilme ve uygulayabilme becerisini kazandırmak. 1
7) Görsel iletişim mecralarında tasarımların sonuçlandırılması ve son ürüne dönüştürülebilmesi için gerekli operasyon ve uygulama bilgilerini edindirmek. 1
8) Tasarımda güncel olan ve sürekli bir değişime sahip olan estetik anlayışları ve güncel olayları takip edebilme, bunları özgün olarak değerlendirebilme yetisini kazandırmak. 1
9) Karmaşıklaşan iletişim kanallarına, gelişen bilgi teknolojilerine ve tasarım yazılımlarına adapte olabilme, takip edebilme ve kullanabilme yetilerini geliştirmek. 2
10) Görsel İletişimin ve tasarımın tarihsel köklerini ve düşünsel temellerini anlayabilmek için gerekli teorik bilgileri kazandırmak. 1
11) Bir tasarım projesinin zaman yönetimini gerçekleştirebilme yetisini kazandırmak. 4
12) Grup çalışması, liderlik özelliği ve bireysel özelliklerini gruba zenginlik olarak katabilme becerilerini geliştirmek. 4
13) Görsel iletişim mecralarına yönelik tasarım çalışmalarını kompozisyonel çözümler ve estetik beceriler ile gerçekleştirmek için gerekli yetileri kazandırmak. 2
14) Global ve lokal görsel iletişim ürünlerine ve aynı zamanda kendi çalışmalarına yönelik akademik, entellektüel ve eleştirel bakış açısı oluşturabilme yetisini geliştirmek. 1