Mobil Programlama 2024-2025 Vize Soruları (Güz)
Mobil Programlama 2024-2025 Vize Soruları (Güz)
#1. Aşağıdaki operatörlerden hangisi bir listedeki içeriği bir başka listeye kopyalamak için kullanılır?
Cevap : D) …? (üç nokta soru işareti)
Açıklama : Dart dilinde “spread operator” olarak adlandırılan `…` (üç nokta), bir koleksiyonun elemanlarını başka bir koleksiyona kopyalamak için kullanılır. `…?` ise, kopyalanacak listenin boş veya null olması durumunda hata vermemesi için güvenli bir kullanımdır.

#2. Yukarıdaki kod bloğunun ekran çıktısı aşağıdakilerden hangisidir?
Cevap : D) 5
Açıklama :
#3. Kullanıcı etkileşimi olmayacak kendi arayüz bileşenimizi tasarlamak istiyorsak hangi sınıftan miras almamız uygun çözümdür?
Cevap : B) Stateless Widget
Açıklama : Flutter’da kullanıcı etkileşimi olmayan ve içsel durum bilgisi tutmayan arayüz bileşenleri oluşturmak için “StatelessWidget” sınıfından miras alınır.
#4. Aşağıdaki veri türlerinden hangisi Jenerik (Generic) bir türdür?
Cevap : B) List
Açıklama : “List” veri türü, `List` şeklinde tanımlanarak, içindeki elemanların türünü (E) belirtme imkanı sunar. Bu, List’i bir “Jenerik (Generic)” veri türü yapar. Diğerleri temel veri türleridir.
#5. Dart programlama dili için aşağıda verilen ifadelerden hangisi yanlıştır?
Cevap : D) Fonksiyon çağrısında normal parametrelere değer girilmesi zorunlu değildir.
Açıklama : Dart’ta normal (positional) parametrelerin fonksiyon çağrısı sırasında değer alması zorunludur. Değer atanması zorunlu olmayan parametreler named (adlandırılmış) veya optional (isteğe bağlı) parametrelerdir. Bu nedenle ifade yanlıştır.
Öğrenme Yönetim Sistemi Öğrenci Dostu LOLONOLO bol bol deneme sınavı yapmayı önerir.
#6. 2010-2020 yılları arasındaki istatistiklere göre 2020 civarında akıllı telefon pazarında en fazla kullanılan işletim sistemi hangisidir?
Cevap : D) Android
Açıklama : 2010-2020 yılları arasındaki istatistiklere göre, 2020 civarında akıllı telefon pazarında en baskın ve en fazla kullanılan işletim sistemi “Android”dir.

#7. Yukarıdaki şekilde kodlaması başlayan bir Widget sınıfı için hangi seçenek her zaman doğrudur?
Cevap : A) TobboxA içerisinde setState() metodu ile arayüz güncellemesi tetiklenir.
Açıklama :
#8. Kendi arayüz bileşenimizi üretmek istediğimizde, arayüz bileşeni sınıfını tanımlamasında, @override ile işaretleyip yazmak zorunda olduğumuz fonksiyon aşağıdakilerden hangisidir?
Cevap : C) build
Açıklama : Flutter’da bir arayüz bileşeni sınıfı (StatelessWidget veya StatefulWidget) oluşturduğumuzda, `build` fonksiyonunu `@override` anahtar kelimesiyle işaretleyerek yazmak zorundayız. Bu fonksiyon, bileşenin arayüzünü oluşturur.
#9. Aşağıdakilerden hangisi Flutter Navigator API’ında bulunan temel bileşenlerden biri değildir?
Cevap : A) Screen
Açıklama : Flutter’da sayfalar arası gezinti sağlayan Navigator API’ında `Navigator`, `Route`, `Router` ve `Page` gibi temel bileşenler bulunur. “Screen” ise genellikle bir sayfa veya rota olarak adlandırılan yapının genel bir ismidir, API’daki spesifik bir bileşen değildir.

#10. Satırı ile Flutter projesine eklenecek Material Kütüphanesindeki bileşenler aşağıdaki hangi aşamada fayda sağlamaktadır?
Cevap : E) Arayüz bileşenlerinin Android uygulamalarında kullanılana
Açıklama : Verilen kod satırı, Android uygulamalarında kullanılana benzer, materyal tasarım ilkelerine uygun arayüz bileşenleri (widget) sağlayan “Material” kütüphanesini projeye dahil etmeyi amaçlar. Bu, uygulama geliştirme sürecini kolaylaştırır ve platformlar arası tutarlılık sağlar.
Öğrenme Yönetim Sistemi Öğrenci Dostu LOLONOLO bol bol deneme sınavı yapmayı önerir.
#11. ‘package:flutter/services.dart’ kütüphanesi üzerinden kullanabileceğimiz rootBundle yapısı kullanılma sebebi aşağıdakilerden hangisidir?
Cevap : C) Uygulama içerisindeki tüm varlıklara (assets) erişmek için.
Açıklama : `rootBundle`, Flutter’da uygulama klasörü içindeki varlıklara (assets) (resim, metin, ses dosyaları vb.) erişmek için kullanılan bir yapıdır.
#12. Flutter’daki arayüz bileşenlerinin (widget) nasıl çalıştıkları ve hangi parametreleri aldıklarını en detaylı şekilde öğrenme biçimi aşağıdakilerden hangisidir?
Cevap : B) Flutter API dokümantasyonundan
Açıklama : Flutter’daki her bir widget’ın (arayüz bileşeninin) nasıl çalıştığı, hangi parametreleri aldığı ve ne gibi özelliklere sahip olduğu gibi en detaylı ve resmi bilgiler, “Flutter API dokümantasyonunda” yer almaktadır.

