MYO052 İleri Web Geliştirme Yöntemleriİstinye ÜniversitesiAkademik Programlar Bilgisayar Programcılığı (İÖ)Öğrenciler için Genel BilgiDiploma EkiErasmus BeyanıUlusal Yeterlilikler
Bilgisayar Programcılığı (İÖ)

Önizleme

Önlisans TYYÇ: 5. Düzey QF-EHEA: Kısa Düzey EQF-LLL: 5. Düzey

Ders Genel Tanıtım Bilgileri

Ders Kodu: MYO052
Ders İsmi: İleri Web Geliştirme Yöntemleri
Ders Yarıyılı: Güz
Ders Kredileri:
AKTS
3
Öğretim Dili: Türkçe
Ders Koşulu:
Ders İş Deneyimini Gerektiriyor mu?: Hayır
Dersin Türü: Bölüm/Program Seçmeli
Dersin Seviyesi:
Önlisans TYYÇ:5. Düzey QF-EHEA:Kısa Düzey EQF-LLL:5. Düzey
Dersin Veriliş Şekli: Yüz yüze
Dersin Koordinatörü: Öğr. Gör. AHMET SELİM ÖVER
Dersi Veren(ler): Öğr. Gör. Ramazan Bakır
Dersin Yardımcıları:

Dersin Amaç ve İçeriği

Dersin Amacı: Bu dersin amacı, öğrencilere Node.js kullanarak web uygulamaları geliştirmek için temel bilgileri ve becerileri kazandırmaktır. Öğrenciler, Express.js gibi popüler web çerçeveleri ve MongoDB gibi NoSQL veritabanları ile entegrasyon konularında derinlemesine bilgi edineceklerdir. Ayrıca, güvenlik, performans optimizasyonu ve gerçek zamanlı uygulamalar gibi ileri düzey konulara odaklanarak öğrencilerin profesyonel düzeyde web geliştirme yeteneklerini geliştirmelerini sağlamaktır.
Dersin İçeriği: Bu dersin temel hedefi, öğrencilere web uygulamaları geliştirmek için gerekli temel bilgi ve becerileri Node.js üzerinden sağlamaktır. Katılımcılar, popüler web çerçeveleri arasında yer alan Express.js ve NoSQL veritabanlarından biri olan MongoDB gibi konular üzerinde detaylı bir şekilde bilgi edineceklerdir. Aynı zamanda, güvenlik, performans optimizasyonu ve gerçek zamanlı uygulamalar gibi ileri düzey konulara odaklanarak, öğrencilerin web geliştirme becerilerini profesyonel düzeyde geliştirmelerine olanak tanımaktır.

Öğrenme Kazanımları

Bu dersi başarıyla tamamlayabilen öğrenciler;
1) Node.js'in ne olduğunu anlamak.
2) Express.js uygulamaları oluşturup yönetebilmek.
3) RESTful API tasarım prensiplerini uygulayabilmek.
4) MongoDB üzerinde CRUD işlemlerini gerçekleştirebilmek.
5) Veritabanı işlemlerini gerçekleştirebilmek ve güvenlik önlemleri alabilmek.
6) Express.js uygulamasını gelişmiş bir şekilde yapılandırabilmek.
7) Socket.io kullanarak gerçek zamanlı iletişimi uygulayabilmek.
8) İleri düzey konulara, örneğin GraphQL ve Docker gibi, aşina olmak.

Ders Akış Planı

Hafta Konu Ön Hazırlık
1) Oryantasyon & Node.js nedir? Neden Node.js kullanmalıyız? Yok
2) Node.js kurulumu & Temel JavaScript konseptleri gözden geçirme Yok
3) Express.js nedir? & Temel route ve middleware kavramları Yok
4) Express.js uygulama yapısı & Route oluşturma ve yönetme Yok
5) HTTP temelleri & RESTful API tasarımı / Express.js ile API oluşturma Yok
6) MongoDB nedir? & MongoDB kurulumu ve temel kullanımı Yok
7) Mongoose ile MongoDB entegrasyonu & CRUD işlemleri MongoDB üzerinde gerçekleştirme Yok
8) Vize 1-7. Haftalar
9) Kullanıcı kimlik doğrulama (Authentication) / JWT (JSON Web Token) kullanımı Yok
10) Veritabanı işlemleri ve güvenlik önlemleri Yok
11) Express middleware kullanımı, proje yapılandırması ve modülerleştirme & Express.js uygulamasının gelişmiş konfigürasyonu Yok
12) WebSocket nedir? / Socket.io kullanımı Yok
13) Gerçek zamanlı iletişim için WebSocket entegrasyonu & uygulama dağıtımı ve hosting yönetimi Yok
14) Performans optimizasyonu & Güvenlik en iyi pratikleri & İleri seviye konular: GraphQL, Docker gibi Yok
15) Final 1-14. Haftalar

