adult blur books close up

Is it worth learning RxSwift in 2021?

Does this sound like you…you’re a good developer with years of experience building and shipping apps to the App Store. Somehow though, you never quite managed to get onboard the functional reactive programming train in the back half of the “twenty-tens” (2015 – 2019), and now we have Combine. Should you learn RxSwift today?

My answer to this question is…absolutely yes! Here are 5 reasons why I think it’s still a great idea to learn RxSwift today.

You’re not alone

If you worry that the community is full of seasoned veterans and you’re simply too late to the party, then you’d be wrong. Yes there are lots of very clever people doing very cool things, but there are also many people just like you, who are just getting started. Join the RxSwift Slack and you will see Rx newbies asking questions every single day. People have been learning, experimenting and building with RxSwift for years, and in great numbers. This means there are lots of fantastic resources out there to get started, and lots of smart people who can help you. 👋

Oh the resources!

There are lots of great books, blog posts and articles out there on an endless variety of topics related to RxSwift. So you should have no problem finding tutorials and explanations of the basic concepts to kick things off. Also, checkout the huge collection of repo’s available on the RxSwift Community GitHub. A passionate bunch of people have been solving problems in RxSwift for years, so the number of tools available to you as an RxSwift developer is vast! 📚

You’ve got to start somewhere

Functional reactive programming has been increasing in popularity for some years, and Apple has clearly been paying attention, as we all learned at WWDC in 2019 when they announced Combine. To have a first party solution is fantastic, but Combine is still quite new and lacks some of the maturity of RxSwift, not to mention that Combine only supports iOS 13 and upwards. So if you want to be a functional reactive ninja, as it currently stands you’re going to need to learn both. So where should you start? Set yourself up for success and start with RxSwift. 💯

If you’ve seen one, you’ve seen ‘em all

Learning the basics of RxSwift is relatively straight forward. The real challenge comes in shifting your mindset from an object oriented perspective to a functional reactive one, and then putting everything together in a large scale, production project. This is the heavy lifting and where the hard work is at. Doing this alongside a great community and lots of resources will enable you to easily transfer your knowledge to Combine, once you feel comfortable with your newly found reactive powers, courtesy of RxSwift. 🥷

UIKit is here to stay (sort of)

SwiftUI is making great strides, and when paired with Combine is very powerful. But UIKit is not going to disappear anytime soon. There will still be many legacy projects written in UIKit for some years to come, and RxSwift (along with RxCocoa) is an excellent choice for reactive UIKit apps. Experience with RxSwift is going to be a valuable skill on your resume for some time yet. 🤓

Conclusion

When deciding whether you should learn RxSwift or Combine, my suggestion is to embrace both, but don’t discount RxSwift as being redundant just because Combine has entered the arena. Become a solid, well rounded reactive guru with knowledge of both. Personally, I would start with RxSwift for all of the reasons above, and then gracefully slide all of your skills over to Combine when you’re ready. Of course, you could ignore all of the above and just learn Combine, but why not catch up with all the cool kids and get “RxSwift” listed on your resume after all. 😎

In the next article we’ll look at a simple roadmap you can follow to get you started on your reactive journey with RxSwift! Thanks for reading, and subscribe below so that you don’t miss that next article! 🚀

Stay in the Loop

Subscribe to tapdev and never miss a post.

Total
0
Shares
Previous Post
woman looking at the map

Convert array types using the map operator in Combine

Next Post
flight sky earth space

Start learning RxSwift today with these 6 steps

Related Posts
woman looking at the map

Convert array types using the map operator in Combine

In reactive programming, it's very common to require a stream of values in the form of an array. A typical use case for this is to populate a list with data. However, the array that is published from the source may need to be transformed to an array of values of a different type for display.
Read More