ENDÜSTRİ ÜRÜNLERİ TASARIMI | |||||
Lisans | TYYÇ: 6. Düzey | QF-EHEA: 1. Düzey | EQF-LLL: 6. Düzey |
Ders Kodu | Ders Adı | Yarıyıl | Teorik | Pratik | Kredi | AKTS |
CMP1001 | Programlamaya Giriş (C++) | Bahar | 2 | 2 | 3 | 6 |
Bu katalog bilgi amaçlıdır, dersin açılma durumu, ilgili bölüm tarafından yarıyıl başında belirlenir. |
Öğretim Dili: | İngilizce |
Dersin Türü: | Non-Departmental Elective |
Dersin Seviyesi: | LİSANS |
Dersin Veriliş Şekli: | Yüz yüze |
Dersin Koordinatörü: | MEHMET ŞÜKRÜ KURAN |
Dersi Veren(ler): |
Dr. Öğr. Üyesi CEMAL OKAN ŞAKAR Dr. UTKU GÜLEN Arş.Gör. ÇİĞDEM ERİŞ Dr. Öğr. Üyesi TARKAN AYDIN Dr. Öğr. Üyesi ERKUT ARICAN Dr. Öğr. Üyesi ÖVGÜ ÖZTÜRK ERGÜN Dr. Öğr. Üyesi ÖZGÜR ERKUT ŞAHİN Dr. Öğr. Üyesi ECE GELAL SOYAK |
Opsiyonel Program Bileşenleri: | Yok....... |
Dersin Amacı: | Bu dersin amacı, programlama kavramları, bilgisayar program tasarımı ve C++ dili ile programlamaya genel bir bakış sağlamaktır. C++ dili ile çalışan programlar yazılması dersin amaçlarının başında gelmektedir. Ders, yazılım geliştirme aşamaları olan program analizi, tasarlanması, gerçeklemesi ve sınama kavramlarına temel oluşturacaktır. |
Bu dersi başarıyla tamamlayabilen öğrenciler; I. Bir bilgisayar sisteminin bileşenlerini tanımak II. Problem tanımı ve analizi, algoritma geliştirilmesi III. Temel programlama kavramları hakkında bilgi sahibi olmak IV. C++ ile program geliştirilmesi V. Yapısal programlamanın temellerini kavramak VI. Nesne yönelimli düşünme için pratik kazanmak VII. Başlıca veri yapıları ve algoritmalar hakkında bilgi sahibi olmak VIII. C++ dilinin ileri programlama kavramları ile ilgili bilgi sahibi olmak |
Önemli bilgisayar sistemi kavramlarına giriş (Bilgisayar bileşenleri, yazılım, işletim sistemi, dosya sistemi, programlama dilleri, derleyiciler) Problem çözme (Algoritmalar, sözde kod, akış şeması), Algoritma tasarımı Basit veri tipleri, Sabitler, Değişkenler, Tanımlayıcılar, İsimlendirilmiş sabitler, Aritmetik operatörler İlişkisel ve mantıksal operatörler, Şartsal ifadeler Döngüler (While, Do While) Döngüler (For) ve döngü anahtar sözcükleri Fonksiyonlar, Özyinelemeli fonksiyonlar, Fonksiyon aşırı yüklemesi Karakter dizileri, karakter dizi fonksiyonları Diziler Çok boyutlu diziler Dizi sıralama, dizilerde arama İşaretçiler Referansla geçirme, değerle geçirme Fonksiyon işaretçileri |
Hafta | Konu | Ön Hazırlık |
1) | Önemli bilgisayar sistemi kavramlarına giriş (Bilgisayar bileşenleri, yazılım, işletim sistemi, dosya sistemi, programlama dilleri, derleyiciler) | Önemli bilgisayar sistemi kavramları hakkında ders kitabından bilgi edinmek |
2) | Problem çözme (Algoritmalar, sözde kod, akış şeması), Algoritma tasarımı | Algoritma tasarım yöntemleri hakkında ders kitabı ve diğer kaynaklardan bilgi edinmek |
3) | Basit veri tipleri, Sabitler, Değişkenler, Tanımlayıcılar, İsimlendirilmiş sabitler, Aritmetik operatörler | Algoritma tasarımı tekniklerinden sözde kod ve akış şeması teknikleriyle örnek programlar tasarlanması Ders kitabının basit veri tipleri, sabitler, değişkenler, isimlendirilmiş sabitler, aritmetik operatörler hakkındaki kısımlarını okumak |
4) | Quiz, İlişkisel ve mantıksal operatörler, Şartsal ifadeler | Basit C++ programları yazmak |
5) | Döngüler (Do/While) | İlişkisel ve mantıksal operatörler içeren örnek programlar geliştirmek Ders kitabı ve referans kaynakların döngüler hakkındaki kısımlarını okumak |
6) | Döngüler ('For'), 'break' ve 'continue' anahtar sözcükleri | Döngülerle ilgili örnek programların sözde kodlarını yazmak, akış şemalarını çizmek ve C++ kodlarını yazmak |
7) | Quiz, Fonksiyonlar, Özyinelemeli fonksiyonlar, Fonksiyon aşırı yüklemesi | Moduler programlamayla ilgili ders kitabından ve referans kaynaklardan bilgi edinilmesi |
8) | Diziler | Fonksiyon içeren örnek C++ programları geliştirilmesi |
9) | Karakter dizileri, karakter dizi fonksiyonları | Ders kitabının ve referens kaynaklarının, karakter dizileri ve hazir karakter dizi fonksiyonları hakkındaki ilgili bölümlerini okumak |
11) | Çok boyutlu diziler | Dizilerle ilgili örnek C++ programları geliştirmek |
12) | Quiz, Dizi sıralama, dizilerde arama yapmak | Karakter dizileri hakkında programlar geliştirmek, hazır karakter dizi fonksiyonlarını kullanmak |
13) | İşaretçiler | Dizi sıralama ve dizilerde arama yapma algoritmalarının örnek C++ programlarında Ders kitabının ve referans kaynakların işaretçiler ile ilgili kısımlarının okunması |
14) | Fonksiyonlara işaretçileri kullanarak referansla geçirme, Fonksiyon işaretçileri | İşaretçilerle ilgili örnek C++ programları geliştirilmesi |
Ders Notları / Kitaplar: | Paul J. Deitel, Harvey M. Deitel, C++ How to Program, 7th Ed., Pearson Bjarne Stroustrup, The C++ Programming Language, 3rd Ed., Addison-Wesley. Bjarne Stroustrup, Programming Principles and Practice Using C++, 1st Ed., Addison-Wesley. Walter Savitch, Problem Solving with C++, 7th Ed., Addison-Wesley Andrei Alexandrescu, Herb Sutter, C++ Design and Coding Standards: Rules and Guidelines for Writing Programs, 1st Ed., Addison-Wesley. |
Diğer Kaynaklar: | http://www.cplusplus.com/doc/tutorial/ http://www.cprogramming.com/ |
Yarıyıl İçi Çalışmaları | Aktivite Sayısı | Katkı Payı |
Küçük Sınavlar | 4 | % 25 |
Ara Sınavlar | 1 | % 35 |
Final | 1 | % 40 |
Toplam | % 100 | |
YARIYIL İÇİ ÇALIŞMALARININ BAŞARI NOTU KATKISI | % 60 | |
YARIYIL SONU ÇALIŞMALARININ BAŞARI NOTUNA KATKISI | % 40 | |
Toplam | % 100 |
Aktiviteler | Aktivite Sayısı | İş Yükü |
Ders Saati | 14 | 28 |
Laboratuvar | 14 | 28 |
Küçük Sınavlar | 6 | 12 |
Ara Sınavlar | 6 | 22 |
Final | 6 | 26 |
Toplam İş Yükü | 116 |
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) | Endüstri Ürünleri Tasarımı meslek alanının kuramsal ve uygulamalı bilgi birikimine sahip olmak | |
2) | Mesleki bilgiyi ürün, hizmet ve deneyim geliştirme alanlarında uygulayabilmek | |
3) | Tasarım kavramlarını, mesleki kültür ve dili anlayabilmek, kullanabilmek, yorum yapabilmek ve değerlendirmek | |
4) | Endüstri Ürünleri tasarımı alanında araştırma yöntemlerini bilmek, bu yöntemlerle bilgi toplamak, toplanan bilgiyi yorumlamak ve uygulayabilmek | |
5) | Endüstri ürünleri tasarımı problemlerini tanımlamak, problem koşul ve gereklerini değerlendirebilmek, çözüm önerileri üretebilmek | |
6) | Endüstri Ürünleri Tasarımında önerilen çözümlerin toplumsal, kültürel, çevresel, ekonomik ve insani değerlerin göz önünde bulundurarak geliştirilmesi; kişisel farklılık ve yetenek düzeylerine duyarlı olması | |
7) | Tasarım kavramlarına ve çözümlerine ait bilgiyi, yazılı, sözlü ve görsel anlatım yöntemleriyle aktarma yeteneğine sahip olmak | |
8) | Tasarım çözümlerine ait malzeme, biçimlenme,detaylandırma, servis ve üretim yöntemleri kavramları arasındaki ilişkiyi ve yöntemleri tanımlayabilmek ve uygulayabilmek | |
9) | Endüstri ürünleri tasarımı çözüm ve uygulamalarını anlatabilecek düzeyde bilgisayar destekli bilişim ve iletişim teknolojilerini kullanmak | |
10) | Endüstri ürünleri tasarımının disiplinler arası yapısına kaynak oluşturan, işletme, mühendislik, psikoloji, ergonomi, görsel iletişim alanlarına ait tasarım çözümlerini destekleyecek yöntem ve bilgiye sahip olmak; gerektiğinde bu alanlara ait bilgiyi araştırma, edinme ve kullanma yeteneğine sahip olmak | |
11) | Bir yabancı dili kullanarak endüstri ürünleri tasarımı alanına ait dile hakim olabilmek ve farklı kültürlerden meslektaşlarıyla iletişim kurabilmek | |
12) | Teknolojik ve bilimsel gelişmelere bağlı olarak mesleğin gereksinim duyduğu yeni tasarım konularını ve eğilimlerini takip edebilmek ve değerlendirebilmek |