Dart Genel Bakış ve İleri OOP
30 Questions
1 Views

Choose a study mode

Play Quiz
Study Flashcards
Spaced Repetition
Chat to Lesson

Podcast

Play an AI-generated podcast conversation about this lesson

Questions and Answers

Getter ve Setter'lar ne amaçla kullanılır?

  • Kapsülleme sağlamaktadır.
  • Programın hızını artırmak için.
  • Değişken isimlerini değiştirmek için.
  • Dışarıdan özel değişkenlere güvenli erişim sağlamak için. (correct)

Verilen kodda 'personel.ad' ifadesi neyi temsil etmektedir?

  • Personelin adını değiştirme işlemini.
  • Personel nesnesinin içinde yer alan ad değişkenini. (correct)
  • Hata kontrolü için bir işlevi.
  • Personel nesnesinin oluşturulmasını.

Aşağıdakilerden hangisi kapsülleme ile ilgili bir avantaj değildir?

  • Kodun daha okunabilir ve düzenli olması.
  • Değişkenlere doğrudan erişim sağlanması. (correct)
  • Hata ayıklama süreçlerinin daha etkili olması.
  • Verilerin gizliliği ve güvenliği.

Aşağıdaki kod parçasında hangi kısım, 'getter' işlevini yerine getirir?

<p>personel.ad; (C)</p> Signup and view all the answers

Aşağıdakilerden hangisi bir 'setter' işlevi olarak kabul edilmez?

<p>print(personel.ad); (C)</p> Signup and view all the answers

GetOperation fonksiyonu hangi işlem için bir dönüş değeri olarak geçerli bir fonksiyon döndürür?

<p>Toplama (A), Çarpma (C)</p> Signup and view all the answers

GetOperation fonksiyonu bir geçersiz işlem aldığında hangi değeri döndürür?

<p>0 (A)</p> Signup and view all the answers

Aşağıdaki ifadelerden hangisi doğrudur?

<p>getOperation fonksiyonu girişte verilen işlemi döndüren fonksiyonlar oluşturur. (C)</p> Signup and view all the answers

Aşağıdakilerden hangisi getOperation fonksiyonuna geçerli bir argüman değildir?

<p>divide (C)</p> Signup and view all the answers

GetOperation fonksiyonu hangi durumda bir fonksiyon döndürmez?

<p>Doğru işlem adı girilmediğinde (D)</p> Signup and view all the answers

Yerel değişkenin kapsamı neresidir?

<p>Yalnızca main fonksiyonu (A)</p> Signup and view all the answers

BlockScopedVariable ne zaman geçerlidir?

<p>sadece if bloğunda (A)</p> Signup and view all the answers

Global değişkenin değeri nedir?

<p>100 (B)</p> Signup and view all the answers

Main fonksiyonu dışında hangi değişkenlere erişilebilir?

<p>Yalnızca global değişkenler (A)</p> Signup and view all the answers

AnotherFunction fonksiyonu içinde hangi değişken kullanılabilir?

<p>Global değişken (A)</p> Signup and view all the answers

Mixin'lerin temel amacı nedir?

<p>Ortak işlevsellik eklemek. (D)</p> Signup and view all the answers

Aşağıdakilerden hangisi mixin'lerin kalıtıma göre avantajlarından biridir?

<p>Mixin'ler, birden fazla özellik kazandırabilme esnekliği sunar. (D)</p> Signup and view all the answers

Mixin ile bileşim arasındaki temel fark nedir?

<p>Mixin, bir sınıf olarak tanımlanamaz; bileşim ise sınıf olabilir. (C)</p> Signup and view all the answers

Aşağıdakilerden hangisi mixin kullanmanın bir zararını ifade eder?

<p>Kodun okunabilirliği ve anlaşılabilirliği azalabilir. (A)</p> Signup and view all the answers

Mixin'lerin, bir sınıfa hangi şekilde katkı sağladığı söylenebilir?

<p>Sınıfın birden fazla işlevi aynı anda taşımasına imkân tanımak. (D)</p> Signup and view all the answers

Car sınıfında drive() metodunun çıktısı nedir?

<p>Araç 150 km/s hızla hareket ediyor. (D)</p> Signup and view all the answers

Dog sınıfının yapıcı metodu nasıl çalışır?

