Web uygulamaları, Web uygulamalarında tasarım örüntüleri, geliştirme araçları ve sürüm kontrol sistemleri, Spring framework, dependency injection, MVC, Junit birim, hibernate ORM, spring+hibernate entegrasyonu, Middleware ve HTTP protokolü, HTTP Protokolü, Spring kontrolörleri, spring filtreleri, REST API'ları, HTML, CSS, Javascript ve jquery, ajax.
|
Hafta |
Konu |
Ön Hazırlık |
1) |
Ders içeriği ve altyapısının tanıtılması: Tarihi bakış açısı, web uygulaması nedir?, web uygulamalarında tasarım örüntülerine giriş, geliştirme araçları ve sürüm kontrol sistemleri
|
|
2) |
Java tekrarı ve Spring framework tanıtımı: Web uygulamalarında kullanılan Spring elemanları, dependency injection, MVC, Junit birim testi
|
|
3) |
Database etkileşimleri ve hibernate ORM: ilişkisel veritabanları, ORM konsepti, spring+hibernate entegrasyonu
|
|
4) |
Middleware ve HTTP protokolü: Uygulama sunucusu, HTTP Protokol, HTTP İstekleri, HTTP Cevapları, Sessions/cookies, Spring kontrolörleri, spring filtreleri , REST API'ları ve içerik türleri
|
|
5) |
Sunum katmanı ve kullanıcı arayüzleri: HTML, CSS, Javascript ve jquery, Spring views ve şablon motorları, ajax.
|
|
6) |
Ara Sınav
|
|
7) |
Uygulamalı proje (blog engine) iterasyon 1: Uygulamanın genel gereksinimleri, kullanıcı arayüz tasarımı, kayıt ve login senaryoları, uygulama özelliklerinin tartışılması, kaynak kod yönetimi ve geliştirme ortamlarının tartışılması.
|
|
8) |
Uygulamalı proje (blog engine) iterasyon 2: İterasyon 1 demosu ve retro, Blog yazısı kompozisyon senaryoları, Blog yazısı görüntüleme
|
|
9) |
Uygulamalı proje (blog engine) iterasyon 3: iterasyon 2 demosu ve retro. Blog yazısı güncelleme ve silme senaryoları
|
|
10) |
Uygulamalı proje (blog engine) iterasyon 4: iterasyon 3 demosu. Bir yazıya tag ekleme ve silme senaryoları
|
|
11) |
Uygulamalı proje (blog engine) iterasyon 5: iterasyon 4 demosu. Bir yazıya yorum yazılması, güncellenmesi ve silinmesi
|
|
12) |
Uygulamalı proje (blog engine) iterasyon 6: iterasyon 5 demosu . Blog engine analitik ekleme senaryoları.
|
|
13) |
Final proje sunumları
|
|
14) |
Final proje sunumları
|
|
|
Dersin Program Kazanımlarına Etkisi |
Katkı Payı |
1) |
Temel matematik, uygulamalı matematik teori ve uygulamalarını kavramış olmak |
|
2) |
Matematiksel ispatları anlamak ve onlara erişebilmek ve uygun ispatları inşa edebilmek ve ayrıca, problemleri tanımlayabilmek, onları analiz edebilmek ve problemlere bilimsel metotlara dayalı çözümler bulmak |
|
3) |
Matematiği disiplinler arası bir yaklaşım ile gerçek hayata uygulayabilmek ve bunların etkin potansiyelini keşfetmek |
|
4) |
Kendisini geliştirmek ve matematiğin kullanıldığı alanlarda modelleme yapabilecek seviyede gerekli bilgi birikimini elde etmek |
4 |
5) |
Teorik ve teknik bilgileri detaylı bir biçimde uzmanlara, basit ve anlaşılabilir bir biçimde uzman olmayanlara anlatabilmek |
|
6) |
Matematik alanında kullanılan bilgisayar programlarına aşina olmak ve bunlardan en az birini İleri Düzey Avrupa Bilgisayar Ehliyeti(the European Computer Driving Licence Advanced Level) seviyesinde kullanmak |
|
7) |
Görev aldığı projelerin her adımında sosyal, bilimsel ve etik değerlere uygun davranmak ve çevre katılımı kapsamında proje tanıtımı ve uygulamaları yapabilmek |
|
8) |
Evrensel anlamda bir entelektüel birikime sahip olarak tüm süreçleri etkin bir biçimde değerlendirmek ve kalite yönetimi hakkında yeterli farkında lığa sahip olmak |
4 |
9) |
Soyut düşünme yeteneğine sahip bir biçimde somut olaylar arasında ilgi kurmak, çözümleri aktarmak, deneyler tasarlamak, veri toplamak ve sonuçları bilimsel metotlarla analiz etmek ve müdahil olmak |
|
10) |
Yaşam boyu öğrenme hakkında bilinçli olarak, program boyunca edinilen bilgi, beceri ve yeteneklerini yenileyerek yaşam boyu öğrenmenin devamını sağlamak |
|
11) |
Cebir, analiz, sayılar teorisi, mantık, geometri ve topoloji gibi matematik alanlarında kazandığı bilgiyi ortaöğretim seviyesine uyarlamak ve aktarmak |
|
12) |
Yalnız veya bir ekibin elemanı olarak araştırma yapmak, bir projenin ilgili her adımında etkili olmak, karar verme süreçlerine katılmak, zamanı etkili kullanarak proje planlamak ve yürütmek |
|