Mobil Mimarinin Enleri⭐

Beyza Karadeniz
HardwareAndro
Published in
6 min readJul 21, 2020
Mobile Design

Herkese Merhaba 🙋‍♀️

Mobil uygulamalar geliştirirken, mimari ve tasarımın tipik bir kurumsal uygulamaya nazaran temel olarak farklı olduğu birçok önemli zorluk vardır. Zayıf mimari kararların aşağı yönlü etkisini azaltmak için bu mobil mimari konularını geliştirme sürecinin başlarında dikkatli bir şekilde değerlendirmek gerekir. Bu uygulamalardan bazıları mobil olmayan uygulamaların geliştirilmesi için de anlamlı olsa da, çoğu mobil platformda geliştirilirken daha kolay anlaşılacaktır.

Mimari planlamanın temel amacı, uygulamanın yazılım mimarisi (front-end ve back-end) için yapıcı ve ayrılmaz bir plan oluşturmaktır. Bu aşamada, geliştiriciler uygulamanın gerçekleşmesi ve çalışabilirliğinin sürdürülmesi için en verimli teknik ve teknolojik çözümlere karar verir. Kararlar; çeşitli faktörlere, ürünün doğası ve işlediği veriler, tasarım çözümlerinin karmaşıklığı, verilerin kaydedilmesi gerekliliği ve oturum açma işlevselliğinin kullanılabilirliği gibi çeşitli faktörlere bağlıdır.

Bu yazımda beraber mobil uygulamanın olmassa olmaz maddelerini ve mobil dünyanın genel mimarisini inceleyeceğiz. Peki nedir bu maddeler?🧐

🔹Onboarding & Splash

🔹Login & Security

🔹Cache & Network

🔹Dynamic Style

🔹Localization

🔹Safe State

🔹Publish & Store

✅APP TEST!

✅UNIT TEST!

Onboarding & Splash

Onboarding (tanıtım ekranı), kullanıcı uygulamanızı ilk defa açtığında beliren ve uygulamanın kullanımıyla ilgili bilgi veren ekranıdır. Bir başka deyişle kullanıcının uygulamayla tanışma evresidir. Uygulamanızın yeni özellikler veya büyük değişiklikler oluşunca kullanılır.

Splash (Geçiş ve Kontrol Ekranı), uygulamaların kullanıcının harekete geçmeden (ilk ekran görüntülenme) önce uygulamanızın bazı temel verileri sunucudan yüklemesi gerekir bu nedenle splash (geçiş ve kontrol ekranı) büyük öneme sahiptir.

Login & Security

Giriş ekranları (Login), kullanıcıların uygulamaya kolayca erişebilmesi için basit ve ilgi çekici olmalıdır. Uygulamanın türüne bağlı olarak, bu bir kullanıcı adı, şifre ve e-posta adresi olabilir. Uygulamayı ilk kez kullanan kişiler için her zaman kaydolma seçeneği olmalıdır.

Güvenlik katmanı (Security) için işleri hızlı tutarken ve sorunsuz çalışması gerekir. Şifrelerin en az sekiz karakter, bir büyük harf, bir sayı ve bir sembol içermesini zorunlu kılınmalı, kullanıcıların giriş yaptıkları tüm cihazları görmesine izin verilmeli.

Cache & Network

Önbellek (Cache) bir uygulamayı açtığınızda ihtiyaç duyacağı bilgileri ön bellek dosyalarında saklar. Ön bellek dosyaları genellikle sizin haberiniz olmadan yönetilir ve telefonunuzun daha hızlı çalışmasını sağlar. Amacı sıkça kullandığınız uygulamaları hızlandırmak olan ön belleği sıkça temizlemek, verimlilik açısından pek doğru olmayacaktır. Android, kullanılmayan dosyaları temizlemeye yönelik iyi çalışan bir mekanizmaya sahip.

Kişisel hesap, kullanıcıyı ağın sanal topluluğuna dahil eden ve kişisel bilgileri diğerleriyle paylaşmayı sağlayan herhangi bir sosyal ağ uygulamasının önemli bir parçasıdır.

Dynamic Style

Bir Android görünüm stilini dinamik olarak değiştirmek kolayca mümkün değildir. Sayfanıza uygulanan stilleri dinamik olarak nasıl değiştireceğinizi bilmek, modern, zengin etkileşimli uygulama oluşturmak için son derece yararlıdır.

View için textView ile tanımlanmış stil.

Localization

Yerelleştirme(Localization), bir ürün veya hizmeti belirli bir dile, kültüre, pazara ve istenen yerel görünüm ve izlenime uyarlama işlemidir. Yerelleştirme; yazılım, yardım dosyaları, dokümantasyon, paketleme ve pazarlama materyali dahil olmak üzere tüm ürünü kapsar.

Android, birçok bölgedeki birçok cihazda çalışır. Çoğu kullanıcıya ulaşmak için uygulamanızın metin, ses dosyaları, sayılar, para birimi ve grafikleri, uygulamanızın kullanıldığı yerel ayarlara uygun şekilde işlemesi gerekir.

Uygulamanızı yerelleştirmek önemli başarılara yol açabilir. Örneğin, Trigger Trap, uygulamalarını hedef kitlenin diline çevirerek yerelleştirmeye karar verdi. Almancaya çevrildiklerinde satışları bir gecede artarak Almanca’nın en iyi hasılat yapan fotoğraf uygulamalarından biri oldu.

