BeautyPlus uygulaması Android Mimari Bileşenleri ile okunabilirliği% 15 artırdı
Koleksiyonlar ile düzeninizi koruyun
İçeriği tercihlerinize göre kaydedin ve kategorilere ayırın.
2013'te kullanıma sunulan BeautyPlus, makyaj sanatçıları, fotoğrafçılar ve sıradan cep telefonu kapanları tarafından kullanılan dünyanın en popüler fotoğraf düzenleme uygulamalarından biridir. Her ay yaklaşık 50 milyon kullanıcı selfie'lerini, resimlerini ve videolarını düzenlemek ve bunlara filtre eklemek için uygulamayı kullanıyor. Çin'deki Xiamen Meitu Technology Co., Ltd.'de (özellikle selfie seti arasında popüler olan) uygulama, yalnızca birkaç basit sürükleme ve tıklamayla cilt tonunu düzeltme ve gülümsemeleri iyileştirmeden zayıflama özelliklerine ve hava fırçalama ile lekelere kadar her şey için kullanılmaktadır.
Şirket, uygulamayı sık sık güncellediğinden çok sayıda geliştiriciye ihtiyaç duyuyor. Ancak zamanla temel mimari tek tiplik ve netlikten yoksun kaldı. Hızla ilerleyen ekip, bir yandan yaşam döngüsü yönetimini basitleştirirken, diğer yandan eşzamansız kullanıcı arayüzünün yenilenmesiyle ilgili sorunları çözerken, ortak çalışan geliştiricilerinin işlerinden haberdar olmasını sağlayan bir yola ihtiyaç duyuyordu.
Şekil 1: BeautyPlus'ta örnek fotoğraf düzenleme oturumu
Ne yaptılar?
Android Mimari Bileşenleri, geliştiricilerin uygulama kodunu kısa ve öz, kararlı hale getirmek ve yeni mühendislerin işe alıştırma sırasında okumalarını daha kolay hale getirmek için ihtiyaç duydukları araçları sağladı.
BeautyPlus geliştiricilerinin kullanmaya başladığı bileşenlerden biri de etkinlik ve parça güncellemeleriyle mantık işlemeyi kolaylaştıran ViewModel. ViewModel, kullanıcı arayüzüyle ilgili verileri diğer uygulama bileşenlerinin yaşam döngüsüne uygun şekilde, yaşam döngüsüne duyarlı bir şekilde depolamak ve yönetmek için tasarlanmıştır.
Ayrıca, kullanıcı arayüzünün veri durumuyla eşleşmesini sağlamak için yaşam döngüsüne duyarlı olan ve gözlemlenebilir bir veri sahibi sınıfı olan LiveData bileşenini de kullandılar. Ekip, bu Android Mimari Bileşenlerinin herhangi bir sorunla karşılaşmadan kullanımının kolay olduğunu gördü ve avantajları kısa sürede fark etti.
Sonuçlar
Android Mimari Bileşenleri sayesinde BeautyPlus uygulaması anında %5 daha yalın bir koda sahip ve% 15 daha okunabilir hale geldi. Ayrıca, mimari daha birleşik şekilde geliştiricilerin zamandan ve emekten tasarruf etmesini sağlarken yeni geliştiricilerin hızla adapte olmasını kolaylaştırdı. Ayrıca daha az bellek sızıntısı yaşandı, verilerin yenilenmesi kolaylaştı ve geliştiricilerin eşzamansız kullanıcı arayüzünü güncelleme konusunda artık endişe duyması gerekmiyordu.
Kıdemli geliştirme müdürü Zheng Songyin, "BeautyPlus için ViewModel ve LiveData'yı kullandığımızda kod daha kısa ve okunabilir
hale geldi ve kodun mimarisi birleştirildi" diyor. "Uygulamanın yaşam döngüsü güvenli bir şekilde
yönetildi ve kararlılık da iyileşti."
Bu sayfadaki içerik ve kod örnekleri, İçerik Lisansı sayfasında açıklanan lisanslara tabidir. Java ve OpenJDK, Oracle ve/veya satış ortaklarının tescilli ticari markasıdır.
Son güncelleme tarihi: 2018-05-05 UTC.
[[["Anlaması kolay","easyToUnderstand","thumb-up"],["Sorunumu çözdü","solvedMyProblem","thumb-up"],["Diğer","otherUp","thumb-up"]],[["İhtiyacım olan bilgiler yok","missingTheInformationINeed","thumb-down"],["Çok karmaşık / çok fazla adım var","tooComplicatedTooManySteps","thumb-down"],["Güncel değil","outOfDate","thumb-down"],["Çeviri sorunu","translationIssue","thumb-down"],["Örnek veya kod sorunu","samplesCodeIssue","thumb-down"],["Diğer","otherDown","thumb-down"]],["Son güncelleme tarihi: 2018-05-05 UTC."],[],[],null,["# BeautyPlus app increases readability by 15% with Android Architecture Components\n\nIntroduced in 2013,\n[BeautyPlus](https://play.google.com/store/apps/details?id=com.commsource.beautyplus)\nis one of the world's most popular photo-editing apps, used by makeup artists,\nphotographers, and ordinary mobile phone snappers. About 50 million people use\nthe app every month to edit and add filters to their selfies, pictures, and\nvideos. Developed by China's Xiamen Meitu Technology Co., Ltd., the app (which\nis particularly popular with the selfie set) is used for everything from\ncorrecting skin tone and brightening smiles to slimming features and airbrushing\naway blemishes, all with a few simple drags and clicks.\n\nGiven the company makes frequent updates to the app, it requires a large number\nof developers. But, over time, the underlying architecture grew to lack\nuniformity and clarity. The fast-moving team needed a way to keep their\ncollaborating developers in the loop while simplifying lifecycle management and\nresolving issues related to refreshing the asynchronous UI. \n**Figure 1:** A sample photo-editing session in BeautyPlus\n\nWhat they did\n-------------\n\n[Android Architecture Components](/topic/libraries/architecture) provided the\ntools that the developers needed to make the app's code concise, stable, and\neasier for new engineers to read as they onboard.\n\nAmong the components the BeautyPlus developers began using is\n[`ViewModel`](/topic/libraries/architecture/viewmodel), which enables easier\nlogic processing with activity and fragment updates. `ViewModel` is designed to\nstore and manage UI-related data in a lifecycle-conscious way that respects the\nlifecycle of other app components.\n\nThey also leveraged the [`LiveData`](/topic/libraries/architecture/livedata)\ncomponent, an observable data-holder class that's also lifecycle-aware to help\nensure that the UI matches the data state. The team found these Android\nArchitecture Components easy to use without encountering any problems---and the\nbenefits were quickly noticeable.\n\nResults\n-------\n\nThanks to Android Architecture Components, the BeautyPlus app immediately had 5%\nleaner code and was 15% more readable. The architecture was also more unified,\nsaving developers time and effort, and making it easier for new developers to\nget up to speed quickly. In addition, there were fewer memory leaks, refreshing\ndata became easier, and developers no longer had to worry about updating the\nasynchronous UI.\n\u003e \"When we used ViewModel and LiveData for BeautyPlus, the code became more\n\u003e concise and readable, and the architecture of the code was unified,\" says\n\u003e Zheng Songyin, senior development manager. \"The operation of the lifecycle of\n\u003e the app was managed safely, and the stability improved, too.\"\n\nGet started\n-----------\n\nAndroid Architecture Components is open to all developers. [Get\nstarted with Android Architecture Components](/topic/libraries/architecture)."]]