LOLONOLO Ana Sayfa » blog » auzef » Mobil Programlama 2025-2026 Final Soruları (Bahar)
auzefBilgisayar ProgramcılığıMobil ProgramlamaWeb Tasarım Ve Kodlama

Mobil Programlama 2025-2026 Final Soruları (Bahar)

Mobil Programlama 2025-2026 Final Soruları (Bahar)

 
LOLONOLO Ana Sayfa » blog » auzef » Mobil Programlama 2025-2026 Final Soruları (Bahar)

#1. Flutter’da provider kütüphanesindeki uygulama seviyesi durum yönetiminde kullamlan Consumer widgetının yapıcı fonksiyonunun builder parametresi, parametreleri context(BuildContext), value(Generic Data Type) ve child(Widget) şeklindedir.
Yukarıdaki child parametresi aşağıdaki amaçlardan hangisi için kullanılmaktadır?

Cevap: C) Consumer altında güncellenmesine gerek olmayan ağacı ifade etmek için
Açıklama: Provider kütüphanesinde Consumer widget’ı veri her değiştiğinde kendi builder fonksiyonunu tekrar çalıştırarak arayüzü günceller. Ancak bazen bu builder ağacının içinde hiç değişmeyecek statik, büyük ve karmaşık widget’lar bulunabilir. Performans optimizasyonu amacıyla bu sabit kısımlar dışarıdan child parametresine verilir. Böylece Consumer, veriler değişse bile o child nesnesini yeniden oluşturmaz, sadece bellekteki mevcut halini tekrar kullanır.

#2. Aşağıdakilerden hangisi Flutter’da dosya sistemindeki farklı klasörlerin yollarını elde etmek için kullanılan paketin adıdır?

Cevap: E) path_provider
Açıklama: Mobil cihazlarda güvenlik ve mimari farklılıklardan dolayı uygulamaların dosya kaydedebileceği klasör yolları iOS ve Android işletim sistemlerinde birbirinden tamamen farklıdır. path_provider paketi, işletim sistemlerinin bu karmaşıklığını geliştiriciden gizleyerek, uygulamanın belge (Documents) veya geçici (Temporary) klasör yolları standart metotlarla güvenli bir şekilde elde etmemizi sağlar.

#3. Flutter’da kod üreten kütüphaneler kullanılırsa (örneğin json_serializable) her derleme işleminde kod üretiminin ilgili dosyadaki değişiklikleri takip ederek otomatik yapılması için terminale yazılması gereken komut aşağıdakilerden hangisidir?

Cevap: C) flutter pub run build_runner watch
Açıklama: json_serializable veya freezed gibi kod üretim (code generation) araçları kullanıldığında .g.dart uzantılı dosyalar üretilir. Kaynak koddaki her değişiklikten sonra manuel olarak build komutu çalıştırmak yerine, geliştirme sürecini hızlandırmak için dosyaları sürekli dinleyen (izleyen) watch komutu kullanılır. This işlemi sağlayan tam terminal komutu flutter pub run build_runner watch şeklindedir.

#4. Aşağıdakilerden hangisi bir satırda sağdan sola birden fazla görsel arayüz bileşenini yerleştirmek için kullanılan düzenleyici arayüz bileşenidir?

Cevap: B) Row
Açıklama: Flutter’da birden fazla widget’ı yatay bir eksende (bir satır halinde) yan yana dizmek için Layout (düzen) bileşeni olan Row kullanılır. children parametresi içine aldığı liste elemanlarını varsayılan olarak soldan sağa doğru sıralar. Eğer aynı yerleştirme işlemi dikey eksende (alt alta) istenmiş olsaydı Column bileşeni kullanılacaktı.

#5. “App State” (Uygulama durumu) Flutter’da veri değişiminin bir durum ile uygulama genelinde takibini sağlayan yaklaşımdır.
Aşağıdakilerden hangisi için “App State” yaklaşımını kullanmak gereksiz olacaktır?

