🌟
💡
Önemli
💡
Local proje yapmak çok verimli değil, mümkün olduğunca local proje yapmamaya çalış. Temiz başlangıç için coding(flutter) kısmına özen göster.
PM-Project_Manager
- Projeye başlarken bir PM'in neler bilmesi gerektiğini öğren.
- Elimde neler var? Bunları bil.
- Theme "dark and light" kolaylığı.
- UI KIT kolaylığı.
- Neler yapılmış? Araştır.
- https://itsallwidgets.com sitesinden neler yapılmış, hangi uygulamalar ne şekilde oluşturulmuş, widget'lar nasıl yapılmış gör.
- UI tasarımlarını iyi düşünerek projeye başla.
Tasarım-UI
- Uygulamanın 'component' setinin önceden hazırlanması çok önemli. Hazırda dursun.
- Tasarım işinin önceden bitirilmesi faydalı olur.
- Zeplin öğren ;
- Flutter plugin'inini Zepline ekle!
- Styleguide: a. Color palette b. Text Style Catalog c. Spacing and Layout d. Component
- Tasarımcı olarak çalışmalarını Iphone_8'e göre hazırla. Çentiksiz ekranlar tasarım açısından daha uyumlu.
- Ekran ve Widget'lar için en-boy oranlarının nasıl ayarlanması gerektiğini HardwareAndro kanalından öğren.
- Elle en-boy-boşluk vs değerleri verme. Bunun için en kötü yüzdesel mantık kullan ya da MediaQuery ya da pub.dev'den flutter_screenutil paketini kullan.
- Figma'da flowlar kullan. Hangi ekran-buton nereye gidecek belli olsun.
Back-End
- Database işlerini nasıl yapacağız önce buna karar ver?
Database için iki farklı bakış açısı var:
Flutter ile Proje Geliştirme: PM, UI, Backend, Flutter
Ozel Tesekkurler Haluk (dokumanin tamamen onun tarafindan hazirlandi)
💡 Önemli💡 Local proje yapmak çok verimli değil, mümkün olduğunca local proje yapmamaya çalış. Temiz başlangıç için coding(flutter) kısmına özen göster.
PM-Project_Manager
- Projeye başlarken bir PM'in neler bilmesi gerektiğini öğren.
- Elimde neler var? Bunları bil.
- Theme "dark and light" kolaylığı.
- UI KIT kolaylığı.
- Neler yapılmış? Araştır.
- https://itsallwidgets.com sitesinden neler yapılmış, hangi uygulamalar ne şekilde oluşturulmuş, widget'lar nasıl yapılmış gör.
- UI tasarımlarını iyi düşünerek projeye başla.
Tasarım-UI
- Uygulamanın 'component' setinin önceden hazırlanması çok önemli. Hazırda dursun.
- Tasarım işinin önceden bitirilmesi faydalı olur.
- Zeplin öğren ;
- Flutter plugin'inini Zepline ekle!
- Styleguide: a. Color palette b. Text Style Catalog c. Spacing and Layout d. Component
- Flutter plugin'inini Zepline ekle!
- Tasarımcı olarak çalışmalarını Iphone_8'e göre hazırla. Çentiksiz ekranlar tasarım açısından daha uyumlu.
- Ekran ve Widget'lar için en-boy oranlarının nasıl ayarlanması gerektiğini HardwareAndro kanalından öğren.
- Elle en-boy-boşluk vs değerleri verme. Bunun için en kötü yüzdesel mantık kullan ya da MediaQuery ya da pub.dev'den flutter_screenutil paketini kullan.
- Figma'da flowlar kullan. Hangi ekran-buton nereye gidecek belli olsun.
Back-End
- Database işlerini nasıl yapacağız önce buna karar ver?
Database için iki farklı bakış açısı var:
FireBase Kullan
-
Sunucu maliyeti düşük
📉 -
Security derdi yok
✅ -
No-Sql yapısı var
🚩 -
Search embeded olarak gelmiyor. (Elasticsearch ile search işlerini yapabilirsin.)
⚠️
Kendi Backend'ini Yaz
(Node.js - Go - Django - Spring - .Net vb kullan...)
-
Sunucu maliyeti ilk zamanlar yüksek
💲 -
Daha uzun zaman alabilir
⏳ -
Güvenlik işleri zor
🚨 -
Devops tutmak gerekebilir
❌ -
Sunucu - Publishing - Security işlerine biraz hakim olmak gerekli
❌ -
Her şey senin elinde, daha özgür hareket edebilirsin.
✅ -
Seraching embeded değil, doğrudan query yap kullan
✅ -
Firebase'e göre daha zor ama daha işlevsel
✅ -
Büyük projeler için ve kendini geliştirmek için daha faydalı
✅ -
Zaman içinde maliyet avantakı oluşuyor
📉
Flutter
- HardwareAndro kanalındaki videoları izle ve vb10.dev sitesinden "Ana Kısım" bölümünü iyice oku.
- pub.dev sitesindeki önmeli paketleri kullan.
- Localization için: easy_localization kullan.
- State Managment için: mobx kullan
- Kendini geliştir ve bunların üzerine bloc ekle/öğren.
- Animasyonlar için: animations kullan
- Ekran boyutlandırma için: flutter_screenutil kullan
- Routing içi: Veli Hoca'yı bekle, paket yazıyor.
🔥 🐍
- Projeyi temiz tut;
- Unit testleri yaz. (
⁉️ ne olduğunu bilmiyorum ) - Service testleri yaz. (
⁉️ ne olduğunu bilmiyorum ) - Tema yönetimi yap. (Custom tema yaz)
🎨 - Widget'ları modüler ve atomic yap. Widget catalog oluştur.
🧩 - Bir sayfada max. 200 satır kod olsun. Fazlaysa parçala, widget'ları dışarı çıkar.
🔪 - Dart Lang Tutorial'ı mutlaka oku.
📑 - 'Flutter Apperantive' kitabını oku.
📘 - dart.dev'den Effective Dart bölümünü oku.
📄