Nesneye Yönelik Programlama 2025-2026 Vize Soruları
Giriş
Bu ders notu, modern yazılım geliştirmenin temeli olan Nesneye Yönelik Programlama (OOP) kavramlarını, C# dilinin bellek yönetimini, UML modellemeyi ve .NET platformunun mimarisini vize soruları ışığında özetlemektedir.
1. .NET Mimarisi ve Bellek Yönetimi
2. Nesneye Yönelik Programlama (OOP) Prensipleri
OOP yaklaşımı Tasarım aşamasında başlar. Dört temel prensibi vardır:
Not: “Modelleme” bir OOP prensibi değil, bu prensiplerin uygulandığı sürecin adıdır.
3. Yazılım Tasarımı ve UML
[Image of UML class diagram structure]
4. C# Programlama Temelleri
Nesneye Yönelik Programlama 2025-2026 Vize 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ğıdakilerden hangisi bir yazılımın kullanıcı gözüyle kaliteli olduğunu gösteren kriterlerden biri değildir?
CDoğru cevap
Açıklama
Modüllerin tekrar kullanılabilirliği (reusability), son kullanıcıdan ziyade yazılım geliştiricileri ilgilendiren teknik bir kalite kriteridir. Kullanıcı için önemli olan kararlılık, hız, güvenlik ve kullanılabilirliktir.
Soru 2
Aşağıdakilerden hangisi Ortak Dil Tanımlamaları (Common Language Specifications – CLS) tarafından desteklenen programlama dillerinden biri değildir?
EDoğru cevap
Açıklama
CLS, farklı programlama dillerinin birbiriyle uyumlu çalışmasını sağlayan bir standarttır. Fortran, Python, Perl ve C++ programlama dilleri iken; XML (Extensible Markup Language) bir programlama dili değil, bir veri işaretleme ve yapılandırma dilidir.
Soru 3
double a = 14; object b = a;
Yukarıdaki C# kod satırlarında tanımlanan a ve b değişkenleri hangi bellek bölgesinde saklanırlar?
EDoğru cevap
Açıklama
C#’ta double bir değer tipidir (value type) ve stack bölgesinde saklanır. Ancak bu değer object türündeki bir değişkene atandığında “boxing” işlemi gerçekleşir ve veri heap bölgesine taşınır. Bu yüzden b referansı heap‘teki veriyi işaret eder.
Soru 4
C# programlama dilinde hangi anahtar kelime ile bir değişkenin sabit (değiştirilemez) olacağı belirtilir?
ADoğru cevap
Açıklama
const anahtar kelimesi, bir değişkenin değerinin derleme zamanında belirlendiğini ve program boyunca bir daha asla değiştirilemeyeceğini (sabit olduğunu) ifade eder.
Soru 5
Sistemdeki kullanıcıların nasıl etkileşimde bulunacağını ve sistemle ilgili işlevleri nasıl gerçekleştireceklerini tanımlayan 4+1 Görünüm Modeli aşağıdakilerden hangisidir?
EDoğru cevap
Açıklama
4+1 Mimari Görünüm Modeli’nin merkezinde yer alan Kullanım Senaryoları (Use Cases), sistemin aktörlerle olan etkileşimini ve beklenen davranışlarını senaryolar üzerinden tanımlar.
Soru 6
Yorumlayıcı mantığına benzer şekilde kodun belli bir bölümünü makine koduna çevirip çalıştıran, diğer satırları ise daha sonra makine koduna dönüştüren JIT yapısı aşağıdakilerden hangisidir?
ADoğru cevap
Açıklama
Eco-JIT, kısıtlı kaynaklara sahip ortamlarda (veya belirli optimizasyon seviyelerinde) kullanılan, metodun tamamı yerine sadece o an ihtiyaç duyulan kısımları makine koduna çeviren bir Just-In-Time derleme türüdür.
Soru 7
Doğrulama (verification) işlemi aşağıdaki yazılım geliştirme aşamalarından hangisinde yapılmalıdır?
ADoğru cevap
Açıklama 🤖 Yapay zekâ açıklaması
Ders kapsamında doğrulama (verification), "ürünü doğru mu geliştiriyoruz?" sorusuyla tasarım aşamasında yapılır; tasarımın belirlenen gereksinimleri karşılayıp karşılamadığı kontrol edilir. Test aşaması ise geçerleme (validation) ve hata bulma ile ilişkilidir.
Soru 8
UML’de, sınıflar arasındaki “is-a” ilişkisini aşağıdaki hangi kavram temsil eder?
DDoğru cevap
Açıklama
Nesneye yönelik programlamada Kalıtım (Inheritance), “is-a” (bir …’dır) ilişkisini ifade eder. Örneğin; “Araba bir Taşıttır” cümlesi kalıtım ilişkisini tanımlar.
Soru 9
C# programlama dilinde bool veri türünün tanımı aşağıdakilerden hangisidir?
ADoğru cevap
Açıklama
bool (boolean) veri tipi, sadece true (doğru) veya false (yanlış) olmak üzere iki mantıksal değer alabilen temel bir veri türüdür.
Soru 10
Sınıf diyagramında (Class Diagram) bir sınıfın içindeki aşağıdaki hangi bileşen, sınıfın fonksiyonlarını gösterir?
DDoğru cevap
Açıklama
Sınıf diyagramlarında sınıfların sahip olduğu özellikler “Nitelikler” (Attributes), gerçekleştirebildiği işlevler ve fonksiyonlar ise “Metotlar” (Methods) bölümünde gösterilir.
Soru 11
Aşağıdaki diyagram türlerinden hangisi UML içinde yer almaz?
EDoğru cevap
Açıklama
Standart UML (Unified Modeling Language) diyagramları arasında Sınıf, Kullanım Durumu, Sıralama ve Durum Makinesi gibi diyagramlar bulunur ancak “Donanım Diyagramı” diye bir UML standardı yoktur (Donanımı göstermek için Dağıtım/Deployment diyagramı kullanılır).
Soru 12
Aşağıdakilerden hangisi bir işlemin nasıl (how) gerçekleştirileceği ile ilgilenen yaklaşıma sahip bir programlama dilidir?
BDoğru cevap
Açıklama
Java, emirsel (imperative) bir dildir ve bir işin adım adım “nasıl” yapılacağını komutlarla anlatır. HTML, SQL ve Prolog gibi diller ise bildirimsel (declarative) dillerdir ve “nasıl”dan ziyade “ne” (what) yapılacağına odaklanır.
Soru 13
int x = 42; object y = x;
Yukarıdaki C# kod satırları aşağıdaki hangi işleme bir örnektir?
DDoğru cevap
Açıklama
Bir değer tipinin (int) bir referans tipine (object) örtük olarak dönüştürülmesi işlemine Boxing (Kutulama) denir. Bu işlem veriyi stack’ten heap’e taşır.
Soru 14
.NET platformlarında kullanılan, tekrar kullanılabilir bileşenlerin ve hizmetlerin bir koleksiyonu olan temel bileşen aşağıdakilerden hangisidir?
DDoğru cevap
Açıklama
FCL, .NET geliştiricilerinin veri tabanı erişimi, dosya işlemleri, kullanıcı arayüzü gibi işler için kullandığı devasa bir hazır kütüphane ve bileşenler topluluğudur.
Soru 15
Aşağıdakilerden hangisi Nesneye Yönelik Programlama yaklaşımına dayanan bir dilin sahip olması gereken temel özelliklerden biri değildir?
CDoğru cevap
Açıklama
Nesneye Yönelik Programlama’nın (OOP) dört temel prensibi vardır: Kapsülleme, Kalıtım, Çok Biçimlilik ve Soyutlama. Modelleme ise bu prensiplerin uygulandığı genel bir süreçtir, bir dil özelliği değildir.
Soru 16
Nesneye yönelik programlamada veri ve işlevlerin bir arada bulunduğu yapıyı ifade eden kavram hangisidir?
CDoğru cevap
Açıklama
Sınıf (Class), veri alanlarını (fields) ve bu veriler üzerinde işlem yapan fonksiyonları (methods) bir arada toplayan temel yapı taşıdır.
Soru 17
Nesneye yönelik programlamada, karmaşıklığı gizleyerek programlama sürecini daha anlaşılır ve yönetilebilir hale getiren kavram aşağıdakilerden hangisidir?
BDoğru cevap
Açıklama
Soyutlama (Abstraction), bir nesnenin sadece gerekli özelliklerini gösterip detayları ve karmaşıklığı gizleyerek kullanıcıya basit bir arayüz sunma prensibidir.
Soru 18
Nesneye Yönelik Programlamada “Farklı nesnelerin aynı arayüzü kullanarak farklı işlevler gerçekleştirmesi” durumu hangi terim ile ifade edilir?
CDoğru cevap
Açıklama
Çok Biçimlilik (Polymorphism), farklı sınıfların aynı metod adını (veya arayüzünü) kullanarak, kendi ihtiyaçlarına göre farklı şekillerde davranabilmesi yeteneğidir.
Soru 19
Yazılım geliştirirken nesneye yönelik düşünme yaklaşımı ilk olarak aşağıdaki hangi aşamada devreye girer?
BDoğru cevap
Açıklama
Nesneye yönelik yaklaşımda, sistemin hangi nesnelerden oluşacağı ve bu nesnelerin birbiriyle nasıl etkileşime gireceği ilk olarak Tasarım aşamasında modellenmeye başlanır.
Soru 20
.NET Framework’ün amacı aşağıdakilerden hangisidir?
BDoğru cevap
Açıklama
.NET Framework, C#, VB.NET, F# gibi birçok dili destekleyen, uygulamaların geliştirilmesi, çalıştırılması ve yönetilmesi için gerekli kütüphaneleri ve çalışma ortamını (CLR) sağlayan kapsamlı bir platformdur.