CodeBlanks Logo Icon CodeBlanks

FFI nedir?

dart:ffi ile C kütüphanelerini çağırmayı öğrenirsin.

FFI nedir?

dart:ffi, Dart kodundan C kütüphanelerini çağırmanı sağlar. C ile yazılmış fonksiyonları Dart'a bağlayarak interop sağlar; bridge kodu olmadan doğrudan çağrı yapılır.

import 'dart:ffi';

// C'de: int topla(int a, int b);
typedef NativeTopla = Int32 Function(Int32 a, Int32 b);
typedef DartTopla = int Function(int a, int b);

NativeFunction ve typedef

C fonksiyon imzasını Dart tarafında iki typedef ile tanımlarsın: biri NativeFunction için C tarafı (Int32, Pointer), diğeri Dart tarafı (int). Bu iki tip lookupFunction tarafından köprülenir.

Uygulama FFI typedef'leri tanımla

NativeTopla = Int32 Function(Int32 a, Int32 b) ve DartTopla = int Function(int a, int b) typedef'lerini tanımla. main'de 'ffi hazir' yazdır.

Başlangıç kodu

main.dart
import 'dart:ffi';

// NativeTopla typedef'i tanımla (Int32 dönüşlü Function)
// DartTopla typedef'i tanımla (int dönüşlü Function)

void main() {
  // 'ffi hazir' yazdır
}

Örnek çözüm

main.dart
import 'dart:ffi';

typedef NativeTopla = Int32 Function(Int32 a, Int32 b);
typedef DartTopla = int Function(int a, int b);

void main() {
  print('ffi hazir');
}

Beklenen çıktı

ffi hazir

Soru ve cevaplar

Dersin sorularını cevaplarıyla birlikte inceleyebilirsin. Kendini denemek istersen dersi interaktif olarak çöz.

1 dart:ffi ne sağlar?

  • Veritabanı açmayı
  • Dart'tan C kütüphanelerini çağırmayı Doğru cevap
  • HTTP istekleri yapmayı
  • Widget çizmeyi

Açıklama: dart:ffi, C fonksiyonlarını Dart'a bağlayarak doğrudan çağrı yapmayı sağlar; HTTP, widget veya veritabanı ffi'nin işi değildir.

2 dart:ffi'yi içe aktar

Soru
import 'dart:____';
Cevap
import 'dart:ffi';

Açıklama: dart:ffi paketi C interop için kullanılır; dart:io dosya/socket, dart:async Future/Stream, dart:core ise temel tipler içindir.

3 FFI eşleşmeleri

Kavram Anlamı
dart:ffi C interop kütüphanesi
C Sistem programlama dili
interop Diller arası köprü
NativeFunction C tarafı imzası

Uzman seviye bölümündeki tüm dersler