Gizem Malçok

Turkish documentation of the State Management, Route Management and Dependency M…

…anagement files edited.
# Dependency Management
- [Dependency Management](#dependency-management)
- [Örnek Metodlar](#instancing-methods)
- [Örnek Metodlar](#örnek-metodlar)
- [Get.put()](#getput)
- [Get.lazyPut](#getlazyput)
- [Get.putAsync](#getputasync)
- [Get.create](#getcreate)
- [Metodların/Sınıfların örneklerinin kullanılması](#using-instantiated-methodsclasses)
- [Alternatif bir instance tanımlama](#specifying-an-alternate-instance)
- [Metodlar arasındaki farklılıklar](#differences-between-methods)
- [Metodların/Sınıfların örneklerinin kullanılması](#metodların/sınıfların-örneklerinin-kullanılması)
- [Alternatif bir instance tanımlama](#alternatif-bir-instance-tanımlama)
- [Metodlar arasındaki farklılıklar](#metodlar-arasındaki-farklılıklar)
- [Bindings](#bindings)
- [Bindings class](#bindings-class)
- [BindingsBuilder](#bindingsbuilder)
- [SmartManagement](#smartmanagement)
- [Nasıl değiştirilir?](#how-to-change)
- [Nasıl değiştirilir?](#nasıl-değiştirilir)
- [SmartManagement.full](#smartmanagementfull)
- [SmartManagement.onlyBuilder](#smartmanagementonlybuilder)
- [SmartManagement.keepFactory](#smartmanagementkeepfactory)
- [Nasıl bindings yapılır?](#how-bindings-work-under-the-hood)
- [Notlar](#notes)
- [Nasıl bindings yapılır?](#nasıl-bindings-yapılır)
- [Notlar](#notlar)
Get, yalnızca 1 satır kodla, Provider context'i olmadan, inheritedWidget olmadan Bloc veya Controller ile aynı sınıfı almanızı sağlayan basit ve güçlü bir dependency manager'a (bağımlılık yöneticisine) sahiptir:
... ... @@ -175,7 +175,7 @@ Get.create<S>(
## Metodların/Sınıfların örneklerinin kullanılması
Çok sayıda rotada gezindiğinizi ve kontrol cihazınızda geride bırakılan bir veriye ihtiyacınız olduğunu hayal edin, Sağlayıcı veya Get_it ile birleştirilmiş bir durum yöneticisine ihtiyacınız olacak, değil mi? Get ile değil. Denetleyiciniz için "find" seçeneğini sormanız yeterlidir, herhangi bir ek bağımlılığa ihtiyacınız yoktur:
Çok sayıda rotada gezindiğinizi ve kontrol cihazınızda geride bırakılan bir veriye ihtiyacınız olduğunu hayal edin, Sağlayıcı veya Get_it ile birleştirilmiş bir durum yöneticisine ihtiyacınız olacak, değil mi? Get ile değil. Controller için "find" seçeneğini sormanız yeterlidir, herhangi bir ek bağımlılığa ihtiyacınız yoktur:
```dart
final controller = Get.find<Controller>();
... ... @@ -240,7 +240,7 @@ print(instance is OtherClass); //true
`permanent` ve `fenix` arasındaki temel fark, örneklerinizi nasıl depolamak istediğinizdir.
Güçlendirme: Varsayılan olarak GetX, kullanımda değilken örnekleri siler.
Bunun anlamı: Ekran 1'de controller 1 varsa ve ekran 2'de controller 2 varsa ve ilk rotayı stackten kaldırırsanız (`Get.off()` veya `Get.offNamed()` kullanıyorsanız) denetleyici 1 kaybolur kullanımı silinecektir.
Bunun anlamı: Ekran 1'de controller 1 varsa ve ekran 2'de controller 2 varsa ve ilk rotayı stackten kaldırırsanız (`Get.off()` veya `Get.offNamed()` kullanıyorsanız) controller(denetleyici) 1 kaybolur kullanımı silinecektir.
Ancak `permanent:true` kullanmayı tercih etmek istiyorsanız, bu geçişte controller kaybolmaz - bu, tüm uygulama boyunca canlı tutmak istediğiniz hizmetler için çok yararlıdır.
... ... @@ -408,5 +408,5 @@ Hangisi sizin için daha uygunsa onu kullanın.
- Birden çok Bindings kullanıyorsanız SmartManagement.keepFactory KULLANMAYIN. Bindings olmadan veya GetMaterialApp'in initialBinding'inde bağlantılı tek bir Binding ile kullanılmak üzere tasarlanmıştır.
- Bindings kullanmak tamamen isteğe bağlıdır, isterseniz belirli bir denetleyiciyi kullanan sınıflarda `Get.put()` ve `Get.find()` kullanabilirsiniz.
- Bindings kullanmak tamamen isteğe bağlıdır, isterseniz belirli bir controller(denetleyiciyi) kullanan sınıflarda `Get.put()` ve `Get.find()` kullanabilirsiniz.
Ancak, Services veya başka bir abstract class ile çalışıyorsanız, daha iyi bir organizasyon için Bindings'i kullanmanızı öneririm.
... ...
- [Rota Yönetimi (Route Management)](#route-management)
- [Nasıl kullanılır?](#how-to-use)
- [Adlandırılmış rotalar olmadan navigasyon](#navigation-without-named-routes)
- [Nasıl kullanılır?](#nasıl-kullanılır)
- [Adlandırılmış rotalar olmadan navigasyon](#adlandırılmış-rotalar-olmadan-navigasyon)
- [Adlandırılmış rotalarla navigasyon](#adlandırılmış-rotalarla-navigasyon)
- [Verileri adlandırılmış Rotalara gönder](#send-data-to-named-routes)
- [Dinamik URL bağlantıları](#dynamic-urls-links)
- [Verileri adlandırılmış rotalara gönder](#verileri-adlandırılmış-rotalara-gönder)
- [Dinamik URL bağlantıları](#dinamik-url-bağlantıları)
- [Middleware](#middleware)
- [Bağlamsız(Context) Navigasyon](#navigation-without-context)
- [Context olmadan Navigasyon](#context-olmadan-navigasyon)
- [SnackBars](#snackbars)
- [Dialogs](#dialogs)
- [BottomSheets](#bottomsheets)
- [İç İçe Navigasyon (Nested Navigation)](#nested-navigation)
- [Nested Navigasyon](#nested-navigasyon)
# Rota Yönetimi (Route Management)
# Route Management
Konu rota yönetimi olduğunda Getx için gereken her şeyin tam açıklaması budur.
... ... @@ -391,7 +391,7 @@ class Third extends StatelessWidget {
}
```
## Bağlamsız(Context) Navigasyon
## Context olmadan Navigasyon
### SnackBars
... ... @@ -519,7 +519,7 @@ Get.bottomSheet(
);
```
## İç İçe Navigasyon (Nested Navigation)
## Nested Navigasyon
Flutter'ın iç içe gezinmesini daha da kolaylaştırın.
İçeriğe ihtiyacınız yoktur ve navigasyon yığınınızı kimliğe(ID) göre bulacaksınız.
... ...
* [State Management(Durum Yönetimi)](#state-management(durum-yönetimi))
+ [Reactive State Manager(Reaktif Durum Yöneticisi)](#reactive-state-manager(reaktif-durum-yöneticisi))
- [Advantages(Avantajlar)](#advantages(avantajlar))
* [State Management](#state-management)
+ [Reactive State Manager](#reactive-state-manager)
- [Avantajlar](#avantajlar)
- [Maksimum Performans:](#maksimum-performans)
- [Reaktif bir değişken bildirmek](#reaktif-bir-değişken-bildirmek)
- [Reaktif bir state'e(duruma) sahip olmak kolaydır.](#reaktif-bir-state'e(duruma)-sahip-olmak-kolaydır)
- [Reaktif bir state'e sahip olmak kolaydır.](#reaktif-bir-state'e-sahip-olmak-kolaydır)
- [Görünümdeki değerleri kullanmak](#görünümdeki-değerleri-kullanmak)
- [Yeniden oluşturulacak koşullar](#yeniden-oluşturulacak-koşullar)
- [Nerede .obs kullanılabilir](#nerede-.obs-kullanılabilir)
- [Nerede .obs kullanılabilir](#nerede-obs-kullanılabilir)
- [Listeler hakkında not](#listeler-hakkında-not)
- [Neden .value kullanmak zorundayım?](#neden-.value-kullanmak-zorundayım?)
- [Neden .value kullanmak zorundayım?](#neden-value-kullanmak-zorundayım?)
- [Obx()](#obx)
- [Çalışanlar](#Çalışanlar)
+ [Simple State Manager(Basit Durum Yöneticisi)](#simple-state-manager(basit-durum-yöneticisi))
- [Avantajlar](#avantajlar)
+ [Simple State Manager](#simple-state-manager)
- [Avantajlar](#avantajlar-1)
- [Kullanımı](#kullanımı)
- [Controller'lar nasıl çalışır](#controller'lar-nasıl-çalışır)
- [Artık StatefulWidget'lara ihtiyacınız olmayacak](#artık-statefulwidget'lara-ihtiyacınız-olmayacak)
- [Neden var](#neden-var)
- [Kullanmanın diğer yolları](#kullanmanın-diğer-yolları)
- [Unique IDs(Benzersiz Kimlikler)](#unique-ids(benzersiz-kimlikler))
- [Unique IDs-Benzersiz Kimlikler](#unique-ids-benzersiz-kimlikler)
+ [İki state managers ile Mixing](#İki-state-managers-ile-mixing)
+ [GetBuilder vs GetX vs Obx vs MixinBuilder](#getbuilder-vs-getx-vs-obx-vs-mixinbuilder)
# State Management(Durum Yönetimi)
# State Management
GetX, diğer State Management'ler (Durum Yöneticileri) gibi Streams veya ChangeNotifier kullanmaz. Niye? GetX ile android, iOS, web, linux, macos ve linux için uygulamalar oluşturmaya ek olarak, Flutter/GetX ile aynı syntax(sözdizimine) sahip server(sunucu) uygulamaları oluşturabilirsiniz. Yanıt süresini iyileştirmek ve RAM tüketimini azaltmak için düşük işletim maliyetiyle çok fazla performans sunan düşük gecikmeli çözümler olan GetValue ve GetStream'i oluşturduk. State Management (Durum Yönetimi) de dahil olmak üzere tüm kaynaklarımızı oluşturmak için bu temeli kullanıyoruz.
... ... @@ -40,7 +40,7 @@ GetX ile iç içe geçmiş widget'lara bile saygı duyulur. Obx listview'inizi i
Mevcut state management'lerin(durum yöneticilerin) çoğu (hepsi değilse de) ekranda yeniden oluşturulur.
## Reactive State Manager(Reaktif Durum Yöneticisi)
## Reactive State Manager
Reaktif programlama birçok insanı yabancılaştırabilir çünkü karmaşık olduğu söylenir. GetX reaktif programlamayı oldukça basit bir şeye dönüştürür:
... ... @@ -114,7 +114,7 @@ final isOpen = false.obs;
void onButtonTap() => isOpen.value=false;
```
### Advantages(Avantajlar)
### Avantajlar
**GetX()**, güncellenen değişkenler üzerinde **ayrıntılı** kontrole ihtiyacınız olduğunda size yardımcı olur.
... ... @@ -194,7 +194,7 @@ final myMap = <String, int>{}.obs;
final user = User().obs;
```
##### Reaktif bir state'e(duruma) sahip olmak kolaydır.
##### Reaktif bir state'e sahip olmak kolaydır.
Bildiğimiz gibi, _Dart_ şimdi _null safety_ doğru gidiyor.
Şu andan itibaren hazırlıklı olmak için, _Rx_ değişkenlerinizi her zaman bir **initial value** ile başlatmalısınız.
... ... @@ -690,7 +690,7 @@ GetBuilder<Controller>(
```
### Unique IDs(Benzersiz Kimlikler)
### Unique IDs-Benzersiz Kimlikler
Bir widget'ın controller'ını güncellemek istiyorsanız GetBuilder onlara benzersiz kimlikler atayabilirsiniz:
... ...