Cevap: A) Bir animasyonlu widgetın animasyonu oynatımında
Açıklama: “App State” (Uygulama Durumu); kullanıcı oturumu, tema tercihleri veya alışveriş sepeti gibi verilerin uygulamanın tamamında (birden fazla ekranda) paylaşıldığı durumlar için gereklidir. Ancak sadece tek bir widget’ın kendi içindeki geçici durumu (örneğin bir butonun basılı olma hali veya basit bir animasyonun oynatılması) “Ephemeral State” (yerel durum) olarak adlandırılır. Böyle basit işlemler için karmaşık bir App State altyapısı kurmak gereksizdir.

Öğrenme Yönetim Sistemi Öğrenci Dostu LOLONOLO bol bol deneme sınavı yapmayı önerir.

#6. setState(() {
_active = !_active;});
Yukarıdaki kod parçasında “setState” içerisinde “active” değeri güncellenmiş ve bu değere göre hiyerarşide içteki bir widget arkaplan rengini seçecektir.
Hal böyle iken, setState metodu arayüz bileşenlerinin oluşturduğu ağaçta güncellenecek arayüz bileşeninden daha dış seviyede bulunuyorsa, arayüz güncellenmesinde değişen veri içteki arayüz bileşenlerine (widget) aktarılma yöntemi aşağıdakilerden hangisidir?

Cevap: D) Hiyerarşide içeride kalan widget’ın yapıcı fonksiyonuyla
Açıklama: Flutter’da veri akışı her zaman yukarıdan aşağıya (parent to child) doğrudur. Dıştaki (üst) bir widget’ta setState çağrıldığında o widget yeniden çizilir (rebuild). Bu çizim esnasında değişen yeni durum (state), içteki (alt) widget’lara parametre olarak gönderilmelidir. Bu veri aktarımı, içteki alt widget’ın yapıcı fonksiyonu (constructor parametreleri) aracılığıyla sağlanır ve alt widget yeni değerlerle tekrar ekrana basılır.

#7. Flutter’da kalıcı hafızaya key-value (anahtar-değer) veri çiftleri şeklinde özel bir formatta veri saklamak için kullanılan özel yapının adı aşağıdakilerden hangisidir?

Cevap: E) shared_preferences
Açıklama: shared_preferences, Flutter’da kullanıcı ayarları, oturum bilgileri (token) veya küçük yapılandırma tercihleri gibi verileri cihazın kalıcı hafızasında saklamak için kullanılan resmi ve en yaygın pakettir. Verileri arka planda Android için SharedPreferences, iOS için ise NSUserDefaults altyapılarını kullanarak anahtar-değer (key-value) çiftleri formatında asenkron olarak kaydeder.

#8. ….. komutu, Flutter, Android Studio ve diğer IDE yazılımlarının kurulumları ile ilgili denetimleri yaparak kurulumların uygunluğu ile ilgili sonuçları gösterir.
Yukarıda boş bırakılan yere aşağıdakilerden hangisi gelmelidir?

Cevap: B) Flutter doctor
Açıklama: Flutter SDK kurulumunun ardından, sistemin geliştirme yapmaya hazır olup olmadığını denetleyen komut flutter doctor komutudur. This komut çalıştırıldığında bir teşhis aracı gibi davranır; Android SDK, iOS toolchain (Xcode), IDE’ler (VS Code, Android Studio) ve bağlı cihazlar gibi gereksinimleri tarayarak eksiklikleri ve yapılması gerekenleri terminal ekranında listeler.

#9. Flutter’da içeriği sürekli değişebilen veri tabanı ve web servisleri gibi veri kaynakları için unit test işleminin belli bir anlık görüntü üzerine uygulanabilmesi için kullanılan paketin adı nedir?

Cevap: E) Mockito
Açıklama: Mockito paketi, özellikle birim testleri (unit test) yazılırken canlı veritabanı, API veya web servisi gibi dış kaynaklara olan gerçek bağımlılığı ortadan kaldırmak için kullanılır. Bu paket, gerçek objelerin yerine geçen “sahte” (mock) nesneler üreterek, uygulamanın dış etkenlerden bağımsız, izole edilmiş ve test edilebilir belirli bir veri durumuna (anlık görüntüye) sahip olmasını sağlar.

