RxPY - Son Sürüm Güncellemeleri
Bu eğitimde, RxPY sürüm 3 ve python sürüm 3.7.3 kullanıyoruz. RxPY sürüm 3'ün çalışması önceki sürümle, yani RxPY sürüm 1 ile biraz farklıdır.
Bu bölümde, 2 sürüm arasındaki farkları ve Python ve RxPY sürümlerini güncellemeniz durumunda yapılması gereken değişiklikleri tartışacağız.
RxPY'de gözlemlenebilir
RxPy sürüm 1'de Observable ayrı bir sınıftı -
from rx import Observable
Gözlemlenebilir'i kullanmak için, onu aşağıdaki gibi kullanmanız gerekir -
Observable.of(1,2,3,4,5,6,7,8,9,10)
RxPy sürüm 3'te Gözlemlenebilir, doğrudan rx paketinin bir parçasıdır.
Example
import rx
rx.of(1,2,3,4,5,6,7,8,9,10)
RxPy'deki Operatörler
1. sürümde, operatör Gözlemlenebilir sınıfındaki yöntemlerdi. Örneğin, operatörleri kullanmak için Observable'ı aşağıda gösterildiği gibi içe aktarmalıyız -
from rx import Observable
Operatörler, örneğin aşağıda gösterildiği gibi Observable.operatör olarak kullanılır -
Observable.of(1,2,3,4,5,6,7,8,9,10)\
.filter(lambda i: i %2 == 0) \
.sum() \
.subscribe(lambda x: print("Value is {0}".format(x)))
RxPY sürüm 3 durumunda, operatörler işlev görür ve aşağıdaki şekilde içe aktarılır ve kullanılır -
import rx
from rx import operators as ops
rx.of(1,2,3,4,5,6,7,8,9,10).pipe(
ops.filter(lambda i: i %2 == 0),
ops.sum()
).subscribe(lambda x: print("Value is {0}".format(x)))
Boru () yöntemini kullanarak Zincirleme Operatörleri
RxPy sürüm 1'de, bir gözlemlenebilir üzerinde birden fazla operatör kullanmanız gerekirse, aşağıdaki gibi yapılmalıdır -
Example
from rx import Observable
Observable.of(1,2,3,4,5,6,7,8,9,10)\
.filter(lambda i: i %2 == 0) \
.sum() \
.subscribe(lambda x: print("Value is {0}".format(x)))
Ancak, RxPY sürüm 3 olması durumunda, boru () yöntemini ve aşağıda gösterildiği gibi birden çok operatörü kullanabilirsiniz -
Example
import rx
from rx import operators as ops
rx.of(1,2,3,4,5,6,7,8,9,10).pipe(
ops.filter(lambda i: i %2 == 0),
ops.sum()
).subscribe(lambda x: print("Value is {0}".format(x)))