Yapay zekadan makale özeti
- Kısa
- Ayrıntılı
- Bu video, bir eğitmen tarafından sunulan yazılım, mimar ve tasarım dersi ödevlerini içeren bir eğitim içeriğidir.
- Video, tasarım kalıplarının C# ve Java programlama dillerinde nasıl uygulanacağını göstermektedir. İlk bölümde uçak bilet sistemi için UML sınıf diyagramı ve senaryo yazımı yapılmakta, ardından Singleton tasarım kalıbı anlatılmaktadır. İkinci bölümde ise Adaptör ve Observer tasarım kalıpları detaylı olarak ele alınmakta, her iki kalıbın da kod örnekleri ve uygulama sonuçları paylaşılmaktadır.
- Videoda tasarım kalıplarının pratik uygulamaları, sınıfların özellikleri, ilişkileri ve kod örnekleri detaylı olarak açıklanmaktadır. Özellikle Adaptör kalıbının halihazırda çalışan uygulamalara yeni sınıflar eklemenin kolaylaştırıldığı ve Observer kalıbının faiz oranı değiştiğinde internet ve gazetelere bildirim gönderme örneği üzerinden nasıl uygulandığı gösterilmektedir.
- Yazılım, Mimar ve Tasarım Dersi Ödevleri
- Yazılım, mimar ve tasarım dersi ödevleri üzerinde bir sunum gerçekleştirilecek.
- İlk soruda bir IOM sınıf diyagramı verilmiş ve bunun senaryosu yazılmak isteniyor.
- Sınıflar arasında müşteri, bilet, uçuş kuponu, uçuş yolcu bagajı, uçak, uçak tipi ve oturma yeri sınıfları bulunuyor.
- 00:45Uçak Bilet Uygulaması Senaryosu
- Web üzerinden çalışabilecek ve uçak bilet görevlilerinin kullanabileceği bir uygulama tasarlanacak.
- Uygulamada müşteriler ve yolculuk sürecinde gerekli bilgiler tutulmalıdır.
- Müşteri sınıfında isim, soyisim ve doğum tarihi bilgileri bulunurken, bilet sınıfında rezervasyon numarası ve bilet numarası tutulur.
- 01:18Sınıf İlişkileri
- Bir müşterinin birden fazla bileti olabilir, fakat bir bilet bir müşteriye ait olmalıdır.
- Her bir bilet bir müşteriye tanımlanmalıdır.
- Uçuş kuponu sınıfında geçerlilik tarihi ve sınıf öztelikleri bulunur.
- 02:13Diğer Sınıf İlişkileri
- Her bir uçuş kuponunda birden fazla yolcu bagajı bulunabilir.
- Yolcu bagajı sınıfında adet ve ağırlık bilgisi bulunur.
- Sistemdeki uçuşların kalkış saati ve uçuş saati bilgileri tutulmalıdır.
- 03:01Uçak ve Oturma Yeri İlişkileri
- Her bir uçuşta birden fazla oturma yerine ihtiyaç duyulmaktadır.
- Oturma yeri sınıfında büyüklük, numara ve konum değişkenleri bulunmaktadır.
- Uçuş kuponunda oturma yeri seçilmiş veya seçilmemiş olabilir.
- 03:38Uçak Tipi ve Oturma Yeri İlişkileri
- Sistemde uçak tipleri markalarına göre tutulmaktadır.
- Her bir uçak tipinde birden fazla uçak bulunabilmektedir.
- Oturma yerleri uçak tipine aittir ve her bir uçak tipinde birden fazla oturma yeri tanımlanmıştır.
- 04:43Singleton Tasarım Kalıbı
- İkinci soruda single tasarım kalıbı uygulanması isteniyor.
- Singleton tasarım kalıbına göre sadece bir kez bir nesne yaratılacak ve aynısından aynı nesne kullanılabilir.
- Constructor private yapılarak sadece tek bir nesne oluşması engellenir ve get object properties sayesinde erişim sağlanır.
- 07:31Adaptör Tasarım Kalıbı
- Üçüncü soruda adaptör tasarım kalıbı C ile kodlanacak.
- Smart phones sınıfı içerisinde smart cars soket nesnesi yaratılmış ve birebir bir ilişki söz konusudur.
- Sim kart soket sınıfına sim kart tanımlanmış ve insert metodu bulunuyor.
- 08:55Adapter Tasarım Kalıbı Kodlaması
- Smartphone sınıfı içerisinde sim kart soket tanımlanmış ve yapıcı metodunda sim kart soket parametre olarak atılıp sim kart soket üzerine atılıyor.
- Nano sim kart adaptör sınıfı i sim kart interface'ini implemente ediyor ve nano sim kart ile ilişkili.
- Nano sim kart adaptör sınıfı, nano sim kart ile ilgili işlemleri yapmamıza yarayan sınıfdır.
- 11:09Adaptör Tasarım Kalıbı
- Data sınıfı, sim kart üzerindeki bilgileri içerir.
- Adaptör tasarım kalıbı, halihazırda çalışan bir uygulamaya yeni sınıflar ve uygulamaları dahil etmek için kullanılır.
- Adaptör tasarımı sayesinde yeni gelen kod üzerinde değişiklik yapmadan, kendi kodumuzda adaptör sınıfı yaratarak yeni sınıfın metotlarını tanımlayarak ihtiyaç duyduğumuz sınıfı sistemimize dahil edebiliriz.
- 12:04Adaptör Tasarım Uygulaması
- Test kısmında önce sim kart soket ve smart phone yaratılır, smart phone'a sim kart soket nesnesi parametre olarak geçirilir.
- Tam boy sim kart soket üzerinden insert metodu çalıştırılarak kart okutulur.
- Adaptör tasarımı uygulandığında, nano sim kart yaratılıp nano sim kart adaptör oluşturulur ve sim kart soket üzerinden insert metodu çalıştırılır.
- 13:06Adaptör Tasarım Sonuçları
- Tam boy sim kart okutulduğunda, sim kart soket üzerinden insert metodu çalıştırılır ve tam boy sim kart sınıfı üzerine düşülür.
- Nano sim kart okutulduğunda, sim kart soket üzerinden insert metodu çalıştırılır ve nano sim kart adaptör sınıfı üzerine düşülür.
- Adaptör tasarım kalıbı, halihazırda çalışmakta olan programımıza bir sınıf eklentisi olarak yeni sistemleri ve uygulamaları kullanabilmemizi sağlar.
- 15:51Observer Tasarım Kalıbı
- Dördüncü soruda observer tasarım kalıbı kullanılarak faiz oranı değiştiğinde internet ve gazetelere bildirim göndermesini sağlayan bir uygulama yapılır.
- Observer sınıfı içerisine güncelle adında bir metot yazılır ve kalıtım yapan sınıflar istedikleri işlemleri yapabilir.
- Internet ve gazete sınıfları observers interface'e dahil edilerek faiz oranı güncellendi bildirimi gönderilir.
- 18:34Observer Tasarım Uygulaması
- Programda iki observer (gazete ve internet) tanımlanır ve ihtiyaç kredisi sınıfı observer interface'e dahil edilir.
- Faiz oranı güncellendiğinde, kaydedilen observer'lara bildirim gönderilir.
- Observer'lar çıkarıldığında, sadece kalan observer'a bildirim gönderilir, tüm observer'lar çıkarıldığında ise hiçbir bildirim gönderilmez.