4 ms·
Some things are much more sane and well thought out than iOS. Styling and layouts, for example, are so much better than Interface Builder, which is pretty much
by cageface 10y ago
Some things are much more sane and well thought out than iOS. Styling and layouts, for example, are so much better than Interface Builder, which is pretty much just a toy for demos.
Other things like the way events are handled and some of the native widgets are clunky. Some of us are fed up enough with all the incidental complexity Apple puts in your way every day as a developer (provisioning, in particular), that we prefer to put up with Android's warts.
That said the native app market is feeling pretty saturated these days and I'm not sure that boning up on building responsive/progressive web apps isn't a better long term bet.
- sosborn 10y agoIB is perfectly fine for most apps. When you feel constricted it is easy enough to accomplish what you want in code.
- Nullabillity 10y agoWhat happens if you try to open an iPhone app on an iPad? What happens if you try to open an Android phone app on an Android tablet? That's the difference between IB and Android's layout system.
- JimDabell 10y agoIt's really not – I think you're working with outdated knowledge from several years ago. An "iPhone app" is one specifically built for iPhones. That's not the norm these days. Normally you would build an iOS app with universal storyboards that would work for both iPhones and iPads. Normally opening an iOS application on an iPad would result in a layout that works well for iPads.
- dan1234 10y agoAuto Layout[0] can give you incredibly flexible designs from within IB. [0]https://www.raywenderlich.com/115440/auto-layout-tutorial-in-ios-9-part-1-getting-started-2 https://www.raywenderlich.com/115440/auto-layout-tutorial-in...
- veeti 10y agoPhone layouts automatically blowing up to a 10 inch screen and allowing developers to be lazy is not an advantage. The tablet apps on Android are still garbage after all these years.
- agildehaus 10y agoModern iOS development uses Autolayout, which uses a constraint solver. This hasn't been a problem for years.
- cageface 10y agoIB is a mess: - No way to define reusable styles. - No way to compose layouts out of other layouts. - Trait classes are way too coarse to be useful. - Versioning of Storyboards is a nightmare. - Anything beyond trivial auto layout editing is useless. - Segues force you into stringly-typed APIs. - @IBDesignable is still super buggy. I've been much much happier since I dumped it and started doing everything with SnapKit.
- eggy 10y agoAndroid vs. Web Apps is exactly where I was sitting on the fence, but then I just looked at the sheer number of Android devices out there, and it doesn't seem to be stopping!
- pawadu 10y agoAnd the web apps all run on the same machine?
- eggy 10y agoIf I understand you to mean I would be able to deploy to all types of devices with browsers or webkit, you're right. There are more Android OS devices shipping and out there than all of the other OSs combined. By focusing on just Android, I can be assured it will look and perform more uniformly than the web app route. Even ART has closed the gap with NDK on some HPC or numerical use cases vs. the older Dalvik. I don't like Java compared to other languages, even JavaScript ;) But it's not too bad, and Android documentation is great as well as the number of answers you can find on SE for any given question.
- jmkni 10y ago> Interface Builder, which is pretty much just a toy for demos As somebody currently learning the basics of iOS development, what do people use as an alternative?
- cageface 10y agoIB is ok for getting started but it will eventually hold you back. If you get to the point where you feel like you're fighting it as much as using it then look into doing your layouts in code with one of these libraries: https://github.com/SnapKit/SnapKit https://github.com/SnapKit/SnapKit https://github.com/robb/Cartography https://github.com/robb/Cartography It may take a little getting used to but, especially for the kind of dynamic apps people want to build today, it will save you a lot of time and headaches in the end. Also make sure you get your head around UIStackView. It's a little tricky to learn at first but makes a lot of common layout problems easier to solve. Also, start using this library ASAP: https://github.com/mac-cain13/R.swift https://github.com/mac-cain13/R.swift
- vlozko 10y agoAs someone learning the basics of iOS development, I'd suggest you stick with IB. I get that most people either love it or hate it but there will never be a WYSIWYG editor that everyone will be happy with and there are ways it's lacking. But to call it a toy for demos is simply over the top. I've personally made pretty complex interfaces using iOS's auto layout using very little UI code.