Bütünleme 2022-2023 20 soru

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ı

20 soru
Şıkka dokun, anında açıklamasını gör — ya da çalışma modunda tüm cevapları aç.
Soru 1
Aşağıda verilenlerden hangisi koleksiyon türlerine örnek değildir?
DDoğru cevap
Açıklama 🤖 Yapay zekâ açıklaması

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.

Soru 2
C# Programlama Dilinde bir hata (Exception) oluşturmak için hangi anahtar kelime kullanılır?
CDoğru cevap
Açıklama 🤖 Yapay zekâ açıklaması

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.

Soru 3
I- Oluşturucu (Creational)
II- Mantıksal (Logical)
III- Davranışsal (Behavioral)
Yukarıda verilenlerden hangisi yada hangileri tasarım desenlerinin ana kategorilerindedir?
DDoğru cevap
Açıklama 🤖 Yapay zekâ açıklaması

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.

Soru 4
C# Programlama Dilinde bir yıkıcı (destructor) tanımlamak için aşağıdaki işaretlerden hangisi kullanılır?
EDoğru cevap
Açıklama 🤖 Yapay zekâ açıklaması

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.

Soru 5
Mevcut bir nesneyi kopyalayarak yeni bir nesne oluşturma prensibine dayalı tasarım deseni aşağıdakilerden hangisidir?
ADoğru cevap
Açıklama 🤖 Yapay zekâ açıklaması

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.

Soru 6
Nesneye Yönelik Programlama 2022-2023 Bütünleme Soruları 6. SORU-min (1)
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?
BDoğru cevap
Açıklama 🤖 Yapay zekâ açıklaması

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.

Soru 7
Nesneye Yönelik Programlama 2022-2023 Bütünleme Soruları 7. SORU-min
Yukarıdaki örnek kod bloğu derlenme zamanında hata almaktadır. Bu hatanın sebebi aşağıdakilerden hangisinde verilmiştir?
DDoğru cevap
Soru 8
I- Bir sınıfın sahip olduğu özelliklerin değişime kapalı olmasıdır.
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?
BDoğru cevap
Açıklama 🤖 Yapay zekâ açıklaması

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.

Soru 9
Simula programlama dili ile ilgili aşağıdakilerden hangisi doğrudur?
ADoğru cevap
Açıklama 🤖 Yapay zekâ açıklaması

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.

Soru 10
Mevcut veri yapısı değiştirilmeden, veri yapısını genişletmeye olanak sağlayan tasarım deseni aşağıdakilerden hangisindir?
DDoğru cevap
Açıklama 🤖 Yapay zekâ açıklaması

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.

Soru 11
C# Programlama Dilinde hataları yakalamak için kullanılan bloklar aşağıdaki seçeneklerden hangisinde verilmiştir?
CDoğru cevap
Açıklama 🤖 Yapay zekâ açıklaması

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.

Soru 12
Nesneye Yönelik Programlama 2022-2023 Bütünleme Soruları 12. SORU-min
Yukarıda bir sınıf diyagramına ait UML nesnesi verilmiştir. Buna göre aşağıdakilerden hangisi yanlıştır?
BDoğru cevap
Soru 13
Nesneye Yönelik Programlama 2022-2023 Bütünleme Soruları 13. SORU-min
Yukarıda verilen kod parçası çalıştırıldığında ekrana yazan değer kaç olur?
EDoğru cevap
Soru 14
Aşağıda verilenlerden hangisi Birleşik Modelleme Dili (UML) standardına ait bir diyagram türü değildir?
CDoğru cevap
Açıklama 🤖 Yapay zekâ açıklaması

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.

Soru 15
Nesneye Yönelik Programlamada bir sınıfın (class) sorumluluklarını sınırlandırarak, bir sınıfa ait birden fazla sorumluluğun tanımlanmasının tasarım sorunlarına sebep olabileceğini belirten ilke aşağıdakilerden hangisinde verilmiştir?
BDoğru cevap
Açıklama 🤖 Yapay zekâ açıklaması

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.

Soru 16
Bir nesnenin önceki durumunun kaydedilmesine ve geri yüklenmesine olanak sağlayan davranışsal tasarım deseni aşağıdakilerden hangisidir?
EDoğru cevap
Açıklama 🤖 Yapay zekâ açıklaması

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.

Soru 17
C# Programlama Dilinde yazılan bir kodun çalışabilmesi için bir derleyeci ile derlenmesi gerekmektedir. Bu derleme işlemi sonucunda ortaya çıkan çıktı hangisinde verilmiştir?
CDoğru cevap
Açıklama 🤖 Yapay zekâ açıklaması

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.

Soru 18
Bir sınıf birden fazla arabirim kullanmak isterse, arabirimlerin ayrımında kullanılan ayraç hangisi olmalıdır?
ADoğru cevap
Açıklama 🤖 Yapay zekâ açıklaması

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.

Soru 19
I- Vekil (Proxy)
II- Adaptör (Adapter)
III-Tekil (Singleton)
Yukarıda verilenlerden hangisi ya da hangileri yapısal tasarım desenidir?
ADoğru cevap
Açıklama 🤖 Yapay zekâ açıklaması

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.

Soru 20
20. SORU-min
Yukarıda verilen örnek metot tanımı için aşağıdakilerden hangisi yanlıştır?
EDoğru cevap