Adım Adım Flutter ile Mobil Uygulamalar Yazılım Geliştirme – Mobil Uygulama Geliştirme – Android/IOS Oğuz Rakıcı  - Kitap
Adım Adım

Flutter ile Mobil Uygulamalar

Yazılım Geliştirme – Mobil Uygulama Geliştirme – Android/IOS

3. Baskı, 
Ekim 2024
Kitabın Detayları
Dili:
Türkçe
Ebat:
16x24
Sayfa:
368
Barkod:
9789750296383
Kapak Türü:
Karton Kapaklı
Fiyatı:
400,00
24 saat içerisinde temin edilir.
Diğer Baskılar
2. baskı
Temmuz 2022
395,00
195,00 (%51)
Kitabın Açıklaması
Kitap, gördüğü yoğun ilgi sonucunda, son sürüme göre güncellenmiş 3. baskısını yapmıştır.
Flutter, Google ekibi tarafından geliştirilen ve yazılım dünyasına güçlü bir giriş yapan bir yazılım teknolojisidir. Google ekibi tarafından sürekli güncellenmeye devam ettiği için, mobil programlama alanında üst sıralarda kendine yer bulmuştur. Flutter teknolojisinin en büyük avantajı, hem kullanımı kolay olması hem de aynı anda iOS, Android, Windows, Linux, masaüstü ve web platformlarına uygulama geliştirmeye olanak sağlamasıdır.
Bu kitapta, Dart programlama dili, Flutter teknolojisi ve uzak veri tabanı olan Firebase'e yer verilmiştir. Genel olarak bir programlama dilinin etkin olabilmesi için veri tabanıyla bağlantı kurulması çok önemlidir. Bu sayede veriler güvenli bir şekilde saklanabilir ve bu veriler üzerinde istenilen işlemler yapılabilir. Programlama dünyasında bu işlemlere CRUD işlemleri (kayıt, listeleme, güncelleme, silme) denilmektedir. Firebase sayesinde, telefon hafızası kullanılmadan bilgiler bulut sisteminde saklanmaktadır. Böylece telefon hafızasında gereksiz kullanımın önüne geçilmiş olur.
Ayrıca, e-mail ve şifre ile giriş/çıkış işlemleri ve Google hesabıyla giriş/çıkış işlemleri de bu kitapta detaylı şekilde anlatılmıştır. Fotoğraf ve videoları veri tabanında saklama ve istenildiğinde veri tabanından silme işlemleri de kitapta kapsamlı olarak ele alınmıştır.
Bu kitap sayesinde, programlama bilgisi olmayan kişiler bile rahatlıkla programlama öğrenip mobil uygulamalar geliştirme konusunda kendilerini geliştirebilirler.
Kitapta toplamda 125 uygulama ve 2 büyük proje (E-ticaret sitesi ve Firebase bağlantılı Öğrenci Takip Programı) bulunmaktadır.
Kitabın Konu Başlıkları
.
Dart Programlama
.
Null Safety
.
Fonksiyon Yapıları
.
Asenkron Programlama
.
Nesne Yönelimli Programlama
.
Widget Yapısı ve Temel Widgetlar
.
Durumsuz Widget – Stateless Widget
.
Durumlu Widget – Statefull Widget
.
Liste Widgetları
.
Form Widgetları
.
Uzak Veritabanı – Firebase
.
E–Mail ve Şifre ile Giriş
.
Çıkış İşlemleri
.
Google Hesabı ile Giriş
.
Çıkış İşlemleri
.
Şifre Sıfırlama
.
Kayıt Yapma, Listeleme, Güncelleme, Silme İşlemleri (CRUD)
.
Fotoğraf Yükleme
.
Silme İşlemleri
Yorumlar
Kitabın İçindekileri
Önsöz 
5
Bölüm 1
DART PROGRAMLAMA
1. DART PROGRAMLAMA DİLİ 
15
1.1 Değişkenler 
15
1.1.1 Değişken tanımlama 
15
1.1.2 Değişken Türleri 
16
1.1.3 Metin (String) Veri Tipinin Sayı Veri Tiplerine Dönüşümü 
17
1.1.4 Sayı Veri Tiplerinin Metin (String) Veri Tipine Dönüşümü 
18
1.1.5 Değişkenlerde İşlemler 
18
1.2 Listeler 
20
1.2.1 Listelerin Metotları 
22
1.3 Maps – Sözlükler 
23
1.4 Akış Kontrolleri – Karar Yapıları 
26
1.4.1 if–else Yapısı 
26
1.4.2 İç İçe if Yapısı 
27
1.4.3 Tek Satırda Kontrol İfadeleri –Ternary 
27
1.5 Döngüler 
28
1.5.1 For Döngüsü 
28
1.5.2 While Döngüsü 
30
1.5.3 forEach Döngüsü 
30
1.6 Null Safety 
31
1.7 Fonksiyonlar 
33
1.7.1 Geriye Değer Döndürmeyen Fonksiyonlar 
34
1.7.2 Parametreli Fonksiyonlar 
34
1.7.3 Geriye Değer Döndüren Fonksiyonlar 
35
1.7.4 İsimli Parametre Alan Fonksiyonlar 
36
1.7.5 Şişman Oklu Fonksiyonlar 
36
1.7.6 Anonim Fonksiyonlar 
36
1.7.7 Asenkron Fonksiyonlar 
37
1.7.8 get ve set Fonksiyonları (Değer Döndüren ve Değer Alan Fonksiyonlar) 
39
1.8 Hata Yakalama Bloğu / Try – Catch 
39
1.9 Sınıf & Nesneler / Class & Objects 
40
1.9.1 Yapıcılar – Constructor 
41
1.9.2 “this” Komutu Kullanımı 
42
1.9.3 Yapıcıya İsimli Parametre İle Değer Gönderme 
43
1.9.4 Kalıtım 
44
1.9.5 Overriding 
45
1.9.6 İsimli Yapıcılar (named constructor) 
46
1.9.7 Factory Yapıcılar (Yönlendirici Yapıcılar) 
48
1.9.8 Composition – Bir Sınıftan Başka Bir Sınıfa Erişim 
50
Bölüm 2
FLUTTER
2. FLUTTER 
53
2.1 Flutter’ın Genel Özellikleri 
53
2.2 Widgetlar 
53
2.2.1 Renk Widgetları – Color Widget 
54
2.2.2 Metin Widgetları– Text Widget 
55
2.2.2.1 Text 
55
2.2.2.2 textDirection 
55
2.2.2.3 textAlign 
55
2.2.2.4 TextDecoration.lineThrough 
56
2.2.2.5 style 
56
2.2.3 Zengin Text Widget – RichText Widget 
56
2.2.3.1 TextSpan 
56
2.2.3.2 recognizer 
56
2.2.4 Merkeze Alma Widget’ı – Center Widget 
58
2.2.5 Sütun Widget’ı – Column Widget 
58
2.2.5.1 crossAxisAlignment 
58
2.2.5.2 mainAxisAlignment 
58
2.2.6 Satır Widget’ı – Row Widget 
59
2.2.6.1 crossAxisAlignment 
59
2.2.6.2 mainAxisAlignment 
59
2.2.7 Wrap Widget 
59
2.2.7.1 spacing 
59
2.2.7.2 runSpacing 
59
2.2.7.3 alignment 
59
2.2.8 Flexible Widget 
60
2.2.9 Kutu Widget – Container Widget 
60
2.2.9.1 decoration: BoxDecoration 
60
2.2.10 Boşluk Ayarlamaları ve Boyutlandırma Widgetları 
62
2.2.10.1 Margin Widget 
62
2.2.10.2 Padding Widget 
63
2.2.10.3 IntrinsicHeight Widget 
63
2.2.10.4 mainAxisSize Widget 
64
2.2.10.5 Expanded Widget 
64
2.2.10.6 width: double.infinity Widget 
64
2.2.10.7 height: MediaQuery.of(context).size.height Widget 
64
2.2.10.8 SizedBox Widget 
64
2.2.10.9 SafeArea (Güvenli Alan) Widget 
65
2.2.10.10 RotatedBox Widget 
65
2.2.10.11 İnfinity Widget 
65
2.2.10.12 MediaQuery Widget 
65
2.2.10.13 Fit Widget 
66
2.2.10.14 En Boy Oranlama – AspectRatio Widget 
73
2.2.11 Görüntü İşlem Widgetları – Image Widget 
74
2.2.11.1 Image.asset 
74
2.2.11.2 Image.network 
78
2.2.11.3 CircleAvatar 
79
2.2.11.4 FadeInImage 
80
2.2.11.5 FlutterLogo 
80
2.2.11.6 Text Placeholder 
81
2.2.11.7 AspectRatio 
81
2.2.11.8 Image.file 
81
2.2.12 Durumsuz Widget – Stateless Widget 
81
2.2.13 Durumlu Widget – Statefull Widget 
83
2.2.13.1 State Yapısı 
83
2.2.13.2 initState() Kullanımı 
84
2.2.13.3 dispose() kullanımı 
84
2.2.13.4 SetState Yapısı 
84
2.2.14 Buton Widgetlar 
85
2.2.14.1 floatingActionButton 
85
2.2.14.2 Elevated Button 
90
2.2.14.3 ElevatedButton.icon 
92
2.2.14.4 TextButton 
94
2.2.14.5 IconButton 
94
2.2.14.6 ButtonBar 
95
2.2.14.7 OutlinedButton 
97
2.2.15 Nesnelere Tıklama Özelliği Kazandırma 
100
2.2.15.1 GestureDetector Widget 
100
2.2.15.2 Inkwell Widget 
102
2.2.16 Diyalog Pencereleri 
105
2.2.16.1 AlertDialog Widget 
105
2.2.16.2 SimpleDialog Widget 
107
2.2.16.3 SnackBar Widget 
109
2.2.17 Kırpma İşlemleri 
111
2.2.17.1 ClipRect Widget 
111
2.2.17.2 ClipRRect Widget 
113
2.2.17.3 ClipOval Widget 
115
2.2.17.4 ClipPath Widget 
116
2.2.18 Liste Kutucuğu – ListTile Widget 
118
2.2.19 Card Widget 
120
2.2.20 Flutter Liste Yapıları 
122
2.2.20.1 ListView Widget 
122
2.2.20.2 ListView.Builder Widget 
124
2.2.20.3 Çok Boyutlu Listeler – GridView Listeler 
126
2.2.20.3.1 GridView.Count Widget 
126
2.2.20.3.2 GridView.extent Widget 
129
2.2.20.3.3 GridView.builder Widget 
132
2.2.20.4 Özel Listeler – CustomScrollView Widget 
134
2.2.20.4.1 SliverAppBar 
134
2.2.21 Yandan Açılan Çekmece – Drawer Widget 
146
2.2.22 Sayfalar Arası Geçiş – Navigator Widgetları 
148
2.2.22.1 Navigator.push Widget 
148
2.2.22.2 Navigator.pop Widget 
149
2.2.22.3 Navigator.pushment Widget 
153
2.2.22.4 Navigator.popUntil Widget 
153
2.2.22.5 Navigator.pushAndRemoveUntil Widget 
153
2.2.22.6 Rotalar – Routes 
154
2.2.22.7 Navigator.pushNamed Widget 
154
2.2.23 Genişletebilir Kutucuklar – Expansiontile Widget 
159
2.2.24 Üst Sekmeler – TabBar ve TabBarView Widget 
162
2.2.24.1 TabBar 
162
2.2.24.2 TabBarView 
163
2.2.24.3 TabPageSelector 
163
2.2.25 Alt Sekmeler – Bottom Navigation Bar Widget 
166
2.2.26 Kaydırılabilir Sayfalar – PageView Widget 
171
2.2.27 Yığın İşlemleri – Stack Widget 
174
2.2.28 Form İşlemleri 
176
2.2.28.1 Form Widget 
176
2.2.28.2 TextFormField Widget 
177
2.2.28.3 CheckBoxListTile Widget 
185
2.2.28.4 RadioListTile Widget 
189
2.2.28.5 SwitchListTile Widget 
193
2.2.28.6 Slider Widget 
195
2.2.28.7 DropdownButton Widget 
198
2.2.29 Tarih ve Saat İşlemleri 
209
2.2.29.1 Sistem Saati – DateTime.now() Widget 
209
2.2.29.2 Tarih Seçme – ShowDatePicker Widget 
211
2.2.29.3 Saat Seçme – ShowTimePicker Widget 
211
2.2.30 Sayfayı Yenileme – RefreshIndicator Widget 
214
E–TİCARET SİTESİ UYGULAMASI 
216
Bölüm 3
FIREBASE VERİ TABANI
3. UZAK VERİTABANI İŞLEMLERİ – FIREBASE 
241
3.1 Firebase Projesi Oluşturma 
241
3.2 Veri Tabanını Oluşturma 
246
3.3 Veri İşlemleri – Firestore Database 
246
3.3.1. Tüm Kayıtları Listeleme 
248
3.3.2. Tek Bir Veri Listeleme 
251
3.3.3. Bilgileri Sıralayarak Listeleme – orderBy 
253
3.3.4. Sorgu Oluşturarak Bilgilere Ulaşmak 
255
3.3.5. Çoklu Sorgu Oluşturarak Bilgilere Ulaşmak 
257
3.3.6. Gecikmeli Gelen Veriler – FutureBuilder 
259
3.3.7. Canlı Yayınla Gelen Veriler – Stream Builder 
262
3.3.8 Veri Tabanına Kayıt Ekleme 
265
3.3.9 Kayıt Güncelleme 
269
3.3.10 Kayıt Silme 
271
3.4 Giriş/Çıkış İşlemleri – Authentication Servisi 
273
3.4.1. Anonim (Anonymous) Giriş İşlemleri 
273
3.4.2. Sağlayıcı – Provider 
274
3.4.3. E–mail ve Şifre ile Giriş/Çıkış İşlemleri ve Şifre Sıfırlama 
278
3.4.4. Google Hesabı ile Giriş Yapma 
294
3.5. Fotoğraf ve Video Depolama – Storage Servisi 
299
3.5.1 Fotoğraf Makinesiyle Fotoğraf Çekmek 
301
3.5.2 Galeriden Fotoğraf Seçmek 
301
3.5.3 Storage Servisinden Fotoğraf/Video Silme 
301
ÖĞRENCİ İŞLEMLERİ MOBİL UYGULAMASI 
308
Kaynakça 
359
Kavramlar Dizini 
361