İçeriğe geç

RxSwift’e giriş

Merhabalar bu yazım ile birlikte Swift ve iOS ile Reactive programlama ile uygulama nasıl yazılır ? bize faydaları nelerdir ? gibi soruların cevabını bulacağınız ve kodlu örnekler ile olayları anlayacağınız bir yazı serisi yazmaya karar verdim. Kendiminde öğrenmeye devam ettiğim bu yapıyı sizlerle paylaşacağım.

Bildiğimiz gibi uygulama geliştirirken ister büyük projeler olsun isterse ufak çaplı projeler olsun modellemeden, belirli bir alt yapı üzerinde mantık,hız,kod okunabilirliği (ve bir çok kavramda buna ekleyebiliriz). Oluşturulmadan yazmak büyük bir hatadır. Daha önceki yazılım tasarım kalıplarını incelemiş ve sizlere örneklerini vermiştim.

Bu tasarım kalıpları ve programlama paradigmaları ihtiyaç üzerinden doğmuş olaylardır. Bu yapıyı her projemizde kullanmalıyız diye bir durum söz konusu olamaz.

Bir örnek verecek olursam sosyal medya uygulamaları olsun veya sunucu ile etkileşimde olan her hangi bir uygulama düşünebilirsiniz. Uygulama içerisinde bulunan yükleniyor işlemleri kullanıcıya iki farklı şekilde yapılabilinir.

İlk işlem kullanıcıya loading ekranı gösterilir ve sunucudan veri cihaza gelene kadar kullanıcı bekletilir. Daha sonra veri geldikten sonra kullanıcı uygulamayı kullanmaya devam edebilir.

İkinci işlem ise kullanıcı uygulamayı açar ve yükleme ekranı ile karşılaşmadan hangi alan yüklendiyse onu görebilir ve zaman ilerledikçe diğer alanlarda yüklemesini tamamlar. Ve kullanıcı scroll işlemi yaptıkça yeni veriler yüklenmeye devam eder. Bu işlem günümüz sosyal medya uygulamalarında kullanılan yapıdır ve en efektif, en ideal kullanım yöntemidir. Yavaş internet bağlantısı tolere edilir. Kullanıcı sadece ihtiyacı olan veri ile işeme başlar opsiyonel veriler gelmesede olur. Server üzerinde olan yerel hatalar tolere edilir.  Opsiyonel verilerde bir bozulma uygulamayı çökertmez bekletmez uygulama her an için aktif durumdadır.
işlemler paralel yürüdüğü için i/o beklemesi en aza indirgenir. Bu yöntemi gerçekleştirmek için en ideal kullanım reactive programlama yapısı ile uygulamayı kodlamaktır.

Reaktif programlama, veri akışları ve değişimin yayılması etrafında yönlendirilmiş bir programlama paradigmasıdır. Bu programlama paradigmasını oluşturan en önemli yapılar

RX = OBSERVABLE + OBSERVER + SCHEDULERS diyebiliriz. Bu yapıları Swift dili ile iOS üzerinde nasıl kullanacağımızı bundan sonraki yazılarımda paylaşacağım.

Tarih:RxSwift

Bu yazı yorumlara kapalı.