Xamarin.Forms - Hot Reload Preview (Cikti)
-
Aranizda Xamarin.forms yazan var mi bilmiyorum ama varsa, hot reload bir kac ay önce xamarin.forms'a geldi.
Hot Reload kisaca, debugging moddaki projenizi re-build etmeden görseller icin yapilan degisikligi telefon ya da emulator/simulator'de real-time (yaklasik) olarak görmektir.
Flutter'da bu özellik cok faydali ve cok fazla zaman kazandiriyor. Sonunda Microsoft da bir adim atti ve preview olarak Hot Reload'i yayinladi. Benim de yeni deneme sansim oldu.
Hot reload sadece xamarin.forms ile birlikte degil wpf ve uwp'de de calismaktadir. Hepsi xaml bazli uygulama türleri oldugu icin böyle. Ve xaml'da yapilan degisikligi cihazinizda görmek icin sadece kaydetmeniz (ctrl+s) yeterli.
Yaptigim kücük testlerde suanlik iyi görünüyor. Cogu zaman kücük bir degisiklik icin build+deploy icin dakikalarca beklemek gerekiyordu, hatta günde 100 kere rebuild ettigimi varsayarsak baya bir zaman kazandirmis oldu.
Hot Reload suan preview ancak VS'nin preview versiyonunu yüklemenize gerek yok. VS 2019 16.3 üzeri versiyonlarda
Tools -> Options-> Xamarin-> Hot Reload üzerinden Enable yapabilirsiniz

Diger dikkat edilmesi gereken sey, projenizde her hangi bir linkleme olmamasi gerek. Ya da SDK Assemblies only secili olmasi gerek. Projenin ayarlarindan Android Options kisminda

Daha sonra Xaml dosyasinda yaptiginiz degisikliklerden sonra ctrl+s ye basarsaniz, sag al kösede su sekil bir bilgilendirme göreceksiniz

Suanlik iyi gidiyor her sey, bugün ögleden sonra denenedim en az 30 dk hizlandirdi islerimi :)
Detaylar icin buraya bakabilirsiniz
https://docs.microsoft.com/en-us/xamarin/xamarin-forms/xaml/hot-reload
unbalanced tarafından 28/Eki/19 17:08 tarihinde düzenlenmiştir -
hocam xamarinde sürekli sorunlar yaşadığım için bıraktım. şu an ne durumda ?
sorunlar derken, çalışan projenin bir anda çalışmaktan vazgeçmesi, abuk subuk hatalar vs vs.
-
hocam ben xamarin ile yaklasik 5 yildir proje gelistiriyorum (tabi sürekli degil ama tanisip proje gelistirmem 5 seneden fazla oldu). Xamarin.ios, xamarin.android ve xamarin.forms ücü ile de gelistirdim gelistiriyorum. O yüzden gelisim süreclerini iyi biliyorum diyebilirim.
Ilk baslarda (microsoft henüz satin almamisti) acayip buglar vardi, sürekli güncelleme cikariyordu xamarin, buglarin bir cogunun cözümü yoktu, kendimiz bir sekilde cözüyorduk.. Ama zaman gectikce daha stabil hale geldi. Daha sonra microsoft satin aldi ve daha cok yerli yerine oturdu. Ancak hala hatalar söz konusu ve cok hantal (gelistirme asamasinda). Xamarin.forms, xamarin.ios ve android'e göre daha kolay bir tasarim sagliyor Xaml araciligi ile. Zaten binding kullanirsan ve MVVM yapisiyla ilerlersen bir sorun yok.
Ancak flutter ile tanistiktan sonra yine xamarin.forms da cok hantal oldugunu düsündüm. Suan xamarin.forms ile cok karisik bir proje gelistiriyoruz, daha dogrusu ben tek kaldim simdilik diger arkadas isten cikti amazon'da calismaya basladi, proje benim üstüme kaldi. Her seyiyle ilgilenmek zorundayim ve bugleri düzeltirken en cok yoran sey debugging tarafi. Kücük bir degisiklik yapip sonucu görmek icin baya bekliyorum, suan hot reload ile kullaniyorum ve tasarim tarafinda baya bir hizlandirdi. Ama ben flutter ile yapsaydim bu projeyi, eminim tasarim tarafinda en az 3-5 kat daha cabuk bitirebilirdim. Ancak cpp projeleri de kullandigimiz icin flutter'in böyle calisabilecegini düsünmüyorum.
Sonuc olarak; eger kendin icin projeler gelistimek istiyorsan ve cross platform istiyorsan flutter ile devam etmeni tavsiye ederim. Kariyerin icin, bir firmada calismak icin ögreniyorsan xamarin iyi bir secenek olabilir ama türkiye'de ne kadar xamarin isteniyor, ne kadar swift-obj-c yazilimcisi ne kadar java android developer isteniyor fikrim cok yok.
Ek olarak; xamarin'de cok fazla bug kalmadi. iOS tarafina bir süredir bakmadim, ama xamarin.forms ve xamarin.android'de cok nadir buglarla karsilasiyoruz.
-
xamarinle uğraşmak istiyorum bende ancak tasarım giydirme işini gözümde çok büyüyor. Şu korkuyu atsam aslında güzel olacak native cross platform olarak çok geliştiğini görüyorum. Bu konuda iyi bi eğitim seti var mı özellikle türkçe bildiğiniz?
-
hocam tasarim olayi cok sikinti degil, biraz wpf ile basla ise, benzer seyler.. Xamarin.forms icin maalesef hic kaynak bilmiyorum, ben uygulayarak ögrendim ama zaten wpf tabanim oldugu icin pek zorluk olmadi. O yüzden xamarin.forms yerine önce wpf ile basla cünkü daha cok kaynak bulabilirsin. Sonra xamarin.forms ile daha kolay olur.
Xaml'in mantigini anla, binding'i anla ve mvvm pattern'i anla. Bunlari anlarsan gerisinde bir sey yok.
not: cross platform icin xamarin.forms'a bakman lazim hocam..
unbalanced tarafından 28/Eki/19 21:14 tarihinde düzenlenmiştir -
https://github.com/jsuarezruiz/xamarin-forms-goodlooking-UI
üstteki linkte harika templateler var bunları giydirmeyi başarsam, kodlama işi kolay zaten api yapıyor bi çok şeyi. hea bide bildirim alma işi var sanırım oda karışık :)
-
paylastigin link iyiymis hocam :) ben tasarim icin telerik kullandim, cok da fena olmadi :) Ama sen sahsi projelerin icin ögrenmek istiyorsan flutter'a bak hocam. Kariyerin icin ise xamarin mantikli olabilir sadece.
