Yazılım Mühendisliği (İngilizce) | |||||
Lisans | TYYÇ: 6. Düzey | QF-EHEA: 1. Düzey | EQF-LLL: 6. Düzey |
Ders Kodu: | SWE314 | ||||
Ders İsmi: | Web Programlama | ||||
Ders Yarıyılı: | Bahar | ||||
Ders Kredileri: |
|
||||
Öğretim Dili: | English | ||||
Ders Koşulu: | |||||
Ders İş Deneyimini Gerektiriyor mu?: | Hayır | ||||
Dersin Türü: | Zorunlu | ||||
Dersin Seviyesi: |
|
||||
Dersin Veriliş Şekli: | Yüz yüze | ||||
Dersin Koordinatörü: | Doç. Dr. AMIR SEYYEDABBASI | ||||
Dersi Veren(ler): | Dr. Öğr. Üyesi Alper Öner | ||||
Dersin Yardımcıları: |
Dersin Amacı: | HTML, CSS, JavaScript ve sunucu tarafı betik dilleri dahil olmak üzere temel web programlama teknolojilerinde yeterlilik gösterilir. Web geliştirmede istemci-sunucu mimarisini ve istek-yanıt döngüsünü anlaşılır. Sorunsuz bir kullanıcı deneyimi sağlayan etkileşimli ve dinamik web uygulamaları tasarlanır ve geliştirilir. Görsel olarak çekici ve kullanıcı dostu web arayüzleri oluşturmak için kullanıcı arayüzü tasarım ilkelerini uygulanır. Veri depolama, alma ve işlemeye izin vererek veritabanlarını web uygulamalarına entegre edilir. Kod organizasyonu, sürüm kontrolü ve test metodolojileri dahil olmak üzere web programlamadaki en iyi uygulamaları uygulanır. |
Dersin İçeriği: | Dersin içeriği; Web Temelleri, Web için Programlama Dilleri, HTML Temelleri, çalışma ortamı, PHP dili, HTML'yi PHP ile kullanmak, formlar, oturumlar, tanımlama bilgileri vb., CSS ve şablonları kullanma. veritabanlarına giriş, PHP'de veritabanı manipülasyonu, JavaScript'in Temelleri, Tarayıcıyı ve formları JavaScript ile programlama, Pencereleri ve çerçeveleri JavaScript ile değiştirme, Tarihleri, zamanlayıcıları, dize işlemeyi ve düzenli ifadeleri kullanma, DHTML, AJAX temelleri, Güvenlik tuzakları ve temel çözümler başlıklarından oluşmaktadır. |
Bu dersi başarıyla tamamlayabilen öğrenciler;
1) Web siteleri geliştirmek için uygun bir planlama stratejisi uygulayabilir. 2) İşlevsel, esnek ve çok yönlü web siteleri üretebilir. 3) Gelişmekte olan web siteleri için mevcut ve gelişmekte olan teknolojileri bulma, değerlendirme ve eleştirel olarak değerlendirme becerisi kazanır. 4) HTML5 ve CSS hakkında iyi bir çalışma bilgisine sahip olur. 5) Çeşitli küçük web sitesi projeleri oluşturma deneyimini kazanır. 6) Bir web sitesi oluşturma sürecinin ve bu süreçte ihtiyaç duyulan çeşitli rollerin farkındalığını kazanır. |
Hafta | Konu | Ön Hazırlık |
1) | Web Temelleri, Web için Programlama Dilleri | |
2) | HTML Temelleri, çalışma ortamı | |
3) | PHP dili | |
4) | HTML'yi PHP ile kullanmak, formlar, oturumlar, tanımlama bilgileri vb. | |
5) | HTML'yi PHP ile kullanmak, formlar, oturumlar, tanımlama bilgileri vb. | |
6) | PHP'de veritabanı manipülasyonu | |
7) | JavaScript'in Temelleri | |
8) | Ara Sınav | |
9) | Tarayıcıyı ve formları JavaScript ile programlama | |
10) | Pencereleri ve çerçeveleri JavaScript ile değiştirme | |
11) | Tarihleri, zamanlayıcıları, dize işlemeyi ve düzenli ifadeleri kullanma | |
12) | DHTML | |
13) | AJAX temelleri | |
14) | Güvenlik tuzakları ve temel çözümler |
Ders Notları / Kitaplar: | Steven A. Gabarro, Web Application Design and Implementation, Wiley, 2006. |
Diğer Kaynaklar: | Wandschneider: Core Web Apps Dev _1, 1st Edition. Prentice Hall, 2005. |
Course Learning Outcomes | 1 |
2 |
3 |
4 |
5 |
6 |
|||||
---|---|---|---|---|---|---|---|---|---|---|---|
Program Kazanımları | |||||||||||
1) Matematik, fen bilimleri ve yazılım mühendisliğine özgü konularda yeterli bilgi birikimi; bu alanlardaki kuramsal ve uygulamalı bilgileri, karmaşık mühendislik problemlerinin çözümünde kullanabilme becerisi. | |||||||||||
2) Karmaşık yazılım mühendisliği problemlerini tanımlama, formüle etme ve çözme becerisi; bu amaçla uygun analiz ve modelleme yöntemlerini seçme ve uygulama becerisi. | |||||||||||
3) Karmaşık bir yazılım sistemini, süreci, cihazı veya ürünü gerçekçi kısıtlar ve koşullar altında, belirli gereksinimleri karşılayacak şekilde tasarlama, gerçekleştirme, sınama, doğrulama, ölçme ve bakımını yapma becerisi; bu amaçla modern tasarım yöntemlerini uygulama becerisi. | |||||||||||
4) Yazılım mühendisliği uygulamalarında karşılaşılan karmaşık problemlerin analizi ve çözümü için gerekli olan modern teknik ve araçları seçme ve kullanma becerisi; bilişim teknolojilerini etkin bir şekilde kullanma becerisi. | |||||||||||
5) Karmaşık mühendislik problemlerinin veya yazılım mühendisliği araştırma konularının incelenmesi için deney tasarlama, deney yapma, veri toplama, sonuçları analiz etme ve yorumlama becerisi. | |||||||||||
6) Disiplin içi ve çok disiplinli takımlarda etkin biçimde çalışabilme becerisi; bireysel çalışma becerisi. | |||||||||||
7) Sözlü ve yazılı etkin iletişim kurma becerisi; en az bir yabancı dil bilgisi; etkin rapor yazma ve yazılı raporları anlama, tasarım ve üretim raporları hazırlayabilme, etkin sunum yapabilme, açık ve anlaşılır talimat verme ve alma becerisi. | |||||||||||
8) Yaşam boyu öğrenmenin gerekliliği konusunda farkındalık; bilgiye erişebilme, bilim ve teknolojideki gelişmeleri izleme ve kendini sürekli yenileme becerisi. | |||||||||||
9) Etik ilkelerine uygun davranma, mesleki ve etik sorumluluk ve yazılım mühendisliği uygulamalarında kullanılan standartlar hakkında bilgi. | |||||||||||
10) Proje yönetimi, risk yönetimi ve değişiklik yönetimi gibi, iş hayatındaki uygulamalar hakkında bilgi; girişimcilik, yenilikçilik hakkında farkındalık; sürdürülebilir kalkınma hakkında bilgi. | |||||||||||
11) Yazılım mühendisliği uygulamalarının evrensel ve toplumsal boyutlarda sağlık, çevre ve güvenlik üzerindeki etkileri ve çağın yazılım mühendisliği alanına yansıyan sorunları hakkında bilgi; yazılım mühendisliği çözümlerinin hukuksal sonuçları konusunda farkındalık. |
Etkisi Yok | 1 En Düşük | 2 Orta | 3 En Yüksek |
Dersin Program Kazanımlarına Etkisi | Katkı Payı | |
1) | Matematik, fen bilimleri ve yazılım mühendisliğine özgü konularda yeterli bilgi birikimi; bu alanlardaki kuramsal ve uygulamalı bilgileri, karmaşık mühendislik problemlerinin çözümünde kullanabilme becerisi. | |
2) | Karmaşık yazılım mühendisliği problemlerini tanımlama, formüle etme ve çözme becerisi; bu amaçla uygun analiz ve modelleme yöntemlerini seçme ve uygulama becerisi. | |
3) | Karmaşık bir yazılım sistemini, süreci, cihazı veya ürünü gerçekçi kısıtlar ve koşullar altında, belirli gereksinimleri karşılayacak şekilde tasarlama, gerçekleştirme, sınama, doğrulama, ölçme ve bakımını yapma becerisi; bu amaçla modern tasarım yöntemlerini uygulama becerisi. | |
4) | Yazılım mühendisliği uygulamalarında karşılaşılan karmaşık problemlerin analizi ve çözümü için gerekli olan modern teknik ve araçları seçme ve kullanma becerisi; bilişim teknolojilerini etkin bir şekilde kullanma becerisi. | 2 |
5) | Karmaşık mühendislik problemlerinin veya yazılım mühendisliği araştırma konularının incelenmesi için deney tasarlama, deney yapma, veri toplama, sonuçları analiz etme ve yorumlama becerisi. | |
6) | Disiplin içi ve çok disiplinli takımlarda etkin biçimde çalışabilme becerisi; bireysel çalışma becerisi. | |
7) | Sözlü ve yazılı etkin iletişim kurma becerisi; en az bir yabancı dil bilgisi; etkin rapor yazma ve yazılı raporları anlama, tasarım ve üretim raporları hazırlayabilme, etkin sunum yapabilme, açık ve anlaşılır talimat verme ve alma becerisi. | |
8) | Yaşam boyu öğrenmenin gerekliliği konusunda farkındalık; bilgiye erişebilme, bilim ve teknolojideki gelişmeleri izleme ve kendini sürekli yenileme becerisi. | |
9) | Etik ilkelerine uygun davranma, mesleki ve etik sorumluluk ve yazılım mühendisliği uygulamalarında kullanılan standartlar hakkında bilgi. | |
10) | Proje yönetimi, risk yönetimi ve değişiklik yönetimi gibi, iş hayatındaki uygulamalar hakkında bilgi; girişimcilik, yenilikçilik hakkında farkındalık; sürdürülebilir kalkınma hakkında bilgi. | |
11) | Yazılım mühendisliği uygulamalarının evrensel ve toplumsal boyutlarda sağlık, çevre ve güvenlik üzerindeki etkileri ve çağın yazılım mühendisliği alanına yansıyan sorunları hakkında bilgi; yazılım mühendisliği çözümlerinin hukuksal sonuçları konusunda farkındalık. |
Yarıyıl İçi Çalışmaları | Aktivite Sayısı | Katkı Payı |
Ara Sınavlar | 1 | % 40 |
Final | 1 | % 60 |
Toplam | % 100 | |
YARIYIL İÇİ ÇALIŞMALARININ BAŞARI NOTU KATKISI | % 40 | |
YARIYIL SONU ÇALIŞMALARININ BAŞARI NOTUNA KATKISI | % 60 | |
Toplam | % 100 |
Aktiviteler | Aktivite Sayısı | Aktiviteye Hazırlık | Aktivitede Harçanan Süre | Aktivite Gereksinimi İçin Süre | İş Yükü | ||
Ders Saati | 13 | 1 | 3 | 52 | |||
Proje | 1 | 15 | 15 | ||||
Ödevler | 2 | 15 | 30 | ||||
Ara Sınavlar | 1 | 20 | 20 | ||||
Final | 1 | 20 | 20 | ||||
Toplam İş Yükü | 137 |