When we first looked at Swift last summer, we predicted it was Apple's future. Objective-C wouldn't go away any time soon, but Apple would almost certainly nudge developers toward the company's new baby for a few years before turning the nudge into a violent shove.
Such nudging has begun. For years, Apple has been adding new features and syntax to the Objective-C language, things like automatic reference counting and closures. These features have generally made it easier and safer to develop in a language that can easily let you shoot yourself in the foot or make ObjC a better fit for some of the design patterns of Apple's own frameworks.
This time around, ObjC gets a grand total of two new features. One of these is a useful feature stolen from Swift (generics); the second lets ObjC behave a bit closer to Swift's expectations (nullability). Realistically, the only reason either of them are here is to make it a bit easier for projects to mix code from the two languages. (Although ObjC developers did get a new tool to help diagnose memory-related crashes—see below—it's not a language feature.)
Swift, on the other hand... Swift gets bumped to version 2.0. This language has received a lot of attention. But let's be clear: a lot of that attention was needed to bring the new language closer to where ObjC was already. That doesn't mean that the new features aren't good; it's just that with one major exception, they're playing catch up.
The article covers the new features added to Swift, among them, error handling. Do those developing for the Apple ecosystem welcome the transition from ObjC?
(Score: 4, Funny) by Anonymous Coward on Tuesday July 28 2015, @12:03AM
+ 20 years experience with coding apps in Swift and Xcode
(Score: 4, Funny) by bob_super on Tuesday July 28 2015, @12:56AM
I'm already claiming a PhD and 6 patents on Swift optimizations for cloud-based mobile IoT low-latency social-network synergies compliant with BS3704
(Score: 2) by davester666 on Tuesday July 28 2015, @07:39AM
BS3704 stopped being relevant last week.
This week it's BS56023 and I have on good authority that next week, being compliant with NQ233452 will be in required for all code.
(Score: 0) by Anonymous Coward on Tuesday July 28 2015, @12:05AM
...still seems pretty incomplete as a programming language.
(Score: 2) by Nerdfest on Tuesday July 28 2015, @12:44AM
... and still closed?
(Score: 0) by Anonymous Coward on Tuesday July 28 2015, @01:38AM
If it can't compile on Linux, then its garbage.
(Score: 2) by theluggage on Tuesday July 28 2015, @12:08PM
... and still closed?
Apple have said [apple.com] that they will open source Swift 2.0 and contribute a Linux port.
(Before anybody mentions the "broken promise" over Facetime, that one can probably be chalked up to the patent system [arstechnica.com].)
(Score: 2) by Lemming on Tuesday July 28 2015, @12:19PM
No, in the WWDC keynote it was announced Swift will be open sourced (both compiler and standard library), and Apple will also provide a Linux port.
From the official blog [apple.com]:
(Score: 2) by bootsy on Tuesday July 28 2015, @09:24AM
As long as it is Turing complete.....
If you get a chance read "the Design and Evolution of C++" by Bjarne Stroustrup.
Adding in multiple inheritence so early into C++ was basically because Brad Cox of Obj C fame told Bjarne that adding it into C++ would be too difficult. The two of them were in competition to make a C like OOP language. I am not sure that this helped either language develop.
Objective C seemd pretty cool but it seems the core text book is out of print. How do people go about learning it these days? I assume there are some good web links?