Birincisi, hangi uygulamayı yaptığınıza bağlıdır.
Bir kullanıcının uygulama ile nasıl çalışacağına dair yazılı veya şematik bir açıklama yapmalısınız. Her olası senaryoyu düzeltin. Testler için daha sonra kullanılacak örnekleri yazın.
İşlevselliğe neyin ait olduğuna karar verin - değişken yapılandırmaya. İşlevsellikleri ve veri varlıklarını senaryolardan ayıklayın.
Senaryolardan uygulamanızın ne olacağına karar verin. Hizmet, etkinlik, widget, hatta bir içerik sağlayıcı veya bazı farklı bileşenleri içeren karmaşık bir sistem mi? Kararınızı senaryolara karşı test edin.
Karmaşık sistemde, işlevsellikleri ve veri varlıklarını uygulama bileşenleri arasında dağıtın. Bileşenlerin ve ne olduklarının bir listesini yapın (etkinlikler veya başka şeyler).
UI bileşenlerinin listesini ne yaptıklarını açıklama ile yapın (henüz NASIL değil) Bunlar daha sonra widget'lar ve etkinlikler veya parçalar veya düzenler olacaktır.
UI bileşenleri için taslak düzenler yapın. Birinden diğerine basit geçişler yapın. Arayüze bak. Senaryolara dön ve hepsini taslak kullanıcı arayüzünle oyna. Tüm UI bileşenleri ve sınıfları bir paket veya paket hiyerarşisine yerleştirilir.
Veri varlıklarının bir listesini yapın. Neyin olacağına karar ver. Bunları DB veya farklı DB'lerde koleksiyon veya tablo olarak planlayın. Bunları sınıf olarak yapın, başka bir paket hiyerarşisine veya başka bir pakete yerleştirin. Ayrıca, DB yardımcılarını da ekleyin - DB ile SQL ile konuşan sınıflar.
UI ve veri varlıklarını test verileriyle doldurmak ve başlatmak için bir test sınıfı (JUNIT veya daha iyi TestNG) yapın.
Bağdaştırıcıların halka açık olması gerekmez, çünkü bunlar yalnızca üst GroupView'lerinde kullanılır. Yani, genellikle bağdaştırıcılar için dosya yok.
Do not özel statik sınıfa tüm globalsi koymak - kötü bir uygulamadır. Kod ve konfigürasyonu karıştırıyorsunuz. Bu çok ilginç çözümü kullanın . Şimdilik, Android için bildiğim en iyisi.
Yapılandırma verileri kaynaklara yerleştirilmelidir. Bazıları karmaşıksa, XML kaynaklarını ve ayrıştırıcılarını kullanın. Kaynak verilerinin okuyucularını global değişkenlere dönüştürün. Hepsi statik olmayacak! Örneğin, ana Aktivite örneğine ait olabilirler.
Kodda yapılandırılamaz sabitleri kullanmayın! Olabilir, sadece isminiz :-). Her sabit bazen sabit olmaz.
Diğer taraftan, bazılarınız normal java değilse, fakat komut dosyaları - bir veri ve dil karışımıysa, o zaman veri ve kodu karıştırmanız gerekir.
Her zaman şöyle yapın: bir şeyler yazın - bir cihaza bir şey bağlayın - bu yeni şey için sınama ekleyin. Sadece küçük adımlar!
Düzenle. Sınamaya dayalı geliştirme de kullanabilirsiniz - uygun kodlamadan önce sınama testleri. Bu şekilde, kod hazır olmadan önce testleri çalıştırmak, iki kez test yaptırmaktasınız - böylece testlerin gerçekten yanlış kodlara tepki gösterip göstermediğini kontrol edebilirsiniz.