SORU
23 EYLÜL 2011, Cuma


Büyük ASİHTTPRequest özellikleri eksik AFNetworking nedir?

work having recently stopped on ASIHTTPRequest dikkat çekmek AFNetworking doğru kayıyor gibi görünüyor.

Ancak, henüz iki kütüphanelerin özellikleri iyi bir karşılaştırma buldum, üzerinde anahtarı bile kaybedebilirim bilmiyorum.

Şimdiye kadar görmüş olduğum önemli farklar vardır:

  1. AFNetworking çok küçük kod boyutu iyi olan) vardır
  2. AFNetworking hızla gelişen (henüz olgun olmayabilir, istikrarlı bir API henüz yok?)
  3. Hem AFNetworking çünkü NSURLConnection it won't cache objects over 50K kullanan ipuçları gördüm ama önbelleği var gibi görünüyor
  4. ASİHTTPRequest manuel ve otomatik (PAC) http yakınlık için çok iyi bir destek var; AFNetworking vekiller için ne hakkında herhangi bir bilgi bulamadım
  5. AFNetworking iOS 2'ye doğru geri iOS ASİHTTPRequest çalışır, ancak 4 , (gerçekten benim için bir sorun, ama bazı insanlar için bir sorun vardır) gerektirir
  6. (Henüz) inşa kalıcı bir önbellek yok, ama bekleyen bir çekme isteği olan kalıcı bir önbellek var AFNetworking: https://github.com/gowalla/AFNetworking/pull/25

İki kitaplıkları iyi bir karşılaştırma ya da birinden diğerine geçiş herhangi bir belgelenmiş deneyimleri gören oldu mu?

CEVAP
4 Aralık 2011, Pazar


Üzgündüm ASİHTTPRequest vermek için sevdim. Ancak, ASİ geliştirici haklıydı, ASİHTTPRequest iOS ve diğer çerçeveler yeni özellikleri ile bile zaman par getirmek için adamak olamazdı o kadar büyük ve şişirilmiş haline gelmiştir. Ben öyle yaptım ve şimdi AFNetworking kullanın.

Bu, AFNetworking ASİHTTP çok daha istikrarsız olduğunu söylemek zorundayım, ve bu şeyler için, arıtma ihtiyacı için kullanıyorum. " dedi.

Ben sık sık ekranda sonuçlarımı ekran önce 100 HTTP kaynakları için HTTP isteklerini yapmak gerekir, ve işlem bir sıraya AFHTTPNetworkOperation koyduk. Tüm sonuçları yüklenmeden önce, işlem sırası içindeki tüm işlemleri iptal etmek ve sonuçlarını tutan bir görünüm denetleyicisi görevden sonra mümkün olmak istiyorum.

Bu her zaman işe yaramıyor.

ASİHTTPRequest ile, bu işlemleri kusursuz bir şekilde çalıştığı süre içinde AFNetworking ile rasgele zamanlarda çöküyor. AFNetworking bir parçası olarak, farklı noktalarda (hata ayıklayıcı bir NSURLConnection oluşturan NSRunLoop için puan en ancak, nesne) çökmesini tutar gibi çarpıyor, demek isterdim. Yani, AFNetworking ASİHTTPRequest kadar eksiksiz kabul edilmesi için büyük planları var.

Ayrıca, ASİHTTPRequests AFNetworking şu anda eksik olan İstemci Kimlik Doğrulaması destekler. Bunu uygulamak için tek yol AFHTTPRequestOperation alt ve NSURLConnection kimlik doğrulama yöntemleri geçersiz kılmak için. Ancak, eğer başlangıç dahil NSURLConnection, göreceksiniz koyarak NSURLConnection içinde bir NSOperation sarıcı ve yazma tamamlama blok değil çok zor gibi görünüyor ve sen-ecek başlamak ne tutar damping 3. parti kütüphaneler.

ASİ kullanır tamamen farklı bir yaklaşım, bu yana kullandığı CFNetworking (alt düzey Vakfı çerçeveler dayalı C) indirme ve dosya yüklenmesi mümkün, atlama NSURLConnection tamamen ve dokunaklı kavramları çoğumuz OS X ve iOS geliştiricileri çok korkuyor. Bu nedenle, daha iyi dosya yükleme ve indirme bile web sayfası önbelleğe alır.

Hangisini tercih ederim? Kesin bir şey söylemek zor. Eğer AFNetworking yeterince olgunlaşır, daha ASİ gibi. O zamana kadar, ama hayran ASI ve OS X için, tüm zamanların en çok kullanılan yapılarından biri olmuş ve iOS şekilde yardım edemem.

DÜZENLEME: *İşler bu yazıdan sonra biraz değişti gibi bu cevap güncelleme zamanı geldi sanırım.*

Bu yazı dome zaman önce yazılmış, ve AFNetworking yeterince olgunlaştı. 1-2 ay önce AF ilan küçük bir güncelleme için POST işlemleri bu benim son şikayet hakkında çerçeve (küçük bir satır sonu hatam nedeni echonest uplaods başarısız AF ama tamamladı uyar ASI). Kimlik doğrulama işlemi alt ve kendi arama yapabilirsiniz karmaşık kimlik doğrulama yöntemleri için AFnetworking ile, bir sorun değildir ve AFHTTPClient temel kimlik doğrulaması çocuk oyuncağı yapar. AFHTTPClient sınıflara göre az zaman içinde tüm hizmeti bir tüketici olun.

Fazla AFNetworking kesinlikle gerekli Uİİmage eklemeleri cabası. Blok ve özel tamamlanmasını engeller ve bazı akıllı algoritma, sen-ebilmek yapmak Tablo görünümleri ile zaman uyumsuz görüntü yükleme ve hücre dolum çok kolay, oysa ASİ kaldığın için işlem sıraları için bant genişliğini azaltma ve zihin kendi kendine iptal ve özgeçmiş işlem sırasına göre tablo görünümü görünürlük, ve bu gibi şeyler. Bu tür operasyonların geliştirme süresini yarıya indirildi.

Ben de başarı ve başarısızlık taşları seviyorum. ASİ sadece bir tamamlanma blok var aslında NSOperation tamamlanma blok). Tamamlama ve hareket bir hata vardı Hava Kontrol buna göre vardı. Karmaşık web hizmetleri için, tüm kayboluruz "" ve ""; AFNetworking, işler çok daha basit ve kolay anlaşılır. birinin eğerler

ASİ zamanına göre çok iyiydi, ama AF ile web hizmetleri tamamen iyi bir şekilde idare ile sizlere uygulamalar yapmak daha kolay değiştirebilirsiniz. Ben gerçekten ne olursa olsun iOS 3 ve aşağıda hedef istemiyorsan ASI ile artık sopa için bir sebep yok inanıyorum.

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

YORUMLAR

SPONSOR VİDEO

Rastgele Yazarlar

  • Andrew_Huang

    Andrew_Huang

    10 ŞUBAT 2006
  • Lin Steven

    Lin Steven

    17 EKİM 2006
  • Thehalopianoplayer

    Thehalopiano

    4 ŞUBAT 2011