Başarılı Örnekler
TikTok, Jetpack Compose ile kod boyutunu% 58 oranında küçülttü ve yeni özellikler için uygulama performansını artırdı
Okuma süresi: 2 dakika
TikTok, geniş kullanıcı tabanı ve yenilikçi özellikleriyle bilinen küresel bir kısa video platformudur. Ekip, kullanıcıları için sürekli olarak güncellemeler, denemeler ve yeni özellikler yayınlamaktadır. TikTok Android ekibi, teknik borcu yönetirken hızı koruma zorluğuyla karşılaştığında Jetpack Compose'u kullanmaya başladı.
Ekip, ürün gereksinimlerinin daha hızlı ve daha yüksek kaliteli bir şekilde yinelenmesini sağlamak istiyordu. Compose'u kullanarak daha az kod yazıp bilişsel yükü azaltarak mühendislik verimliliğini artırmayı ve aynı zamanda daha iyi performans ve kararlılık elde etmeyi amaçlıyordu.
Geliştiricilerin üretkenliğini artırmak için karmaşık kullanıcı arayüzünü kolaylaştırma
TikTok sayfaları genellikle göründüğünden daha karmaşıktır ve çok sayıda katmanlı koşullu şart içerir. Bu karmaşıklık genellikle bakımı zor, en iyi şekilde yapılandırılmamış görünüm hiyerarşileri ve aşırı görünüm yerleştirmeyle sonuçlanıyordu. Bu durum, ölçü geçişlerinin sayısının artması nedeniyle performans düşüşüne neden oluyordu.
Compose, bu yapısal soruna doğrudan bir çözüm sunuyordu.
Ayrıca, Compose'un ölçüm stratejisi, çifte vergilendirmeyi azaltarak performans ölçümünü optimize etmeyi kolaylaştırır.
TikTok'un merkezi tasarım sistemi ekibi, geliştiricilerin verimliliğini artırmak için farklı uygulama özelliklerinde çalışan ekiplere bir bileşen kitaplığı sunuyor. Ekip, Compose'da geliştirmenin basit olduğunu, küçük composable'ların kullanılmasının oldukça etkili olduğunu, koşullu mantık içeren büyük kullanıcı arayüzü bloklarının dahil edilmesinin ise hem kolay hem de minimum ek yükle gerçekleştiğini gözlemledi.
Stratejik taşıma yoluyla ilerleme
TikTok, Jetpack Compose'u stratejik olarak benimseyerek teknik borç konusunda güncel kalmayı başardı ve aynı zamanda kullanıcıları için harika deneyimler oluşturmaya odaklanmaya devam etti. Compose'un koşullu mantığı sorunsuz bir şekilde işleme ve kompozisyonu kolaylaştırma özelliği sayesinde ekip, yeni veya tamamen yeniden yazılmış sayfalarda sayfa yükleme süresini% 78'e kadar azaltmayı başardı. Bu iyileştirme, daha küçük durumlarda% 20-30, tam yeniden yazma ve yeni özelliklerde ise% 70-80 oranında olmuştur. Ayrıca,Görünümler'de oluşturulan aynı özellikle karşılaştırıldığında kod boyutlarını%58 oranında azaltmayı da başardılar. Ekip, öğrendiği birkaç şeyi daha paylaştı:
TikTok ekibinin genel stratejisi, belirli kullanıcı yolculuklarını kademeli olarak taşımaktı. Bu sayede, geçiş yapma, ölçülebilir avantajları onaylama ve daha fazla ekrana ölçeklendirme fırsatı elde ettiler. QR kodu özelliğindeki genel yapıyı basitleştirmek için Compose'u kullanmaya başlayan ekip, iyileşmeleri fark etti. Ekip daha sonra taşıma işlemini giriş ve kayıt deneyimlerini de kapsayacak şekilde genişletti.
Ekip, öğrendiği bazı ek bilgileri paylaştı:
TikTok ekibi, taşıma sırasında performansı kontrol ederken tek bir ViewHolder içindeki öğelerin yerine birçok küçük ComposeView kullanmanın kompozisyon yüküne neden olduğunu tespit etti. Taşıma işlemini, tüm ViewHolder için tek bir ComposeView kullanacak şekilde genişleterek daha iyi sonuçlar elde ettiler.
ViewPager içinde özel yükseklik mantığına ve denemelere göre kullanıcı arayüzünü gizlemek ve göstermek için koşullu mantığa sahip bir Fragment'ı taşırken performans etkilenmedi. Bu durumda, ViewPager'ı Composable'a taşımak, Fragment'ı taşımaktan daha iyi performans gösterdi.
Jun Shen, Compose'un "özellik geliştirme için gereken kod miktarını azaltmasını, test edilebilirliği artırmasını ve teslimatı hızlandırmasını" çok beğeniyor. Ekip, Compose'un kullanımını istikrarlı bir şekilde artırmayı ve uzun vadede tercih edilen çerçeve haline getirmeyi planlıyor. Jetpack Compose, hem geliştirici deneyimlerini hem de üretim metriklerini büyük ölçekte iyileştirmek için güçlü bir çözüm olduğunu kanıtladı.
Jetpack Compose'u kullanmaya başlama
Jetpack Compose 'un ekibinize nasıl yardımcı olabileceği hakkında daha fazla bilgi edinin.
Okumaya devam edin
-
Başarılı Örnekler
Performans gerilemelerinin yeniden üretilmesi zordur. Bu nedenle, gerilemeler mobil geliştiriciler için büyük bir darboğaz oluşturur.
Alice Yuan, Arti Arutiunov, Nikita Ogorodnikov • Okuma süresi: 4 dakika
-
Başarılı Örnekler
FotMob, son 5 yıl içinde Wear OS'te yüklü kullanıcı kitlesi arasında tek günde en büyük artışı yaşadı. Bu artış, günlük ortalamanın 2-3 katıydı. Bu başarının sırrı, kullanıcıların Wear OS uygulamasını doğrudan telefonlarından keşfetmelerine yardımcı olan basit bir cihazlar arası yükleme akışıydı.
Garan Jenkin • Okuma süresi: 3 dk.
-
Başarılı Örnekler
Farkındalık uygulaması Gratitude, günlük tutma, olumlama ve vizyon panoları aracılığıyla tutarlılığı teşvik eder. Uygulama 6 milyondan fazla kez indirildi, 150 bin 5 yıldızlı puan aldı ve 100 milyon günlük girişi kaydedildi.
Amrit Sanjeev, Ash Nohe • Okuma süresi: 3 dk.
Gelişmelerden haberdar olun
Android geliştirmeyle ilgili en son analizleri her hafta gelen kutunuza alın.