Publish & Store

Mobil uygulamanızın hazırlık ve oluşturma aşamaları için elinizden geleni yaptınız tebrikler 👏 ve şimdi bunu insanlara sunmak istiyoruz. Uygulamalarınızı mümkün olan en geniş kitleye dağıtmak istiyorsanız, bir uygulama pazarı seçmelisiniz. Uygulama simgenizin nerede göründüğü, güzel görüneceğinden emin olmalıyız.

Daha küçük boyutlarda okunabilir ve daha büyük boyutlarda net olup olmadığını görmek için uygulama simgenizi farklı boyutlarda kontrol edin.

Farklı çözünürlüklerde nasıl göründüğüne bakın.

Uygulama simgesi görünümünü yalnızca App Store ve Google Play Store’daki rakipler arasında değil, aynı zamanda kullanıcıların ekranlarında olabilecek rastgele simgeler arasında test edin.

Sona yaklaşıyoruz! Bundan sonrası bir kısmımızın olmassa olmazı, bir kısmımızın önem vermediği adımlar. Uygulamamızın sürekliliği, ilerde karşımıza çıkacak bir soruna karşı alabileceğimiz büyük bir önlem veya bir sorunu çabuk halletmemize yarayan testler. Her zaman bir adım sonrasını düşünmek de fayda var diyerekten RUN RUN RUN !

APP TEST!

M obil uygulama testi, hangisinin kullanıcıdan istenen bir eylemi tetiklediğini veya uygulama anahtarı üzerinde olumlu bir etkiye sahip olduğunu belirlemek için farklı kullanıcı bölümlerinin uygulama içi deneyimin farklı varyasyonları ile sunulduğu test türüdür. Mobil uygulamanız için neyin işe yarayıp neyin işe yaramadığını sürekli olarak anlayarak istediğimiz doğrultusunda sistematik bir şekilde iyileştirebiliriz.

Mobil uygulama testini uygulama stratejinizin bir parçası olarak benimseyerek, uygulama deneyiminizi sürekli olarak aşmak için veri destekli, eyleme geçirilebilir öngörülere güvenebilir ve sonuç olarak kullanıcı katılımı, elde tutma ve para kazanma dahil olmak üzere uygulama temel ölçütlerini artırabilirsiniz. Uygulamanızın her bir öğesini, akışını ve özelliğini optimize etmek için test ögelerinizi kullanmak, her kullanıcı temas noktasında dönüşümleri en üst düzeye çıkarmanıza ve sonuçta tüm kullanıcı yolculuğunuzu kolaylaştırmanıza yardımcı olabilir.

Bu test ile, mesajlaşma ve düzen gibi farklı uygulama içi deneyimlerin yanı sıra işe alım ve ödeme gibi farklı kullanıcı akışlarını test edebilirsiniz.

UNIT TEST!

Birim testi, kodun belirli bölümlerinin doğru çalışıp çalışmadığını kontrol eder. Daha sağlam ve bakımı kolay kod üretmemize yardımcı olur. Her bir küçük test küçük bir özelliğe adanmıştır. Ancak hepsi birbirine bağlı, bu yüzden bir çeşit zincir alırsınız. Bu zincirin herhangi bir kısmı başarısız olursa, tüm zincir de başarısız olacaktır.

Emülatörler (gerekli olan bazı donanım ayarlarını dahil edin) veya simülatörler (yalnızca cihazların yazılım kısmı) kullanabilir. Testleri bir kez yazılmalı ve birden fazla platformda çalıştırılmalıdır. Gerçek cihaz testi, olası her iki senaryoyu kontrol edebilen kalite testi (QA) ile her ikisinden de daha büyük önem kazanır.

Uygulamanızdaki belirli kodun mantığını doğrulamanız gerektiğinde birim testleri oluşturmalısınız. Örneğin, bir sınıfı birim test ediyorsanız, testiniz sınıfın doğru durumda olup olmadığını kontrol edebilir.

Bir testten öğrendiklerinizi belgelemek ve bunları gelecekteki tüm mobil uygulama optimizasyon kararlarına uygulamak, testin kendisini yürütmek kadar önemlidir. Testlerinizin her birinin optimizasyon çabalarınızı kolaylaştırmasını ve genel olarak iş büyümesine katkıda bulunmasını sağlamak için, test sonuçlarınızı sistematik olarak arşivlemeniz ve ilerideki tüm karar verme süreçlerinde bunları dikkatli bir şekilde kullanmanız gerekir. Başarısız bir test, deneyim optimizasyonu yolculuğunuzun bir noktasında en karmaşık ikilemi çözmenize yardımcı olabilir.

⭐ Geliştiricilerin harika bir iş yaptığını ve hata yapmadığını varsayarsak, test görevi sadece hata bulmakla ilgili değildir. Tam tersine, uygulamanın kalitesini anlamanıza ve gerçek etkileşimlerle iyileştirmenin yolunu bulmanıza yardımcı olur.

Bu yazımda mobil mimarinin genel maddelerinin anlattım. Genel bilgilerden sonra bir sonraki yazımda kodlarla beraber nasıl yapılacağını da örneklendireceğim. Umarım herkese faydalı olur. 👋

Referans : Android Developer

--

--