<p>Animal sınıfının yapıcısı çağrılır ve köpek havlar. (A)</p> Signup and view all the answers

Shape sınıfındaki draw() metodu ne işe yarar?

<p>Bir şekil çizer. (B)</p> Signup and view all the answers

Circle sınıfındaki draw() metodu ne tür bir işlem gerçekleştirir?

<p>Hem bir daire çizer hem de super.draw() çağrılır. (A)</p> Signup and view all the answers

Car sınıfındaki honk() metodunun çıktısı nedir?

<p>Toyota korna çalıyor: 'Bip Bip!' (D)</p> Signup and view all the answers

Null doğrulama operatörü (!), ne amaçla kullanılır?

<p>Null olabilen bir değişkenin null olmadığını doğrulamak için. (D)</p> Signup and view all the answers

Null farkındalık erişim operatörü (?.) ne işe yarar?

<p>Null olabilen türlerin özelliklerine güvenli erişim sağlar. (C)</p> Signup and view all the answers

Varsayılan değer operatörü (??) ne amaçla kullanılır?

<p>Eğer değişken null ise bir değer sağlamak için. (C)</p> Signup and view all the answers

Aşağıdaki ifadelerden hangisi Null farkındalık operatörleri ile ilgili yanlıştır?

<p>Varsayılan değer operatörü, bir değişkenin değerini değiştirebilir. (D)</p> Signup and view all the answers

Null farkındalık operatörlerinin temel amacı nedir?

<p>Null değerlerle çalışırken oluşabilecek hataları azaltmaktır. (B)</p> Signup and view all the answers

Flashcards

Null-aware Operators

Operators used to handle variables that might be null, preventing errors.

Null check operator

Ensures a variable isn't null before accessing it.

Null-aware access

Safely accesses properties of objects that might be null.

Default value operator

Provides a default value if a variable is null.

Signup and view all the flashcards

Null

Represents the absence of a value.

Signup and view all the flashcards

Encapsulation

Bundling data (attributes) and methods that operate on the data within a class.

Signup and view all the flashcards

Personel Class

A class representing employee information.

Signup and view all the flashcards

Getter Method

A method that provides secure access to an object's attribute.

Signup and view all the flashcards

Setter Method

A method that securely sets a private attribute's value.

Signup and view all the flashcards

Attribute

A characteristic of an object, such as the name or age.

Signup and view all the flashcards

Global Variable

A variable declared outside any function, accessible from anywhere in the program.

Signup and view all the flashcards

Local Variable

A variable declared inside a function, only accessible within that function.

Signup and view all the flashcards

Block Scoped Variable

A variable declared within a block of code (e.g., an if statement), only accessible within that block.

Signup and view all the flashcards

Function access

How variables are accessed from one function to another.

Signup and view all the flashcards

Scope

The region of a program where a variable is accessible and meaningful.

Signup and view all the flashcards

Higher-order function

A function that either takes a function as an argument or returns a function as its result.

Signup and view all the flashcards

Function return

A function that returns another function as its result.

Signup and view all the flashcards

getOperation function

A function that returns different math operations based on the input string.

Signup and view all the flashcards

Lambda expression

A concise way to create anonymous functions, especially useful for short operations. Such as (int a, int b) => a + b

Signup and view all the flashcards

Default return value

A value returned by a function when no specific operation is matched. In this case '0' for invalid operations.

Signup and view all the flashcards

Mixin's Purpose

Mixin's are used to add shared functionalities to different classes without inheritance.

Signup and view all the flashcards

Mixin vs Inheritance

Mixins offer a way to combine features without inheritance's limitations, unlike simple inheritance.

Signup and view all the flashcards

Mixin Structure

A mixin is not a class; it can't have constructors.

Signup and view all the flashcards

Mixin & Composition

Mixins enable flexible reuse, allowing more adaptable code compared to composition with simple functions.

Signup and view all the flashcards

Mixin Use Case

Used when a class needs to share common behaviors across different types of objects.

Signup and view all the flashcards

super keyword in inheritance

Used to call methods or constructors of the parent class from a child class (extends).

Signup and view all the flashcards

@override annotation

Marks a method in a subclass that overrides a method in the superclass.

Signup and view all the flashcards

this keyword

Refers to the current object instance in object-oriented programming (OOP).

