It's interesting to see how code is structured when it comes from Apple (or vendors they're working closely with). Surprising some of their best practices aren't followed, such as hard-coding English strings instead of using something like NSLocalizedString() (e.g. https://github.com/ResearchKit/GlucoSuccess/blob/master/Diab... )
Surprising? After learning of apple's goto bug, I'm never surprised to read about apple's failure to follow best practices.
It's jarring when you see hard-coded English strings in any iOS code. Android does a much better job of pushing developers to localizing strings.
One big thing I don't like about iOS is even if you have a base language, you need to duplicate all strings in any subsequent languages. (I often have a "US English" and "Australian English", so trivial changes require changes in two files).
On Android, the language files extend the base file, so you can just override favourite/favorite labour/labor type strings without having to duplicate everything.
(Obviously you can script / auto-generate language files, but that's not the default position).