4 ms·
> Unfortunately 95% of the complexity is in the massive API set, not language syntax. Can't agree with this more. I'm a web developer (with Scala experience) a
by krat0sprakhar 12y ago
> Unfortunately 95% of the complexity is in the massive API set, not language syntax.
Can't agree with this more. I'm a web developer (with Scala experience) and was watching the WWDC live streaming. As soon as I heard about Swift I had just one aim - download Xcode 6 and give the playground a go. Within two days, I managed to go through the iBook on Swift. But I still don't have a single app ready. Most of swift tuts teach only about the language and the Obj C tuts are hard to port (for a beginner). The new language is surely more approachable to newcomers but its still going to take time to learn the Cocoa framework, Storyboard and other parts involved in building an app.
- mqsiuser 12y agoYES, how can we spend so much time on the 10 things a programming LANGUAGE consists of? Vendors: Get things right (so you won't trap yourself). I am not interested in your switch statement syntax NOW & I'll just pick it up and just use it THEN (including it's quirks, but hopefully vendors learn)
- vyshane 12y agoWell, to be fair, Apple have other books that cover Cocoa and Cocoa Touch. A book about Swift is... about Swift.
- joeblau 12y agoYes yes yes. I'm currently porting a Alpha prototype app from Obj-C to Swift and I was telling someone on last Sunday that "Swift won't save you." The syntax is great, but it ignores so much of what's complex about building an iOS app. With the new Adaptive Layouts, the layout engine is now more complex, knowing the delegate methods is still crazy, Xcodes native auto-complete is still hot garbage and you're still going to need to understand obj-c in some capacity if you're using any legacy libraries. Swift is best if you already knew what you were doing. I guess it looks nice for newcomers, but we'll see how people take to it over the next few months.
- solarexplorer 12y agoYes, Cocoa is very complex. But I hope that a language like Swift will make it easier to come up with high level libraries that hide some of that complexity. We'll see what happens. Personally I feel that with Swift instead of Objective-C I lost a millstone around my neck...
- asolove 12y agoThat said, the Cocoa/iOS ecosystem has better resources for diving deep into its style and capabilities than any other I have worked with. The Big Nerd Ranch set of books [1] is fantastic. It explains "how we do things" and "how we learn about new things" for its community better than any other book for any other community I've tried. It doesn't just teach a language or show a few examples, but actually walks you through the experience of reading documentation for, playing around with, and ultimately building a finished app using a new API or part of the ecosystem. After you're done with the books, there is plenty to learn, but you know where to look and how to go about doing it. Then I compare that to what it took me to become a web programmer. While it seems "easy" now, the amount I had to read about http, OSes, browsers, the dom, security, performance, etc. is astonishing. Without any of these topics, I would have made terrible mistakes. And each of these topics was covered in a separate book, which often showed best practices for that topic mixed into code using poor practices with regard to the other topics. [1] http://www.bignerdranch.com/we-write/ http://www.bignerdranch.com/we-write/
- krat0sprakhar 12y agoAbsolutely. I am quite averse to IDEs (prefer Vim) but Xcode is just fantastic! Committing the massive iOS API to muscle memory seems next to impossible and I'm glad Xcode makes your life so easy (Can't say that about Android / Eclipse certainly). PS: Much thanks for Big Nerd Ranch! Didn't know of these guys before.
- pookieinc 12y agoI'm the same way (averse to IDEs, preferring Vim over them) and while I haven't tried Xcode, I've got to say, I'm really enjoying the opposite direction of Visual Studio. Especially with ReSharper, it's one of the better IDEs I've used. Haven't tried the latest VS (2013) but 2010 and 2012 have been great. The only thing is, as of late, VS2012 feels a bit chunkier than 2010 did, making it feel slower. Having said that though, it's still very usable. It's nice to have Vim for my Ruby/Python scripts and something like Visual Studio for C#, I really don't mind given the lovely environment it provides.
- 12y ago
- kensai 12y agoYou are right, but I really want to be optimistic here. The moment the language is stable and officially released this fall, I am expecting Apple to give a "Swift treating" to its entire toolchain, including the APIs written in Objective-C and C. This won't happen in a couple of days, obviously, more in a couple of years or even more. But we SHOULD expect this, sooner or later, otherwise Apple will be stuck to support Objective-C for long. The whole point of Swift is to make the entire development endeavor easier, thus Objective-C should eventually become deprecated. This can happen only when the APIs are rewritten from scratch in Swift, something that will take a lot of time. (do not worry, even if Objective-C becomes deprecated, we should expect at least 5-10 years before it becomes completely outdated to the point that Apple drops it entirely)