3 ms·
Speaking only for myself, I have no problem with windows/screens or mouse/taps being different. The parts that baffle me are those which have nothing to do wit
by ken 8y ago
Speaking only for myself, I have no problem with windows/screens or mouse/taps being different. The parts that baffle me are those which have nothing to do with the different interaction models, and are simply different for no apparent reason.
NSColor/UIColor are different, and it's not like one color class is better for windowed versus non-windowed colors. NSBezierPath/UIBezierPath perform the same task yet often the same methods have different names.
I've wasted a bunch of time making extensions so that one OS's classes would look like the other (annoying but not difficult). The fact that every developer has to do this is just silly. Apple's own WWDC video on iWork essentially says "Because we wanted it to be cross-platform, we avoided drawing the standard way, and draw all content using CALayers instead".
If Apple did nothing else but make the parts that work identically be named identically, that would be Marzipan enough for me.
- arcticbull 8y agoI agree the color and path classes being different is pretty frustrating. I think the argument that can be made is that the UI should be different enough between iOS and macOS that the incentive to share code at the UI level is limited. Sharing the model and business logic is, after all, seamless. There was a big push in the early days to true the lower-level APIs up. I also understand why they could justify to themselves a code-level compatibility barrier to make people think twice about sharing UI elements in a sub-optimal way. I'm pretty tepid on it, tbh.