#10. uses-permission android:name=”android.per
mission.INTERNET”
Android işletim sisteminde İnternet erişimine sahip olabilmemiz için yukarıdaki kod parçacığı aşağıdaki dosyalardan hangisine yazılmalıdır?

Cevap: A) AndroidManifest.xml
Açıklama: Flutter platformlar arası bir çerçeve olsa da, her işletim sisteminin kendine has güvenlik kuralları vardır. Android platformunda uygulamanın internete çıkabilmesi, kamerayı kullanabilmesi veya konuma erişebilmesi için gerekli tüm sistem izinleri uygulamanın yerel Android dizininde bulunan android/app/src/main/AndroidManifest.xml dosyasına tanımlanmak zorundadır.

Öğrenme Yönetim Sistemi Öğrenci Dostu LOLONOLO bol bol deneme sınavı yapmayı önerir.

#11. Aşağıdakilerden hangisi Navigator 2.0 API ile gelen bileşenlerden biri değildir?

Cevap: B) Scaffold
Açıklama: Flutter’ın Navigator 2.0 API’si, özellikle web platformundaki URL değişikliklerini ve derin bağlantıları (deep linking) bildirimsel (declarative) bir yöntemle yönetmek için tasarlanmıştır. This sistemin ana bileşenleri Router, RouterDelegate, RouteInformationParser ve Page sınıflarıdır. Scaffold ise bir navigasyon bileşeni değil, ekranın görsel iskeletini (AppBar, Body, FloatingActionButton vb.) oluşturan temel bir Material Design arayüz widget’ıdır.

#12. “Lazy Loading” kavramı aşağıdakilerden hangisinde doğru bir karşılıkla ifade edilmiştir?

Cevap: C) Yüklenen verinin sadece ekranda görüntülenecek kısmının çekilmesi
Açıklama: “Lazy Loading” (Tembel Yükleme); performansı artırmak için uzun listelerin, görsellerin veya büyük verilerin uygulama açıldığında tek seferde belleğe yüklenmesi yerine, sadece kullanıcının o an ekranda gördüğü (veya görmek üzere kaydırdığı) kısmının dinamik olarak yüklenip çizilmesi prensibidir. Flutter’da ListView.builder ve GridView.builder gibi widget’lar bu mantıkla çalışarak büyük oranda bellek (RAM) tasarrufu sağlar.

#13. Flutter’da sayfanın üst kısmındaki başlık (AppBar) bölümünün altında bir liste varsa ve sayfa aşağı kaydırıldığında başlık kısmının gizlenmesi isteniyorsa her iki bileşeni de aşağıdaki hangi widget türünden yapmak gerekir?

Cevap: C) Silver
Açıklama: Flutter’da ekran kaydırıldıkça (scroll) AppBar’ın dinamik olarak küçülmesi veya ekrandan kaybolması gibi özel kaydırma efektleri “Sliver” widget ailesi kullanılarak elde edilir. (Not: Bu soru ve seçeneklerde Sliver kelimesi tipografik bir kelime oyunu veya yazım hatası sonucu metal isimleriyle bağdaştırılarak Silver olarak ifade edilmiştir.) Uygulamada CustomScrollView içerisinde SliverAppBar ve SliverList yapıları kullanılır.

Mobil Programlama 2025-2026 Final Soruları (Bahar) 13. SORU

#14. Yukarıdaki kod bloğunun ekran çıktısı aşağıdakilerden hangisidir?

Cevap: A) 5
Açıklama: islem fonksiyonu int alıp yeni bir fonksiyon döndürmektedir. nullli = islem(null) çağrıldığında (int i) => null ?? i fonksiyonu üretilir; bu da kendine verilen i değerini döndürür. nullsiz = islem(5) çağrıldığında ise (int i) => 5 ?? i fonksiyonu üretilir; bu da kendine ne verilirse verilsin (5 null olmadığı için) hep 5 döndürür. İşlem sırasıyla nullli(3) çalışır ve 3 döner. Ardından en dıştaki nullsiz(3) çalışır ve kendisi hep 5 döndürmeye ayarlandığı için sonuç 5 olarak ekrana yazdırılır.

#15. Aşağıdakilerden hangisi Flutter’da performans ölçümü için baz alınacak metriklerde ana gruplardan birisinin adı değildir?

