Google 2018 de Flutter diye bir program geliştirme sistemi çıkardı. Flutter, sistemin adı. Programlama dili Dart. Programlar Dart dilinde yazılıyor ama Flutter library kullanılıyor. Tek program yazıyorsunuz ve o program hem Android telefonları, hem iPhone, hem de Windows sistemlerinde olduğu gibi çalışıyor. Yani her sistem için ayrı program yazmaya gerek yok.
Emekli olduk, bir proje lazım. Çalışırken yaptığım şeylerden daha değişik şeyler yapmak istedim. Flutter öğrenip, app yazıp Apple ve Google app dükkanlarında satarak bir kaç milyon dolar kazanayım dedim. Ne app yazacağım konusunda fazla bir fikrim yok. Önce neyi öğreneyim diye kısa bir araştırma yaptım. Flutter’ı seçtim. Mobil app programlamada en popüler dil daha önce React imiş. Aşağıdaki şekilde, Flutter nasıl React’i yakaladı ve geçti, onu görüyorsunuz.
Flutter eğitimime bir udemy kursu ile başladım: Flutter Dart Complete Guide. Kurs aslında, öğretmenin kolaydan zora doğru bir kaç programı yazarken çektiği ekran videosu. İyi bir başlangıç aslında ders notları falan olmadığı için, insan ne seyrettiğinin çoğunu unutuyor. O yüzden kursun sonundaki, telefonun kamerası nasıl kontrol edilir, app store yüklemeleri nasıl yapılır gibi dersleri atladım. Gerektiği zaman o zamanki güncel versiyon a göre öğrenirim dedim.
Kurs bitince
Kurs sonrası, resmi flutter sayfasındaki izahatlardan kendi kendime gideyim dedim. Kurstan beri Flutter 3 çıktı. Bazı şeyler değişmiştir dedim. Hem de yazılı kılavuzlardan izlemek video izlemekten değişik, yeni şeyler farkedilebilir.
Dün başladım flutter sitesinden. İlk adımları (bilgisayara yükleme ve editor seçimi) zaten kursun ilk dersinde yapmıştım.
Things to do
I tried flutter on a computer different from the one I used for the course.
I tried running flutter doctor. I got Android tool chain errors
cmdline-tools component is missing
Run `path/to/sdkmanager --install "cmdline-tools;latest"`
See https://developer.android.com/studio/command-line for more details.
Android license status unknown.
Run `flutter doctor --android-licenses` to accept the SDK licenses.
See https://flutter.dev/docs/get-started/install/windows#android-setup for more details.
Extensions in VS Code
Flutter support and debugger for Visual Studio Code. v3.42.0
$PATH
Kurstan sonra bilgisayardaki flutter dosyalarını koyduğum yerlerin isimlerini değiştirdim. $PATH parametresindeki eski flutter SDK adresinin yerine bu yenisin koymam gerekti:
Yeni finder penceresi aç ve Ana klasöre git (home folder)
.bashprofile
dosyasını aç ve yeni flutter adresini oraya ekle:
export PATH=$PATH:/Users/Halim/flutter/sdks/flutter/bin
Test Drive
Kılavuzdaki Test Drive örneğini Pixel 5
emulator kullanarak başlattım. Siz de deneyin. Bu programın yaptığı şu: alttaki artı işaretine bastıkça merkezdeki rakam bir artıyor.
VS Code sol yan çubukta flutter amblemi çıkmıştı flutter uzatması yüklendikten sonra. Ona tıklayınca, app şeması çiziliyor. Kullanışlı. Test Drive programının şeması altta:
Yukarıdaki şema çabuk bir göz atma için yeterli olabilir. Daha ayrıntılı bir grafik için Dart Development Tools içindeki Widget Inspector’u kullanın.
Önce
main.dart
dosyasını açRun/Without Debugging
Ondan sonra
SHIFT
+CMD
+P
(ya da
View/Command Palette)
Dart: Development Tools
Detayını görmek istediğiniz widget üstüne tıklayın. Mesela, aşağıda ben Column üstüne tıkladım:
Soldan ikinci panoda, widget satırının da vurgulanmış olduğuna da dikkatinizi çekerim.
İlave Notlar
Kursa ilk başladığımda, emulator1 habire duruyor hata veriyordu. Her seferinde yeniden başlatmam gerekiyordu. Android Studio içinde emulator parametrelerini ayarlamanıza izin veren bir yer var. Oradan emulator iç hafızasını arttırdım. Ondan beri problem yok.
Flutter programı yazmak için iki seçenek var: VS Code ve Android Studio’nun kendi editörü. Ben VS Code kullanmasını bildiğim için onunla devam ettim. Ötekini hiç denemedim. Kurstaki hoca da VS Code kullanıyordu. Şu uzantıları2 VS Code’a katmanız şart:
Dart - Language support and debugger
Flutter - Flutter support and debugger
Bunlara ilaveten, ben bir de Material Icon Theme uzantısını ekledim.
Türkçesi ‘öykünücü’ diyor danıştığım sözlükler. Beğenmedim. Emulator olarak kullanacağım. Siz isterseniz kafanızdan ‘öykünücü’ye çevirin.
Bilgisayar terimlerinin Türkçe karşılığını bilmediklerimi, Hasan Kalyoncu Üniversitesi Bilgisayar Terimler Sözlüğü’ne danışarak buluyorum. Bir kaç sözlük daha var (mesela bir tane TSE’den) ama en kapsamlısı bu sanki. Daha iyisini biliyorsanız, yazın, ona da bakayım.