SORU
16 Mart 2009, PAZARTESİ


İçin AppDelegate nedir ve nasıl kullanılır.

Sadece iPhone uygulamaları üzerine çalışmaya başladım. Nasıl özel bir sınıf karşı appdelegate şeyler koymalıyım. Desen gibi bir appdelegate kullanan python ya da php gibi bir programlama dili ile bir kural veya benzetme var mı?

CEVAP
17 Mart 2009, Salı


Ben normalde tasarım yaklaşımı dönem Andrew kullanın ima önlemek "uygulama kalp". Bu merkezi bir konumda çok fazla şey koymasında kaçınmalısınız olduğunu düşünüyorum ... iyi program tasarım normal işlevlerini ayırarak içerir ne demek istediğimi "kaygı alanı".

Bir temsilci nesnesi bağlı olduğu nesnenin belirli olayları veya durumları ulaştığında haberdar olur bir nesnedir. Bu durumda, Uygulama Temsilci UİApplication nesnenin belirli Birleşik Devletleri ulaştığında bildirimler aldığı bir nesnedir. Pek çok bakımdan, bire bir Gözlemci uzman bir kalıptır.

Bunun anlamı, "kaygı alanı" AppDelegate için özel UİApplication Birleşik Devletleri işleme. Bunların en önemlileri şunlardır:

  • applicationDidFinishLaunching: - kullanım için iyi başlangıç yapılandırma ve inşaat
  • applicationWillTerminate: - sonunda temizlik için iyi

Gerçekten oraya ait değiller beri AppDelegate diğer işlevler koyarak kaçının. Diğer işlevler içerir:

  • Belge veri -- sana bir belge yöneticisi singleton (birden fazla belge uygulamalar için) ya da bir belge singleton (tek belge uygulamalar için) sahip olmalıdır
  • Düğme/tablo/görünüm kontrolörleri, görüntülemek temsilci yöntemleri veya diğer görüntüleme işleme (applicationDidFinishLaunching üst düzey görünümü: inşaat hariç) -- bu çalışma ilgili görünüm denetleyicisi sınıfları olmalıdır.

Birçok kişi tembel oldukları için AppDelegate içine bunları toptan veya AppDelegate tüm program denetimlerinin düşünüyorlar. App ilgi alanları muddies ve ölçek olmadığından senin AppDelegate içerisinde toplamaya kaçınmalısınız.

Bunu Paylaş:
  • Google+
  • E-Posta
Etiketler:

YORUMLAR

SPONSOR VİDEO

Rastgele Yazarlar

  • FamilyFeud

    FamilyFeud

    22 AĞUSTOS 2006
  • Ty Moss

    Ty Moss

    20 Kasım 2007
  • USI Events

    USI Events

    6 AĞUSTOS 2013