4 ms·
Having developed for Android for many years and for iOS/Swift for over half a year, here's a bunch of random thoughts: Developing for iOS/Swift is a more pleas
by RivieraKid 9y ago
Having developed for Android for many years and for iOS/Swift for over half a year, here's a bunch of random thoughts:
Developing for iOS/Swift is a more pleasant experience, the APIs are simpler and more well-thought. But it's not a huge difference.
Android Studio is a better (but uglier) IDE, but not by as much as people say.
Android's Activity and Fragment APIs is a horrible joke. I mean, Google is supposed to have these super smart devs, how could they design this mess?
Creating UI in iOS sucks. Specifically, Auto Layout and Interface Builder. I usually use Fb's Yoga, it's not ideal, but less of a pain.
Swift is one of the best-designed languages out there.
- ehsankia 9y agoThere's a lot of complaints about Java being verbose and bad, does Kotlin fix these issues? Does it make it fun again? I personally used to dislike programming until I started using Python at work, and I fell in love again. Syntax, libraries and API design can definitely have a huge impact on how you enjoy what you do. As for your comment about Activity/Fragments, they've had a few I/O talks going over their thoughts: https://www.youtube.com/watch?v=k3IT-IJ0J98 https://www.youtube.com/watch?v=k3IT-IJ0J98 https://www.youtube.com/watch?v=FrteWKKVyzI https://www.youtube.com/watch?v=FrteWKKVyzI
- RivieraKid 9y agoI don't think Java 8 is that bad, it's just mediocre. It's fast and has a good ecosystem. Yeah, Python is fun, it seems effortless to do stuff there compared to Java. For example, "a = [1]" vs "List<Integer> a = new ArrayList<>(); a.add(1)" - and then you have to compile and run, no REPL to try it out. Recently I've been using Julia, it's maybe the most fun I had with a language. Some things are much easier to do than in Python - and it's 1 to 2 orders of magnitude faster.
- vosper 9y agoSince you mentioned Julia - are you using it for math or math-related programming, or doing something else? It looks interesting to me, but I'm a web dev (Python on the backend) and don't have much use for most of the math stuff, so I don't know if it's suitable.
- AsyncAwait 9y agoThe language itself is general purpose, but its community is targeted towards scientific computing, so the ecosystem for web dev isn't (yet?) there.
- mncolinlee 9y agoI would argue Kotlin is a lot more fun than Java. As for the Fragment lifecycle, it still sucks, but no one forces you to use it. Lots of apps never even use one fragment. Google simply made fragments hoping everyone would make their UIs into reusable components which work better on tablets.
- sidlls 9y agoThe problem is the benefit you note requires a lot of extra effort and at least one additional layer of abstraction that more than doubles the boilerplate/cruft required to maintain proper UI flow through an application. Their "solution" is more of a problem than the problem it was meant to solve.
- s73ver_ 9y agoI find creating UI in Xcode, with Autolayout and IB, far better than using Android's tools. Mainly because IB actually shows me what I'm working on, and what it's going to look like. The Preview window in Android studio routinely errors out, telling me it can't preview my layout because of some error, often caused by something from Google's own compatibility library!
- bitmapbrother 9y agoIs refactoring in Xcode using Swift still a horrible joke? It just seems odd that you would say Android Studio is not that much better than Xcode considering the horrible inadequacies of Xcode when it comes to Swift. Meanwhile, pretty much anything you can do with Android Studio, with respect to Java, you can also do in Kotlin.
- AsyncAwait 9y agoNot anymore, Xcode 9 has some pretty great refactoring features, but it's still in beta.
- proyb2 9y agoXCode 9 has implemented refactoring: https://developer.apple.com/library/content/documentation/DeveloperTools/Conceptual/WhatsNewXcode/xcode_9/xcode_9.html https://developer.apple.com/library/content/documentation/De...
- cma 9y agohttps://github.com/facebook/yoga/blob/master/PATENTS https://github.com/facebook/yoga/blob/master/PATENTS That's a pretty big price they charge.
- real-hacker 9y ago* Swift is one of the best-designed languages out there. One feature I dislike about swift is the Optional type and the "?!" business, borrowed from Scala, I assume. It makes coding experience much less pleasant, yet providing little value-add. What is wrong with good old nil?