SortedSet, Stack, Queue ve Dictionary, birden fazla elemanı saklayıp yöneten koleksiyon sınıflarıdır. Struct ise kullanıcı tanımlı bir değer tipidir; bir koleksiyon türü değildir.
Nesneye Yönelik Programlama 2022-2023 Bütünleme
Kaynak: https://lolonolo.com/2023/12/25/nesneye-yonelik-programlama-2022-2023-butunleme-sorulari/
📖 Konu özeti (sınav öncesi tekrar)
Nesneye Yönelik Programlama 2022-2023 Bütünleme Soruları
Bilgisayar Programcılığı Sınav Soruları
Auzef Yönetim Bilişim Sistemleri Sınav Soruları
C#'ta bir hata (istisna) oluşturmak için throw anahtar kelimesi kullanılır: throw new Exception("Hata mesajı");. Fırlatılan hata try-catch bloğuyla yakalanır.
II- Mantıksal (Logical)
III- Davranışsal (Behavioral)
Yukarıda verilenlerden hangisi yada hangileri tasarım desenlerinin ana kategorilerindedir?
Tasarım desenleri üç ana kategoride toplanır: oluşturucu (creational), yapısal (structural) ve davranışsal (behavioral). "Mantıksal" diye bir kategori yoktur; bu nedenle doğru olanlar I ve III'tür.
C#'ta yıkıcı (destructor), sınıf adının önüne tilde ~ işareti konularak tanımlanır: ~Ogrenci() { }. Yıkıcı, nesne çöp toplayıcı tarafından bellekten kaldırılırken çağrılır.
Prototip (Prototype) deseni, yeni nesneyi sıfırdan oluşturmak yerine mevcut bir nesneyi kopyalayarak (klonlayarak) üretir. Singleton tek örnek oluşturmayı, Builder karmaşık nesneyi adım adım oluşturmayı sağlar.

C# Programlama Dilinde bir yapı (struct) tanımı verilmiştir. Bu yapıya ait x değişkenine 10 değerinin atanması aşağıdakilerden hangisinde doğru ifade edilmektedir?
Bir yapının (veya sınıfın) üyesine, o yapıdan oluşturulan değişken üzerinden nokta operatörüyle erişilir: islem.x = 10;. Yalnızca x = 10 yazmak hangi nesneye ait olduğunu belirtmez; -> operatörü C# güvenli kodunda kullanılmaz ve "0" bir string olduğundan int alana atanamaz.

Yukarıdaki örnek kod bloğu derlenme zamanında hata almaktadır. Bu hatanın sebebi aşağıdakilerden hangisinde verilmiştir?
II – Bir sınıfın yeni davranışlar eklenerek genişletilmesidir.
III – Bağımlılıkların tersine çevrilmesidir.
Açık/Kapalı prensibi ile ilgili yukarıda verilenlerden hangisi veya hangileri doğrudur?
Açık/Kapalı Prensibi, bir sınıfın değişime kapalı, ancak gelişime (genişletmeye) açık olmasını ifade eder: mevcut kod değiştirilmeden yeni davranışlar eklenebilmelidir. III'teki bağımlılıkların tersine çevrilmesi ise Bağımlılığı Tersine Çevirme Prensibi'dir.
Simula, 1960'larda Norveç'te geliştirilmiş ve sınıf, nesne, kalıtım kavramlarını ilk kez ortaya koyan, nesneye yönelik ilk programlama dilidir. Getirdiği kavramlar bugün de C#, Java gibi dillerde kullanılmaktadır.
Dekoratör (Decorator) deseni, mevcut bir nesnenin yapısını değiştirmeden onu saran yeni sınıflarla nesneye dinamik olarak yeni özellikler eklemeyi sağlar. Cephe (Facade) ise karmaşık bir sisteme basit bir arayüz sunar.
C#'ta hatalar try-catch-finally bloklarıyla yakalanır: hata oluşabilecek kod try içine yazılır, hata catch ile yakalanır, finally bloğu ise hata olsa da olmasa da çalışır.

Yukarıda bir sınıf diyagramına ait UML nesnesi verilmiştir. Buna göre aşağıdakilerden hangisi yanlıştır?

Yukarıda verilen kod parçası çalıştırıldığında ekrana yazan değer kaç olur?
UML diyagramları arasında faaliyet (activity), kullanım senaryosu (use case), bileşen (component), sıra (sequence), sınıf diyagramları gibi türler bulunur. "Statik kod analiz diyagramı" UML standardında yer almaz.
Tek Sorumluluk Prensibi (SOLID'deki S), bir sınıfın yalnızca tek bir sorumluluğu, yani değişmek için tek bir nedeni olması gerektiğini söyler. Bir sınıfa birden fazla sorumluluk yüklemek bakımı zorlaştırır ve tasarım sorunlarına yol açar.
Hatırlayıcı (Memento) deseni, nesnenin iç durumunu kapsüllemeyi bozmadan kaydedip daha sonra o duruma geri dönmeyi sağlar; "geri al" (undo) özelliği buna tipik bir örnektir.
C# kodu derlendiğinde doğrudan makine koduna değil, ara dile (IL, Intermediate Language) çevrilir. Program çalışırken CLR içindeki JIT derleyici bu IL kodunu makine koduna dönüştürür.
C#'ta bir sınıf birden fazla arabirim uyguladığında, arabirimler iki noktadan (:) sonra virgülle ayrılarak yazılır: class Araba : IHareket, ISes. İki nokta kalıtım/uygulama başlangıcını gösterir, ayraç ise virgüldür.
II- Adaptör (Adapter)
III-Tekil (Singleton)
Yukarıda verilenlerden hangisi ya da hangileri yapısal tasarım desenidir?
Vekil (Proxy) ve Adaptör (Adapter) yapısal tasarım desenleridir; sınıf ve nesnelerin birleşerek daha büyük yapılar oluşturmasıyla ilgilenirler. Tekil (Singleton) ise bir sınıftan tek nesne üretilmesini sağlayan oluşturucu bir desendir.
Yukarıda verilen örnek metot tanımı için aşağıdakilerden hangisi yanlıştır?