Cevap: D) Kullanılabilirlik
Açıklama: Flutter veya herhangi bir yazılım geliştirmede uygulamanın teknik performansı ölçülürken RAM tüketimi (Bellek Kullanımı), cihaz bataryasını tüketme oranı (Enerji Tüketimi), uygulamanın diskte kapladığı alan (Uygulama Boyutu) ve ekran kare hızı/render süreleri (Hız) gibi donanımsal metrikler dikkate alınır. Kullanılabilirlik (Usability) ise doğrudan teknik bir performans metriği değil, arayüzün ne kadar kullanıcı dostu olduğunu ifade eden bir UX (Kullanıcı Deneyimi) kavramıdır.

Öğrenme Yönetim Sistemi Öğrenci Dostu LOLONOLO bol bol deneme sınavı yapmayı önerir.

#16. GridView düzenleyici arayüz bileşeni için aşağıdaki tanımlardan hangisidir uygundur?

Cevap: B) Kaydırılabilir bir ızgara (tablo) görünümü sağlar
Açıklama: GridView widget’ı, içerisine eklenen liste elemanlarını iki boyutlu bir matris formunda, hem satırlara hem de sütunlara (izgara yapısına) bölerek sergileyen ve aynı zamanda aşağı-yukarı kaydırılabilen (scrollable) bir yapı sunar. Fotoğraf galerilerinde yan yana sıralanmış albüm kapakları veya e-ticaret uygulamalarındaki yan yana ürün listelemeleri GridView için en yaygın örneklerdir.

#17. Flutter pubspec.yaml dosyası içerisinde dependencies: altında belirtilen paket bağımlılıkları için bir paketi …… arayabilir.
Aşağıdaki seçeneklerden hangisinin yukarıda verilen boşluğa yazılması uygun değildir?

Cevap: A) Sıkıştırılmış (Zip) dosyası içerisinde
Açıklama: Flutter projelerinde uygulamanın dışa bağımlılıkları ve eklentileri (paketler) pubspec.yaml dosyasında tanımlanır. Bu dosyada belirtilen paketler doğrudan Pub.dev adresinden (varsayılan depo), Git (GitHub repoları ve alt klasörleri) üzerinden veya bilgisayardaki dosya sisteminde bulunan lokal bir dizinden çekilebilir. Ancak Flutter’ın paket yönetim sistemi, doğrudan sıkıştırılmış bir “.zip” dosyası gösterilerek paket yükleme yöntemini standart olarak desteklemez.

#18. String sınıfı için genişletme metotları (Extention methods) yazmak istiyorsak bu methodları yazacağımız kod bloğunu aşağıdakilerden hangisi doğru tanımlamaktadır?

Cevap: D) extension BenimBlogum on String { ….}
Açıklama: Dart programlama dilinde halihazırda var olan sınıflara (örneğin String sınıfına) kaynak kodunu değiştirmeden yepyeni özellikler veya metotlar eklemek için Extension (genişletme) özelliği kullanılır. Extension tanımlamanın doğru sözdizimi (syntax) extension GenisletmeAdi on HangiSinif { … } şeklindedir. Dolayısıyla D seçeneğindeki yapı doğrudur.

#19. AnimationController(
vsync: this,)
Yukarıdaki kod parçası Flutter’da bir AnimatedWidget için AnimationController olarak kullanılsın. Buradaki “vsync:this” ifadesi ile aşağıdakilerden hangisi sağlanmaktadır?

Cevap: D) Animasyonun ekran dışında kalan kısmı için sistem kaynağı tüketilmemesini
Açıklama: Animasyon kontrolcülerinde kullanılan vsync: this parametresi, o anki widget’ı bir TickerProvider olarak sisteme tanıtır. Bunun en önemli görevi, widget ekranda görünür olmadığı zamanlarda (örneğin arka plana atıldığında veya kaydırılarak ekran dışına çıktığında) animasyonun arka planda kare üretmesini (Ticker’ı) durdurarak gereksiz CPU, bellek ve pil (sistem kaynağı) tüketiminin önüne geçmektir.

