11 puan yazan GN⁺ 2024-12-13 | 3 yorum | WhatsApp'ta paylaş
  • Dioxus 0.6 yayınlandı

    • Dioxus, web, masaüstü ve mobil uygulamaları tek bir kod tabanıyla oluşturmayı sağlayan Rust tabanlı bir çatı
    • Hedefi Flutter'dan daha iyi bir çatı olmak
    • Full-stack web desteği ve tip güvenli sunucu/istemci iletişimine odaklanırken, hızlı performans ve geliştirici deneyimini iyileştirmeyi amaçlıyor
    • Bu 0.6 sürümü, Dioxus'u daha kolay kullanılır hale getirmeye, geliştirici deneyimini geliştirmeye ve hataları düzeltmeye odaklandı
  • Başlıca özellik iyileştirmeleri

    • Mobil simülatör desteği: Android ve iOS simülatörleri ile cihazlarda uygulama çalıştırma özelliği eklendi.
    • Sihirli hot reloading: Biçimlendirilmiş dizeler, öznitelikler ve iç içe rsx!{} için hot reloading desteği.
    • Etkileşimli CLI: Dioxus CLI, yeni bir UX ile yeniden yazılarak kullanılabilirlik iyileştirildi.
    • Satır içi stack trace: WASM panic'leri ve log'lar doğrudan terminalde yakalanıyor.
    • Yerel sunucu fonksiyonları: Masaüstü ve mobil uygulamalar için satır içi sunucu RPC desteği.
  • Geliştirici deneyimi iyileştirmeleri

    • Toast ve yükleme ekranı: Web uygulaması geliştirme sırasında yeni toast ve yükleme ekranları eklendi.
    • Otomatik tamamlama iyileştirmeleri: RSX için otomatik tamamlama özelliği büyük ölçüde geliştirildi.
    • Varlık sisteminin kararlı hale gelmesi: Yerel uygulamalara entegre bağlantı tabanlı varlık sistemi kararlı hale getirildi.
    • Streaming HTML: Sunucudan istemciye suspense ve error boundary akışı desteği.
    • SSG ve ISG: Statik site üretimi ve artımlı statik yeniden üretim desteği.
    • Hata işleme: Etkinlik işleyicilerinde, görevlerde ve bileşenlerde ? kullanarak hata işleme.
    • Meta öğeleri: Belge özelliklerini ayarlamak için yeni Head, Title, Meta ve Link öğeleri eklendi.
    • Eşzamanlı prevent_default: Tüm platformlarda olayları eşzamanlı işleme.
    • onresize olay işleyicisi: IntersectionObserver olmadan öğe boyutunu izleme.
    • onvisible olay işleyicisi: IntersectionObserver olmadan öğe görünürlüğünü izleme.
    • WGPU entegrasyonu: Dioxus'u WGPU yüzeyleri ve alt pencerelerin üzerine overlay olarak render etme.
    • dx bundle: Web, iOS ve Android için tam dx bundle desteği.
    • json modu: Üçüncü taraf araçlar ve CI/CD boru hatlarında kullanılmak üzere CLI mesajlarını JSON olarak çıktı verme.
    • Yeni şablonlar: Çapraz platform uygulamalar için üç yeni başlangıç şablonu.
    • Gece yapıları için eğitimler ve rehberler: Dioxus 0.6 ve sonrası için yeni eğitimler ve rehberler.
    • İkili dosya yamalama prototipi: Yeni saf Rust hot reloading motorunun prototipi.
  • Sürüm bilgileri

    • Dioxus 0.6, 350'den fazla pull request'in birleştirildiği ve yüzlerce sorunun çözüldüğü en büyük sürüm.
    • Hot reloading, otomatik tamamlama ve varlık paketleme kalitesini önemli ölçüde iyileştirmeyi hedefliyor.
    • Dioxus CLI'ı daha sağlam ve kullanımı daha kolay hale getirmeyi amaçlıyor.
    • Mobil araçları dioxus CLI içine yerleşik hale getirerek birinci sınıf mobil destek sunmayı hedefliyor.
  • Etkileşimli komut satırı aracı

    • Dioxus 0.6, tamamen yenilenmiş bir CLI deneyimi sunuyor.
    • Yeni CLI; canlı ilerleme çubukları, animasyonlar, etkileşimli filtre sistemi ve log seviyesini gerçek zamanlı değiştirme gibi özellikleri destekliyor.
  • Android ve iOS desteği

    • Dioxus 0.6 ile dioxus CLI, dx serve --platform ios/android komutunu yerel olarak destekliyor.
    • Mobil platformlar için birinci sınıf destek sağlanıyor; Android ve iOS simülatör hedefleri masaüstü ile aynı özellikleri destekliyor.
  • Hot reloading motorunun yenilenmesi

    • Dioxus'un hot reloading motorunda büyük iyileştirmeler yapıldı.
    • Biçimlendirilmiş dizeler, iç içe rsx blokları, bileşen öznitelikleri ve basit Rust ifadeleri için hot reloading desteği sunuluyor.
  • Otomatik tamamlama özelliğinin yenilenmesi

    • rsx! {} için otomatik tamamlama özelliği büyük ölçüde geliştirildi.
    • Rust-analyzer ile entegrasyon iyileştirilerek daha iyi bir otomatik tamamlama deneyimi sağlandı.
  • Satır içi WASM stack trace ve tracing entegrasyonu

    • WASM uygulamaları için tracing entegrasyonu sunularak panic'ler ve log'lar yakalanıp terminale gönderiliyor.
  • Toast ve yükleme ekranı

    • Web uygulaması geliştirme sırasında derleme ilerlemesini gösteren bir yükleme ekranı ve derleme durumunu gösteren toast'lar sunuluyor.
  • Full-stack masaüstü ve mobil

    • Yerel uygulamalar ile sunucu fonksiyonları entegre edilerek masaüstü ve mobil hedeflerde sunucu fonksiyonlarının varsayılan olarak çalışması sağlanıyor.
  • Manganis varlık sisteminin kararlı hale gelmesi

    • Yeni varlık sistemi Manganis kararlı hale getirildi ve çeşitli hata ile performans sorunları giderildi.
  • Suspense ve HTML akışı

    • Eşzamansız UI için yeni bir temel primitive olan suspense boundary tanıtıldı.
    • Dioxus full-stack, her suspense boundary'yi sunucudan akış halinde göndererek sayfanın tamamının yüklenmesini beklemeden parçaları iletebiliyor.
  • Statik site üretimi ve ISG

    • Statik site üretimi ve artımlı statik üretim desteği ile SEO iyileştiriliyor ve kullanıcı yükleme süreleri azaltılıyor.
  • Belge öğeleri: Title {}, Link {}, Stylesheet, Meta {}

    • HTML belge nesnesiyle etkileşime girebilen özel öğeler sunularak ek JavaScript olmadan belge özellikleri ayarlanabiliyor.
  • Soru işareti ile hata işleme

    • Element, artık Option yerine Result kullandığı için Rust'ın yaygın hata işleme modeli bileşenlerde kullanılabiliyor.
  • Eşzamanlı prevent_default

    • Tüm olay işlemenin eşzamanlı yapılabilmesi sağlanarak dioxus_prevent_default özniteliğine artık gerek kalmıyor.
  • onresize ve onvisible olay işleyicileri

    • Öğe boyutu ve görünürlüğünü izleyebilen özel işleyiciler sunularak JavaScript olmadan zengin etkileşimler kurulabiliyor.
  • Hibrit WGPU overlay

    • Dioxus masaüstünün "alt pencere" özelliği sayesinde mevcut pencerelere yerel Dioxus uygulamaları overlay olarak entegre edilebiliyor.
  • Web, iOS ve Android paket desteği

    • dx bundle için web ve mobil desteği eklenerek farklı hedeflere paketleme yapılabiliyor.
  • CI / CLI için JSON çıktısı

    • CLI için JSON çıktı modu sunularak log'ların JSON formatında alınması sağlanıyor.
  • Yeni başlangıç şablonları

    • Çapraz platform uygulamalar için üç yeni başlangıç şablonu sunuluyor.
  • Gece dokümantasyonu, eğitimler ve yeni rehberler

    • Dokümantasyon ve eğitimler kapsamlı biçimde yenilenerek temel konular ele alınıyor ve dağıtıma odaklanılıyor.
  • Yerinde ikili dosya yamalama önizlemesi

    • Rust koduna hot reloading eklemek için deneysel çalışmalar yürütülüyor.
  • Küçük değişiklikler

    • Sistem tepsisi desteği, özel olay döngüsü, dioxus-document ve dioxus-history ayrımı, eval API'nin sadeleştirilmesi gibi çeşitli küçük değişiklikler içeriyor.
  • 0.5'ten 0.6'ya yükseltme

    • Bazı API değişiklikleri var, ancak çoğu durumda kolayca düzeltilebiliyor.
  • Sonuç

    • Bu sürüm, birçok sorunu çözüp çeşitli özellikleri geliştirerek Dioxus 0.6'ı şimdiye kadarki en olgun sürüm haline getiriyor.
    • Bundan sonra odak, yeni özelliklerden çok eğitim videoları hazırlama, dokümantasyon yazma, hata düzeltme, performans iyileştirme ve toplulukla iş birliği üzerine olacak.