Signup and view all the flashcards

Constructor chaining

Using a constructor to call another constructor (super) within the class hierarchy.

Signup and view all the flashcards

Method overriding

A subclass redefines a method of the superclass, keeping the same signature.

Signup and view all the flashcards

Study Notes

Dart Genel Bakış ve İleri Nesne Yönelimli Programlama

  • Dart, Google tarafından geliştirilen açık kaynaklı, genel amaçlı bir programlama dilidir. Mobil, web ve masaüstü uygulamalar için kullanılır. Flutter'ın temel dilidir.
  • Nesne yönelimli bir dildir. Kod, sınıflar ve nesneler ile yapılandırılır.
  • Güçlü tip desteği sunar. Geliştiriciler, türleri açıkça belirleyebilir veya Dart'ın türleri otomatik olarak çıkarmasına izin verebilir.
  • Önceden derleme (AOT) ve anında derleme (JIT) destekler. Performansı artırır.
  • Asenkron programlama async/await sözdizimini kullanarak destekler. Veri alma veya dosya okuma gibi işlemleri yönetmek için uygundur.
  • Çapraz platform uygulamaları geliştirmeyi sağlar. (Android, iOS, web ve masaüstü)

Dart'ın Temel Özellikleri

  • Nesne Yönelimli (Object-Oriented): Kod, sınıflar ve nesneler ile yapılandırılır.
  • Güçlü Tip Desteği: Türleri açıkça belirtebilirsiniz veya Dart otomatik olarak çıkarabilir.
  • Önceden Derleme (AOT) ve Anında Derleme (JIT): Performansı geliştirir.
  • Asenkron Programlama: async/await sözdizimi, sunucudan veri alma vb. işlemler için uygundur.
  • Çapraz Platform Uygulamaları: Android, iOS, web ve masaüstü için kullanılabilir.

Değişkenler (Variables), Veri Türleri (Data Types) ve Kontrol Akışı (Control Flow)

  • var, final, const anahtar kelimeleri kullanılır.
  • int, double, String, bool gibi veri türleri mevcuttur.
  • if-else ifadeleri kontrol akışını yönetir.
  • switch-case yapısı da kontrol akışında kullanılır.

Tür Kontrolü (Type Checking)

  • is ve is! operatörleri, değişkenlerin türünü kontrol etmek için kullanılır.

Tür Dönüştürme (Casting)

  • as operatörü, tür dönüştürme için kullanılır.

Dinamik Tip (Dynamic Typing)

  • dynamic ile çalışma ve her türlü veri türüne izin verebilir.

String Interpolasyonu (String Interpolation)

  • $ simgesi, string içine değerler eklemek için kullanılır.

Döngüler (Loops)

  • for, for-in, while ve do-while döngüleri kullanılabilir.

Üçlü Operatör (Ternary Operator)

  • Koşullu ifadeleri kısaltmak için kullanılır.

Null Güvenliği (Null Safety)

  • ??, ??=, ve ? operatörleri null değerleri kontrol etmek için kullanılır.

Fonksiyonlar (Functions)

  • Fonksiyon tanımlama ve dönüş türleri (return types)
  • Birden fazla dönüş türü olan fonksiyonlar
  • İsimli Parametreler ve Varsayılan Değerler
  • Anonymous fonksiyonları (lambda)

Kapsülleme (Encapsulation)

  • Özel değişkenler _ ile belirtilir.

Mixin'ler (Mixins)

  • Bir sınıfa ekstra işlevsellik eklemek için kullanılır.

Soyut Sınıflar (Abstract Classes)

Arayüzler (Interfaces)

Kalıtım (Inheritance)

Çok Biçimlilik (Polymorphism)

Studying That Suits You

Use AI to generate personalized quizzes and flashcards to suit your learning preferences.

Quiz Team

Description

Bu quiz, Dart programlama dilinin temel özelliklerini ve nesne yönelimli programlama (OOP) prensiplerini keşfetmenizi sağlar. Dart, mobil, web ve masaüstü uygulama geliştirme için güçlü ve esnek bir dil olarak öne çıkmaktadır. Dart'ın sağladığı avantajlar ve yapılandırmaları hakkında bilgi sahibi olun.

More Like This

Use Quizgecko on...
Browser
Browser