#20. Bir Flutter uygulamasının çalışma zamanı davranışlarını takip etmek için kullanılan araç setinin adı aşağıdakilerden hangisidir?

Cevap: E) DartDev Tools
Açıklama: Flutter’da geliştirilen bir uygulamanın bellek (RAM) tüketimini incelemek, widget ağacının yapısını analiz etmek (Widget Inspector), ağ isteklerini izlemek ve genel performansı çalışma zamanında (runtime) takip edip hata ayıklamak (profiling) için kullanılan resmi tarayıcı tabanlı araç setinin adı Dart DevTools’dur.

Öğrenme Yönetim Sistemi Öğrenci Dostu LOLONOLO bol bol deneme sınavı yapmayı önerir.

Öncesi
TESTi BiTiR, PUANINI GÖR

SONUÇ

Mobil Programlama 2025-2026 Final Soruları

Mobil Programlama Final Konu Özeti

Paket Yönetimi ve Geliştirici Araçları | Durum Yönetimi (State Management) | Düzen (Layout) Mimarisi ve Sliver Yapıları | Platform Entegrasyonları ve Performans

Paket Yönetimi, Test ve Geliştirici Araçları

Flutter projelerinde dışa bağımlılıklar pubspec.yaml dosyası içerisinde `dependencies:` bloğunda tanımlanır. Paketler; pub.dev, GitHub repoları veya lokal dosya sisteminden çekilebilir; doğrudan sıkıştırılmış (ZIP) dosya yoluyla standart paket yönetimi desteklenmez. Uygulamanın çalışma zamanı (runtime) davranışlarını izlemek, bellek tüketimini ve widget ağacını analiz etmek için resmi araç seti Dart DevTools’tur. Birim testlerinde (unit test) canlı web servisleri veya veri tabanlarına olan bağımlılığı ortadan kaldırıp sahte nesneler üretmek için ise Mockito paketi kullanılır. Flutter SDK kurulumlarının ve ortam değişkenlerinin denetimi ise terminale flutter doctor komutu yazılarak gerçekleştirilir.

Durum Yönetimi (State Management)

Uygulama genelinde (birden fazla ekranda) paylaşılan oturum bilgileri, tema veya sepet verileri **App State (Uygulama Durumu)** ile yönetilir. Sadece tek bir widget’ın kendi içindeki anlık değişkenlikleri (örn: basit bir animasyon durumu) için App State kurmak gereksizdir, bu durum yerel (ephemeral) durumdur. Üst (dış) bir widget’ta `setState` ile güncellenen veri, alt (iç) seviyedeki widget’a aktarılırken **içteki widget’ın yapıcı (constructor) fonksiyonu** kullanılır. Provider kütüphanesindeki `Consumer` widget’ı arayüzü güncellerken, değişimi gerekmeyen statik ağaç parçaları `child` parametresine verilerek performans optimizasyonu (rebuild engelleme) sağlanır. Kod üreten kütüphanelerdeki (örn: json_serializable) değişiklikleri eşzamanlı takip etmek için ise *flutter pub run build_runner watch* komutu kullanılır.

Düzen (Layout) Mimarisi ve Sliver Yapıları

Sayfa kaydırıldıkça (scroll) başlığın gizlenmesi veya dinamik efektler kazanması için **Sliver** ailesi (SliverAppBar, SliverList) tercih edilir. Yatay düzlemde (satır halinde) yan yana bileşen dizilimi için **Row**, dikey düzlemde ise **Column** kullanılır. İki boyutlu matris tablosu oluşturan kaydırılabilir ızgara yapısına ise **GridView** denir. Navigator 2.0 (Router API); Router, RouterDelegate, RouterInformationParser ve Page bileşenlerini içerirken; `Scaffold` sadece görsel iskelet yapısıdır, bir navigasyon bileşeni değildir. Formu satır-sütun ızgaralarına bölen ve hücre başına bir kontrol kısıtı getiren yapı **TableLayoutPanel**’dir (WinForms).

Platform Entegrasyonları, Dosya Erişimi ve Performans

