Mobil Uygulama Yapmayan Kalmasın! | Flutter #1

kondanta

Katılımcı Üye
29 Tem 2017
910
0
CNCF

Merhaba arkadaşlar, bugün sizlere çapraz platform(cross platform) mobil uygulama geliştirme aracı olan Flutter'dan bahsedeceğim. Flutter, Google'ın geçtiğimiz aralıkta versiyon 1.0.0'ını duyurduğu bir cross platform geliştirme SDK'sı. Mobil, desktop ve web platformlarında da çalıştırmayı planlamaktalar. Ben bugün daha çok mobil kısmı üzerinde duracağım.

Ilk olarak neden Flutter? sorusuna kısa bir cevap verecek olursam, React-Native'in sebep olduğu overheadden arındırılmış, platformun (android - iOS) türüne göre native(ARM) compile edilmiş bir executable sunuyor bize(Dil olarak Androidde Java-Kotlin desteği sunarken, iOS da Objective-C ve Swift desteği sunmakta). Bu şekilde native geliştirilmiş bir uygulama gibi yüksek performas sağlayabiliyor kullanıcısına. Buna ek olarak, "Hot Reload" ve "Hot Restart" özellikleri sayesinde çalıştırdığımız kodu sürekli derlemek(compile etmek) yerine hot reload sayesinde hızlı bir şekilde değiştirdiğimiz kodu canlı bir şekilde önümüzde görebiliyoruz. Extra bir not düşeyim; Flutter 60 FPS garantisi vermekte geliştirilen uygulamalar için. Henüz release yapmadığım için evet böyle diyemeyeceğim ne yazık ki ama, duyduğum kadarıyla 60 FPS cidden sağlıyor imiş.

Ilk hedef kurulum. Öncelikle flutter.io adresine gidiyoruz.


0K7da0.png


Akabinde sağ yukarıdan Get started diyip, kendimize uygun işletim sistemine göre indirme işlemimizi gerçekleştiriyoruz. Ben linux üzerinden anlatım yapacağım. Çok aşırı istek gelirse Windows için de anlatım yapar, konuyu editlerim. NOT: Bilgisayarınızda Android SDK'nın hali hazırda kurulu olduğunu varsayıyorum. Android SDK nasıl kuruluru bu konu içerisinde anlatmayacağım. Indirme işlemi sonrası, tar dosyasını "tar xf" komutuyla extract edip bulunmasını istediğimiz yere move ediyoruz.
yyS7U2.png


Daha sonrasına dosyanın bulunduğu dosya dizinini $PATH dizinine ekliyoruz. Başarılı bir şekilde kurulumu yaptık. $PATH'e ekleme işlemini resimdeki line ile yapabilirsiniz.


Py5W7W.png


Şimdi kurulumumuzu test etmek için "flutter doctor" komutunu çalıştırıyoruz. İlk kez çalıştırdığınız da biraz zaman alacaktır, işlem bitene kadar bekleyin.


78xCMb.png


Eveet, gördüğümüz üzere, kurulum tamamlandı. Şimdi örnek bir proje yaratıp, onu çalıştıralım.

xd01f6.png

Kx0MHd.png

Şimdi gelelim nasıl bir kod oluştuğunu görmeye. Oluşturduğumuz proje klasörün girip: "cd lib" komutunu yazıyoruz. Önümüze "main.dart" adlı bir dosya gelecek. "Dart da neyin nesi?" diyebilirsiniz. Yazının bu noktasına kadar bahsetmemiştim lakin Flutter "Dart" adı verilen bir programlama dili ile çalışmakta. Java ile Javascriptin birleşiminden oluşmuş gibi görünen ve öğrenmesi bir hayli basit bir programlama dili. Bu main dosyasını açtığımızda bir sürü yorum satırı ve anlam veremediğiniz bir sürü kod parçacığı göreceksiniz. Bütün yorum satırları silindiğinde gördünüz şey bir ekrana sığacak kadar uzunlukta bir driver olacak. Not: Widget nedir, ne değildir gibi açıklamalar bu konunun scopeu dışında olduğu için değinmeyeceğim. Gerekli gördüğüm açıklamaların hepsini kodların üzerine yorum satırı olarak ekledim. Takıldığınız bir şey olursa konu altına yorum olarak ekleyin ya da Google :)

5UUOfe.png


SW43Ub.png


zLdzWz.png

Son olarak çalışıp çalışmadığını test etmek için terminalimize "flutter run" yazıyoruz. Benim geliştirme yaptığım extra bir telefonum bulunmakta. Siz bu işlem için android/iOS emülatörü kullanabilirsiniz.
8xJIc3.png

 
Üst

Turkhackteam.org internet sitesi 5651 sayılı kanun’un 2. maddesinin 1. fıkrasının m) bendi ile aynı kanunun 5. maddesi kapsamında "Yer Sağlayıcı" konumundadır. İçerikler ön onay olmaksızın tamamen kullanıcılar tarafından oluşturulmaktadır. Turkhackteam.org; Yer sağlayıcı olarak, kullanıcılar tarafından oluşturulan içeriği ya da hukuka aykırı paylaşımı kontrol etmekle ya da araştırmakla yükümlü değildir. Türkhackteam saldırı timleri Türk sitelerine hiçbir zararlı faaliyette bulunmaz. Türkhackteam üyelerinin yaptığı bireysel hack faaliyetlerinden Türkhackteam sorumlu değildir. Sitelerinize Türkhackteam ismi kullanılarak hack faaliyetinde bulunulursa, site-sunucu erişim loglarından bu faaliyeti gerçekleştiren ip adresini tespit edip diğer kanıtlarla birlikte savcılığa suç duyurusunda bulununuz.