Kaynaklar

Ders Notları / Kitaplar: NODEJS - KODLAB YAYIN ve Mehmet Canker
Diğer Kaynaklar: https://www.udemy.com/course/komple-web-gelistirme-kursu-nodejs/

Ders - Program Öğrenme Kazanım İlişkisi

Course Learning Outcomes

1

2

3

4

5

6

7

8

Program Kazanımları
1) Problem çözme ve analitik düşünme yeteneklerini kazanır.
2) Bilgisayar programlama, donanım ve yazılım temellerini, temel bilgisayar kavramlarını öğrenir.
3) Problemlere göre algoritmalar geliştirir, temel algoritmalardan problemine uygun olanları ayırt etme becerisi kazanır.
4) Nesneye yönelik programlama konseptini ve web programlamayı kavrar.
5) Sayı tabanı sistemleri, temel elektronik ve bilgisayar donanımı bilgisini öğrenir.
6) Mobil programlama becerisi edinir, mobil platformlar için uygulamalar geliştirir.
7) Veritabanı tasarım ve kodlamasını yapar.
8) Bilgisayar ağları, açık kaynak kodlu işletim sistemleri programlamayı ve kullanmayı öğrenir.
9) İngilizce dilini etkin bir biçimde kullanır.
10) Programlamanın ihtiyaçlarına göre uygun veri yapıları kullanmayı öğrenir.
11) Bireysel ya da takım olarak yazılım geliştirir.
12) Alanındaki gelişmeleri, son teknoloji araçlarını/uygulamalarını takip eder.
13) Mesleki ve etik sorumluluk bilinci kazanır, meslek etiği farkındalığına sahiptir.

Ders - Öğrenme Kazanımı İlişkisi

Etkisi Yok 1 En Düşük 2 Orta 3 En Yüksek
       
Dersin Program Kazanımlarına Etkisi Katkı Payı
1) Problem çözme ve analitik düşünme yeteneklerini kazanır. 3
2) Bilgisayar programlama, donanım ve yazılım temellerini, temel bilgisayar kavramlarını öğrenir. 3
3) Problemlere göre algoritmalar geliştirir, temel algoritmalardan problemine uygun olanları ayırt etme becerisi kazanır. 3
4) Nesneye yönelik programlama konseptini ve web programlamayı kavrar. 3
5) Sayı tabanı sistemleri, temel elektronik ve bilgisayar donanımı bilgisini öğrenir. 3
6) Mobil programlama becerisi edinir, mobil platformlar için uygulamalar geliştirir. 3
7) Veritabanı tasarım ve kodlamasını yapar. 3
8) Bilgisayar ağları, açık kaynak kodlu işletim sistemleri programlamayı ve kullanmayı öğrenir. 3
9) İngilizce dilini etkin bir biçimde kullanır. 3
10) Programlamanın ihtiyaçlarına göre uygun veri yapıları kullanmayı öğrenir. 3
11) Bireysel ya da takım olarak yazılım geliştirir. 3
12) Alanındaki gelişmeleri, son teknoloji araçlarını/uygulamalarını takip eder. 3
13) Mesleki ve etik sorumluluk bilinci kazanır, meslek etiği farkındalığına sahiptir. 3

Ölçme ve Değerlendirme

Yarıyıl İçi Çalışmaları Aktivite Sayısı Katkı Payı
Küçük Sınavlar 1 % 15
Ara Sınavlar 1 % 35
Final 1 % 50
Toplam % 100
YARIYIL İÇİ ÇALIŞMALARININ BAŞARI NOTU KATKISI % 50
YARIYIL SONU ÇALIŞMALARININ BAŞARI NOTUNA KATKISI % 50
Toplam % 100

İş Yükü ve AKTS Kredisi Hesaplaması

Aktiviteler Aktivite Sayısı Aktiviteye Hazırlık Aktivitede Harçanan Süre Aktivite Gereksinimi İçin Süre İş Yükü
Ders Saati 3 7 1 24
Küçük Sınavlar 1 15 15
Ara Sınavlar 1 20 1 21
Final 1 25 1 26
Toplam İş Yükü 86