Uygulamanın internete çıkabilmesi veya kamera/konum kullanabilmesi için gerekli Android izinleri yerel dosya yolundaki **AndroidManifest.xml** dosyasına yazılmalıdır. Cihazın kalıcı hafızasında basit anahtar-değer (key-value) verilerini saklamak için **shared_preferences** paketi kullanılır. Platformlar arası dosya yolu farklılıklarını soyutlayarak standartlaştıran paket ise **path_provider**’dır. Performansı artırmak için listenin sadece ekranda görünen kısımlarını yükleyen yöntem **Lazy Loading**’dir (örn: ListView.builder). Animasyon denetimindeki **vsync: this** parametresi ise widget ekran dışındayken sistem kaynağı (CPU/pil) tüketilmesini engeller.

@lolonolo_com

Mobil Programlama 2025-2026 Final Soruları

Mobil Programlama 2025-2026 Final Soruları

1. Flutter pubspec.yaml dosyası içerisinde dependencies: altında belirtilen paket bağımlılıkları için bir paketi …… arayabilir.
Aşağıdaki seçeneklerden hangisinin yukarıda verilen boşluğa yazılması uygun değildir?

A) Sıkıştırılmış (Zip) dosyası içerisinde
B) Dosya sisteminde
C) Pub.dev sayfasında
D) Github repolarının alt klasörlerinde
E) Github repoları içerisinde

Cevap: A) Sıkıştırılmış (Zip) dosyası içerisinde

🔒 Bu içerik sadece Reklamsız Üyelere özeldir.

2. Bir Flutter uygulamasının çalışma zamanı davranışlarını takip etmek için kullanılan araç setinin adı aşağıdakilerden hangisidir?

A) Android SDK Manager
B) VisualStudioCode
C) VirtualDeviceManager
D) Development Tools
E) DartDev Tools

Cevap: E) DartDev Tools

🔒 Bu içerik sadece Reklamsız Üyelere özeldir.

3. Flutter’da içeriği sürekli değişebilen veri tabanı ve web servisleri gibi veri kaynakları için unit test işleminin belli bir anlık görüntü üzerine uygulanabilmesi için kullanılan paketin adı nedir?

A) Filter
B) Expresso
C) TurkishCoffee
D) Cappuccino
E) Mockito

Cevap: E) Mockito

🔒 Bu içerik sadece Reklamsız Üyelere özeldir.

4. AnimationController(
vsync: this,)
Yukarıdaki kod parçası Flutter’da bir AnimatedWidget için AnimationController olarak kullanılsın. Buradaki “vsync:this” ifadesi ile aşağıdakilerden hangisi sağlanmaktadır?

A) Animasyonun yenileme hızının telefona eşit olmasını
B) Animasyonun dikey eksende hareket etmesini
C) Animasyonun alt ve üstteki objelerden etkilenmemesini
D) Animasyonun ekran dışında kalan kısmı için sistem kaynağı tüketilmemesini
E) Animasyonun yatay eksende hareket etmesini

Cevap: D) Animasyonun ekran dışında kalan kısmı için sistem kaynağı tüketilmemesini

🔒 Bu içerik sadece Reklamsız Üyelere özeldir.

5. Flutter’da sayfanın üst kısmındaki başlık (AppBar) bölümünün altında bir liste varsa ve sayfa aşağı kaydırıldığında başlık kısmının gizlenmesi isteniyorsa her iki bileşeni de aşağıdaki hangi widget türünden yapmak gerekir?

A) Platinum
B) Gold
C) Silver
D) Dust
E) Bronze

Cevap: C) Silver

🔒 Bu içerik sadece Reklamsız Üyelere özeldir.

6. String sınıfı için genişletme metotları (Extention methods) yazmak istiyorsak bu methodları yazacağımız kod bloğunu aşağıdakilerden hangisi doğru tanımlamaktadır?

A) extension BenimBlogum with String { …. }
B) extension String on BenimBlogum { ….}
C) extension String with BenimBlogum { …. }
D) extension BenimBlogum on String { ….}
E) extension String mixin BenimBlogum { …. }

Cevap: D) extension BenimBlogum on String { ….}

🔒 Bu içerik sadece Reklamsız Üyelere özeldir.