#13. Bir sınıf tanımlaması için yukarıdaki kod bloğu bulunmaktadır. Bu kod bloğunun çağrılma zamanı aşağıdakilerden hangisidir?
Cevap : C) Sınıf için tanımlı olmayan bir fonksiyon çağrılırsa
Açıklama :
#14. Aşağıdakilerden hangisi Flutter çerçevesinin arayüz düzenlemesi için koyduğu kısıtlardan biri değildir?
Cevap : A) Widget ağacı her 4ms’de bir yenilenmek zorundadır. Eğer yenilenmezse ekranda titreme olacaktır.
Açıklama : Flutter, arayüzü saniyede 60 kare (ortalama 16.6ms) hızla çizmeye çalışır. “Her 4ms’de bir yenilenmek” gibi bir zorunluluk yoktur. Bu süre, uygulamanın performansına ve işlem gücüne bağlı olarak değişir.
#15. –enable-windows-desktop ifadesi Windows bir işletim sistemi için Flutter projesi yazmayı mümkün kılmaktadır. Bu ifade hangi terminal komutuna parametre olarak yazılır?
Cevap : A) flutter config
Açıklama :
Öğrenme Yönetim Sistemi Öğrenci Dostu LOLONOLO bol bol deneme sınavı yapmayı önerir.
#16. Aşağıdakilerden hangisi Navigator 2.0 API ile gelen bileşenlerden biri değildir?
Cevap : E) Scaffold
Açıklama : `Scaffold`, temel materyal tasarım düzenini uygulayan bir widget’tır ve Navigator 2.0 API’ına özgü bir bileşen değildir, çok daha önce Flutter’ın temel yapısında yer almıştır. `Page`, `RouterInformationParser`, `RouterDelegate` ise Navigator 2.0 ile gelen yeni bileşenlerdir.
#17. Column widgeti içerisindeki crossAxsisAlignment parametresi aşağıdakilerden hangisi için düzenleme sağlar?
Cevap : E) İçerdiği elemanların yatayda yerleşimi için
Açıklama : `Column` widget’ı, çocuk widget’larını dikey bir eksen üzerinde (main axis) düzenler. `crossAxisAlignment` parametresi ise, bu çocuk widget’larının yatay (cross axis) eksen üzerindeki hizalanmasını düzenler.

#18. Yukarıdaki kod satırı hata vermeden çalışan bir uygulamanın parçası ise yaptığı işlemle ilgili olarak aşağıdaki yorumlardan hangisi doğrudur?
Cevap : E) names bir List örneğidir ve verilen liste bu List objesinin sonuna eklenir.
Açıklama : Verilen kod satırı, names adında bir List değişkeni oluşturur ve bu listeye [‘Lars’, ‘Chris’, ‘Seth’] değerlerini atar. Bu durumda names bir List örneğidir ve verilen liste onun içeriğini oluşturur. Eğer başka bir listeye eklenmesi istenseydi, addAll gibi bir fonksiyon veya … operatörü kullanılırdı.
#19. MaterialApp arayüz bileşeninin routes parametresinin aldığı değer türü aşağıdakilerden hangisidir?
Cevap : C) Map
Açıklama : `MaterialApp` widget’ının `routes` parametresi, rota isimlerini (String) ve bu rotalar için arayüz bileşeni oluşturan fonksiyonları (WidgetBuilder) içeren bir Map veri türü alır.
#20. Flutter projesinin en hızlı güncellemelerini alacağımız kanalı aşağıdakilerden hangisidir?
Cevap : B) Master
Açıklama : Flutter’ın sürüm kanalları arasında en hızlı ve en güncel (ancak en kararsız) olanı “Master” kanalıdır. Bu kanal, geliştirme aşamasındaki en son değişiklikleri içerir.
Öğrenme Yönetim Sistemi Öğrenci Dostu LOLONOLO bol bol deneme sınavı yapmayı önerir.
SONUÇ
Mobil Programlama 2024-2025 Vize Soruları (Güz)
Flutter ile Mobil Programlama: Dart Dilinin Esasları ve Widget Mimarisi |
|
|---|---|
@lolonolo_com |
Mobil Programlama 2024-2025 Vize Soruları (Güz)
Mobil Programlama 2024-2025 Vize Soruları |
|
|---|---|
@lolonolo_com |
Mobil Programlama 2024-2025 Vize Soruları (Güz)
Mobil Programlama 2024-2025 Vize Soruları |
|
|---|---|
@lolonolo_com |
![]() |
Mobil Programlama 2024-2025 Vize Soruları (Güz)
