DZone
Mobile Zone
Thanks for visiting DZone today,
Edit Profile
  • Manage Email Subscriptions
  • How to Post to DZone
  • Article Submission Guidelines
Sign Out View Profile
  • Post an Article
  • Manage My Drafts
Over 2 million developers have joined DZone.
Log In / Join
  • Refcardz
  • Trend Reports
  • Webinars
  • Zones
  • |
    • Agile
    • AI
    • Big Data
    • Cloud
    • Database
    • DevOps
    • Integration
    • IoT
    • Java
    • Microservices
    • Open Source
    • Performance
    • Security
    • Web Dev
DZone > Mobile Zone > This Week in Mobile: Improving Completion Blocks and Avoiding RxJava Leaks

This Week in Mobile: Improving Completion Blocks and Avoiding RxJava Leaks

Among the many topics in this week's edition, we discuss how to improve completion blocks in Swift, and how to avoid memory leaks when using RxJava subscriptions.

James Sugrue user avatar by
James Sugrue
CORE ·
Feb. 24, 17 · Mobile Zone · News
Like (2)
Save
Tweet
5.02K Views

Join the DZone community and get the full member experience.

Join For Free

iOS

There's no doubt that you use completion blocks in your code, but to someone using your API they can be a little opaque. Alex Curran puts forward a simple but effective way of making your completion blocks simpler.

Although not without its limits, the Speech Recognition API introduced in iOS 10 can be a powerful addition to your app. This tutorial will get you up to speed with what is possible. 

Wendy Lu's talk on Data Consistency in an Unpredictable World explains what an immutable model layer really is, and how the team at Pinterest used the concept for their app. 

Using CocoaPods internally is an excellent way of maintaining a clear separation of concerns. Creating a pod is not nearly as complicated as you might expect. Here's how to Build an iOS, watchOS and tvOS framework with a dependency using CocoaPods.

Bookmark this one: here are all the keywords in Swift described in one single post.

Some projects to check out: 

  • FSPagerView:  FSPagerView is an elegant Screen Slide Library. It is extremely helpful for making Banner、Product Show、Welcome/Guide Pages、Screen/ViewController Sliders.

  • WCLShineButton:  This is a UI lib for iOS. Effects like shining.

  • SwipeCellKit:  Swipeable UITableViewCell based on the stock Mail.app, implemented in Swift. 

Android 

RxJava is one of the most popular libraries around, but it can be easy to make mistakes. For example, here's how to leak memory with Subscriptions in RxJava. 

Having said that, RxJava can give you a lot of benefits. In Moving away from the Event Bus with RxJava and Dagger 2 you'll see how it can clean up your code, and give a more elegant solution. 

Want to get in on the functional programming fun? This article introduces some concepts and techniques from the functional world into Android programming.

Sometimes it feels that offline first is just another buzz-phrase. In this post, you'll see how Trello's mobile apps now work offline. It's not as complicated as you might expect, and your users will thank you for the effort. 

Some projects to check out: 

  • Alerter: An Android Alerting Library

  • mkloader:  Beautiful and smooth custom loading views

  • sensey: Detecting gestures in a snap

General 

Your users expect animations from your app, not just because it looks nice, but because it actually has meaning. Here are three key uses for animation in mobile UI design.

Looking for some new reading material? Check out this list of the Top Tech Books of 2016.

Feeling stuck in a rut with your career? Here's some advice on how to survive a career pivot and give yourself a professional reboot.

Design Patterns can sometimes sound a little more complicated than they should. Read Design Patterns for Humans to get much clearer explanations.

mobile app Blocks

Opinions expressed by DZone contributors are their own.

Popular on DZone

  • RestTemplate vs. WebClient
  • AWS IAM Security Best Practices
  • Event-Driven Microservices?
  • MACH Architecture Explained

Comments

Mobile Partner Resources

X

ABOUT US

  • About DZone
  • Send feedback
  • Careers
  • Sitemap

ADVERTISE

  • Advertise with DZone

CONTRIBUTE ON DZONE

  • Article Submission Guidelines
  • MVB Program
  • Become a Contributor
  • Visit the Writers' Zone

LEGAL

  • Terms of Service
  • Privacy Policy

CONTACT US

  • 600 Park Offices Drive
  • Suite 300
  • Durham, NC 27709
  • support@dzone.com
  • +1 (919) 678-0300

Let's be friends:

DZone.com is powered by 

AnswerHub logo