7. “App State” (Uygulama durumu) Flutter’da veri değişiminin bir durum ile uygulama genelinde takibini sağlayan yaklaşımdır.
Aşağıdakilerden hangisi için “App State” yaklaşımını kullanmak gereksiz olacaktır?

A) Bir animasyonlu widgetın animasyonu oynatımında
B) Kullanıcı tercihlerinin değişiminde
C) Kullanıcı oturum açma işlevinde
D) Bir e-ticaret uygulamasında sepet kısmının inşasında
E) Bir sosyal ağ uygulamasının bildirim göstermesinde

Cevap: A) Bir animasyonlu widgetın animasyonu oynatımında

🔒 Bu içerik sadece Reklamsız Üyelere özeldir.

8. uses-permission android:name=”android.per
mission.INTERNET”
Android işletim sisteminde İnternet erişimine sahip olabilmemiz için yukarıdaki kod parçacığı aşağıdaki dosyalardan hangisine yazılmalıdır?

A) AndroidManifest.xml
B) pubspec.yaml
C) Configuration.xml
D) config.ini
E) initialize.json

Cevap: A) AndroidManifest.xml

🔒 Bu içerik sadece Reklamsız Üyelere özeldir.

9. Flutter’da kalıcı hafızaya key-value (anahtar-değer) veri çiftleri şeklinde özel bir formatta veri saklamak için kullanılan özel yapının adı aşağıdakilerden hangisidir?

A) persistence_pair
B) options_file
C) xml_data_storage
D) pubspec_store
E) shared_preferences

Cevap: E) shared_preferences

🔒 Bu içerik sadece Reklamsız Üyelere özeldir.

10. Aşağıdakilerden hangisi Flutter’da dosya sistemindeki farklı klasörlerin yollarını elde etmek için kullanılan paketin adıdır?

A) data_connect
B) directory_search
C) url_luncher
D) file_finder
E) path_provider

Cevap: E) path_provider

🔒 Bu içerik sadece Reklamsız Üyelere özeldir.

11. “Lazy Loading” kavramı aşağıdakilerden hangisinde doğru bir karşılıkla ifade edilmiştir?

A) Yüklenen verinin uygulama açılırken çekilmesi ve sonrasında aynı verinin kullanımı
B) Yüklenen verinin kullanıcıya özgü bir düzenleme içermeden herkes için aynı şekilde çekilmesi
C) Yüklenen verinin sadece ekranda görüntülenecek kısmının çekilmesi
D) Yüklenen verinin sıra tabanlı değil rastgele bir sırada çekilmesi
E) Yüklenen verinin kullanıcıya özgü düzeltme içererek çekilmesi

Cevap: C) Yüklenen verinin sadece ekranda görüntülenecek kısmının çekilmesi

🔒 Bu içerik sadece Reklamsız Üyelere özeldir.

12. Aşağıdakilerden hangisi Flutter’da performans ölçümü için baz alınacak metriklerde ana gruplardan birisinin adı değildir?

A) Enerji Tüketimi
B) Uygulama Boyutu
C) Bellek Kullanımı
D) Kullanılabilirlik
E) Hız

Cevap: D) Kullanılabilirlik

🔒 Bu içerik sadece Reklamsız Üyelere özeldir.

13. Mobil Programlama 2025-2026 Final Soruları (Bahar) 13. SORU
Yukarıdaki kod bloğunun ekran çıktısı aşağıdakilerden hangisidir?

A) 5
B) 3
C) 0
D) null
E) NaN

Cevap: A) 5

🔒 Bu içerik sadece Reklamsız Üyelere özeldir.

14. setState(() {<br>
_active = !_active;});
Yukarıdaki kod parçasında “setState” içerisinde “active” değeri güncellenmiş ve bu değere göre hiyerarşide içteki bir widget arkaplan rengini seçecektir.
Hal böyle iken, setState metodu arayüz bileşenlerinin oluşturduğu ağaçta güncellenecek arayüz bileşeninden daha dış seviyede bulunuyorsa, arayüz güncellenmesinde değişen veri içteki arayüz bileşenlerine (widget) aktarılma yöntemi aşağıdakilerden hangisidir?

