SORU
17 Aralık 2013, Salı


Karşılaştırma çekirdekli.uyumsuz ve Fonksiyonel Reaktif Programlama ( Rx)

Biraz karşılaştırma Clojure zaman kafası karışık gibi görünüyorçekirdek.zaman uyumsuzsözde içinReaktif Uzantıları(Rx) veFRPgenel olarak. Asıl farklar nelerdir acaba ve ne durumlarda biri diğerine tercih edilir uyumsuz-hronicity, benzer sorunu çözmek için görünüyor. Biri bana açıklayabilir mi lütfen?

EDİT: daha fazla teşvik etmek İçin derinlemesine soru daha özel yapmak istiyorum cevap:

  1. Çekirdek.zaman uyumsuz bana senkron görünümlü kod yazmak için izin verir. Anladığım kadarıyla ancak FRP sadece iç içe geçmiş geri bir düzeyde ihtiyacı var (mantık işleyen tüm bağımsız değişken olarak API FRP geçirilir). Bu her iki yaklaşım geri arama yapmak gibi görünüyorpiramitlergereksiz. JS function() {...} birçok kez yazmak zorunda olduğum, ama asıl sorun, bu doğruiç içe geçmişgeri aramaları, CTP de gitti. Doğru muyum?

  2. "FRPcomplects akış kontrolü ile mesaj iletişim (birini) lütfen" daha spesifik bir açıklama?

  3. Ben FRP var gözlemlenebilir uç kanalları geçerken aynı şekilde geçirmek olabilir mi?

Genel olarak her iki yaklaşımın tarihsel olarak nereden geldiğini anlıyorum ve her ikisi de birkaç öğreticiler denedim. Ancak ben "" farklılıkların buluş basamağı. felç olmuş gibi görünüyor Bazı varzor bunlardan birini yazmak kolay kullanarak bir kod örneği? Ve bu mimari nedeni nedir?

CEVAP
26 Aralık 2013, PERŞEMBE


Hiçbiri mücadele olduğundan ana sorun ele sorun bu kadar değildir hakkında varsayım olduğunu düşünüyorumasynchronicityem"". sorun

Bu soyutlamalar

FRP Ana fikir değiştirmek yayılması, hücre birbirine bağlı bir define nerede Excel yapar aynı şeyi gerçekleştirerek düşüncascadebir hücre değiştiğinde , ve, ardarda bağlı tüm hücreleri hesaplanır.

core.async ana fikir sistemleri ayrışma, düşünmek gibi ayıran kaygılar kullanarak bir queue ortasında farklı işlemler core.async vaka yerine kuyrukları var kanallar ama olayı anladınız.

Yani kaldırılıyorpiramit koduya da teknolojinin amaç değil, ve farklı soyutlama katmanları çalışır.

Complecting kontrol akışı ile ilgili

Complecting iletişim ve akış kontrolü hakkında fikir the original core async post alınır.

Varken çeşitli mekanizmalar yapmak olaylar/geri temizleyici (CTP), Rx/Observables) yok değiştirmek onların temel karakteristik özellikleri olan bu konu üzerine bir olay rasgele bir miktar başka bir kod çalıştırmak, muhtemelen aynı iş parçacığı, önde gelen ikaz gibi "yapma çok fazla iş amirin" ve benzeri ifadeler "callback hell".

Eğer varsa betimleme,iş alanı kodubir olay işleyicisi içinde, complected varX olay işlemeileX gerçekleştiğinde ne.

core.async tanıtma beri uğraşıyor, ne olduğusıra/kanalortada, endişeleri daha iyi bir ayırma için yardımcı olur.

Uygulama

Tüm sorularınıza geri çağrıları ile ilgili parametreleri sadece uygulama soru olarak gözlemlenebilir bitiş noktaları geçen, gerçekten Rx uygulama ve API bağlıdır.

Eğer React reusable components bakarsanız gerçekten görülecek bir geri arama cehennemin fazla bir şey yok, ve etrafında observables geçen fikri olsun.

Son düşünceler

Eğer Rx herhangi bir veri akışı modeli için kullanılabilir olsa bile, daha yaygın olarak kullanılırUI Rendera-la, model değiştiğinde görünüm güncelleme nasıl basitleştirmek için Excel.

Diğer taraftan, Core.Async kullanılabilir model ayrılık söz konusu olduğunda her iki alt sistemler birbirleriyle iletişim kurdukları (aynı kullanım senaryosu olarak sıralar), kullanarak UI render zinciri ana fikir için ayrı:

  • Sunucu taraflı olay üretim ve işleme
  • Bu olay senin model nasıl etkiler

core.async endişelere ayıracak beri core.async FRP birlikte olabilir, ve FRP model güncelleştirilmiş bir zamanlar senin basamaklı veri akışını belirleyecek.

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

YORUMLAR

SPONSOR VİDEO

Rastgele Yazarlar

  • Feel The Electricity!

    Feel The Ele

    20 ŞUBAT 2010
  • Jared Busch

    Jared Busch

    25 Mayıs 2011
  • Pocketnow

    Pocketnow

    14 EKİM 2007