3 yorum

 
devsepnine 2024-12-17

Son zamanlarda Tauri kullanıyordum, bunu da bir denemek gerekir gibi görünüyor.

 
GN⁺ 2024-12-13
Hacker News yorumları
  • Bir kullanıcı, yeni sürümü deneme deneyimini paylaşarak proje oluşturmak için cargo install kullandığını ve dx serve çalıştırdığını, ancak derleyici hatası aldığını belirtiyor. Standart Rust iş akışı kullanılmış olsaydı hata ayıklamanın daha kolay olacağını düşünüyor. v tuşuna basarak ayrıntılı loglar etkinleştirilebiliyor, ancak ek olarak net bir bilgi sunulmuyor.

  • Başka bir kullanıcı, her 6 ayda bir Rust GUI framework'lerini denediğini, ancak demo veya playground indirirken hata oluştuğunu söylüyor. Uzun vadeli yatırım kararının dikkatle verilmesi gerektiğini düşünüyor.

  • Dioxus'un, JavaScript'i minimum düzeyde kullanırken çapraz platform özellikleri sunabilen tek web platform teknolojisi aracı olduğu belirtiliyor. WGPU rendering stack'teki ilerlemeler olumlu değerlendiriliyor.

  • Dioxus'un ekosisteminin zayıf olduğu ve component library bulunmadığı belirtiliyor. Virtual DOM konusunda da yeterli güven olmadığı ifade ediliyor. Rakip Leptos takip ediliyor ve kullanılıyor.

  • Sunucu tarafında Dioxus kullanan bir kullanıcı, component yazma biçimini ve geliştirici deneyimini oldukça iyi bulduğunu söylüyor.

  • Lustre'ı keşfedip benimsedikten sonra, The Elm Architecture dışında başka bir şey kullanmayı düşünmediğini belirten bir kullanıcı var. Rust'un Iced framework'ü ile bir senaryo editörü prototipi geliştiriyor ve System76'nın Cosmic'i bununla inşa etmesi nedeniyle güven duyuyor.

  • Yeni teknoloji framework'ünün en umut verici olanı olduğu, başarılı olursa diğer tüm framework'lerin yerini alabileceği belirtiliyor. Performansa odaklanıyor ve Rust güvenlik ile performans için temel sağlıyor.

  • Dioxus venture capital aldığı için, geleceğini buna bağlamadan önce dikkatli olunması gerektiği söyleniyor. Telif devri veya CLA gerekip gerekmediği ya da katkı sağlayanlardan kaçının maaş aldığı konusunda yeterli bilgi olmadığı belirtiliyor.

  • Gönderi başlığındaki kontrastın sayfa arka planıyla daha iyi uyum sağlayacak şekilde iyileştirilebileceği öneriliyor. Qt'nin şu anki konumu, erişilebilirlik durumu ve HiDPI ekranları ele alış biçimiyle ilgili karşılaştırma soruluyor. C++ ve Python dışındaki diller için kaliteli binding'lerin eksik olduğu, daha iyi binding'ler ve araçlar olsaydı daha popüler olacağı belirtiliyor.

  • Yeni hot reloading özelliği etkileyici bulunuyor; diğer Rust web framework'lerinde UI güncellemelerini beklemenin büyük bir sorun olduğu söyleniyor.