A) Hiyerarşide içeride kalan widget’in build fonksiyonuyla
B) Stateful Widget’ın yapıcı(constructor) fonksiyonuyla
C) Stateful Widget’in createState fonksiyonuyla
D) Hiyerarşide içeride kalan widget’ın yapıcı fonksiyonuyla
E) Scaffold widget’ının child parametresine beslenecek fonksiyonla

Cevap: D) Hiyerarşide içeride kalan widget’ın yapıcı fonksiyonuyla

🔒 Bu içerik sadece Reklamsız Üyelere özeldir.

15. Aşağıdakilerden hangisi Navigator 2.0 API ile gelen bileşenlerden biri değildir?

A) Router
B) Scaffold
C) RouterDelegate
D) RouterInformationParser
E) Page

Cevap: B) Scaffold

🔒 Bu içerik sadece Reklamsız Üyelere özeldir.

16. Flutter’da kod üreten kütüphaneler kullanılırsa (örneğin json_serializable) her derleme işleminde kod üretiminin ilgili dosyadaki değişiklikleri takip ederek otomatik yapılması için terminale yazılması gereken komut aşağıdakilerden hangisidir?

A) flutter build run json_serializable watch
B) flutter pub run json serializable build
C) flutter pub run build_runner watch
D) flutter pub run build_runner build
E) flutter pub run json_serializable watch

Cevap: C) flutter pub run build_runner watch

🔒 Bu içerik sadece Reklamsız Üyelere özeldir.

17. Flutter’da provider kütüphanesindeki uygulama seviyesi durum yönetiminde kullamlan Consumer widgetının yapıcı fonksiyonunun builder parametresi, parametreleri context(BuildContext), value(Generic Data Type) ve child(Widget) şeklindedir.
Yukarıdaki child parametresi aşağıdaki amaçlardan hangisi için kullanılmaktadır?

A) Consumer altında güncellenme işleminin başlayacağı noktayı ifade etmek için
B) Widget ağacında güncellenmesi gereken yeri ifade etmek için
C) Consumer altında güncellenmesine gerek olmayan ağacı ifade etmek için
D) Aynı bileşenden birden fazla varsa hangisinin Consumer widget’ı tarafından yönetildiğini bildirmek için
E) Kullanıcı etkileşimlerini yakalayacak widget bileşenlerinin çizilmesi için

Cevap: C) Consumer altında güncellenmesine gerek olmayan ağacı ifade etmek için

🔒 Bu içerik sadece Reklamsız Üyelere özeldir.

18. ….. komutu, Flutter, Android Studio ve diğer IDE yazılımlarının kurulumları ile ilgili denetimleri yaparak kurulumların uygunluğu ile ilgili sonuçları gösterir.
Yukarıda boş bırakılan yere aşağıdakilerden hangisi gelmelidir?

A) Flutter check
B) Flutter doctor
C) Flutter screen
D) Flutter connection
E) Flutter IDE_XML

Cevap: B) Flutter doctor

🔒 Bu içerik sadece Reklamsız Üyelere özeldir.

19. Aşağıdakilerden hangisi bir satırda sağdan sola birden fazla görsel arayüz bileşenini yerleştirmek için kullanılan düzenleyici arayüz bileşenidir?

A) Stack
B) Row
C) Text
D) Column
E) Container

Cevap: B) Row

🔒 Bu içerik sadece Reklamsız Üyelere özeldir.

20. GridView düzenleyici arayüz bileşeni için aşağıdaki tanımlardan hangisi uygundur?

A) İçeriğin üst üste bindirilmesini sağlar.
B) Kaydırılabilir bir ızgara (tablo) görünümü sağlar.
C) Önemli noktaları vurgulamak için köşeleri yuvarlatılmış ve gölge efekti olan bir çerçeve sağlar.
D) İç boşluk(padding), dış boşluk(margin), kenarlık(border), arkaplan rengi(background color) gibi özellikleri atamayı sağlar.
E) Kaydırılabilir bir liste görünümü sağlar.

Cevap: B) Kaydırılabilir bir ızgara (tablo) görünümü sağlar.

🔒 Bu içerik sadece Reklamsız Üyelere özeldir.

Bilgisayar Programcılığı-min

Editor

Editör