- real ObjC compiler (clang) + runtime (unspecified)
- "modern" ObjC with ARC + Blocks
- C++ interop access to all Windows APIs
- C# integration "coming"
- Apps are full windows apps
- subset of iOS APIs
- OpenGL/ANGLE/CAEAGLLayer/EAGLContext, OpenAL, Sensor
- UIKit, CoreAnimation, CoreGraphics CoreText, "Touch"
- Nibs, Storyboards and Autolayout are supported
They don't claim or shoot for complete coverage or compatibility with a specific iOS version.
Swift is not there, dev said "coming", suit said "we have no comment" (the interaction between the young and slightly insecure program manager and the old and very comfortable dev. was fun to watch).
Project conversion is one-way and apparently one-time, which could be an issue. Dev immediately said "why not two-way, hey, that's a good idea, we'll do that". I think the suit was only half joking when he asked for the dev's mike to be cut...
I didn't quite get the philosophical musings about code generation. Huh?
Coroutines for C++ also looked quite neat, very light-weight/fast implementation (~cost of a function call).
It seems Microsoft actually wrote their own Objective-C runtime. I mean otherwise the guy would have said "we ported Apple's runtime" or something like that. But he said "We are providing you with a great Objective-C runtime."
EDIT: Definitely a new runtime written by Microsoft. The rest of the talk made that clear.
Microsoft looked at the API's that are most used by developers and implemented those first, but they will add more API's in the future.
A lot of stuff, like local notifications is directly mapped to WinPhone toasts. But at the same time you can directly use WinPhone API's from Objective-C, if you choose to.
And you can develop all using Visual Studio. This will be really interesting and fun.
What they want is to offer a way to get the million of iOS apps into Windows Phone.
How else are they supposed to convince developers such as myself to even consider buying a PC? With Apple dropping the ball with Yosemite, the opportunity is ripe for Microsoft to compete for quality devs and quality apps.
It's it's as good as it ever was. People have been complaining for every major release since 10.2 how the OS gotten more buggier, etc. Then a couple of point updates come and fix any major new bugs and the stop. Then, sometime around 10.x.6-8 a new version is relased and then they complain for the next release and remember the old one fodly. I have articles and blog posts with similar complaints from 10.5 and 10.7 and 10.8 and 10.9 with the same pattern. Even for 10.6, which was mostly a no-new-features release.
Second, even if they had, there's not much value in "offering to port Cocoa apps". Major apps are already cross platform (from Adobe stuff and Eclipse/Idea, to Cubase, Sublime Text and Mathematica, including Office, which MS itselfs makes anyway), and smaller Mac-Only apps don't have much to offer to Windows users, and wouldn't be much outside of the Mac ecosystem anyway.
You'd get what, Pixelmator and BBEdit? There are 4-5 established alternatives in Windows for each piece of Mac software.
Nope, I even have had a couple of issues (wifi related) which were solved in .2 update. But I also know that I had this or that issue everytime since 10.2 when I started using the OS. I also know I had tons of issues in Linux (been using it since 1997) and Windows (since 3.1), and I'm also a programmer, so I don't have BS expectations from something as huge as a complete OS and apps distro.
So, it's mostly a case of "have been following this space since 2002, including reading most forums, trade mags and blogs, so have a feel for what people compain about."
>There are serious documented issues with Yosemite that were not there in the previous OS X release, and, after multiple point updates still haven not been fixed.
Nothing special about those issues you posted. I post below a list of issues for Mavericks (tried to find similar or even the same). I can find for you similar items even down to 10.2, including lamenting articles about "buggiest release ever", etc.
As for the "and after multiple point updates still haven not been fixed", first we're at 10.9.3. So multiple is just 3 releases. Usually we get up to 7 or 8. And some even carry over or get fixed in the next version, especially if they don't affect many people.
And before dismissing "works for me" casually because of some issues online, note that with a user base in the 100s of millions, even a bug affecting 0.1% (with some weirdo network setup, bad HD sectors, broken hardware, haxies etc), it will still be reported by tens of thousands and appear bigger than it is.
Kernel task high cpu in Mavericks:
Broken DNS resolution in Lion / Mavericks:
Mavericks Finder bugs:
Mavericks Slow Finder:
More bugs for Mavericks:
10.5 Finder Data Loss bug:
Since 10.0, OS X got progressively better with every release up to 10.4. After that things got progressively worse.
Your are only proving our point.
>Since 10.0, OS X got progressively better with every release up to 10.4. After that things got progressively worse.
That things "got progressively worse" is just your opinion, not some general consensus. As I noted, others say 10.6 was the best. Others that 10.8 was the last great one. Others that 10.9 was just as good, but 10.10 blew it.
Heck, read Siracussa, for one, does he say that 10.4 was the pinaccle?
Microsoft is now making it possible to turn iOS apps into desktop apps (as well as phone and tablet apps) which is actually pretty interesting.
It won't help as much for porting your current mac desktop app, but it certainly is an interesting idea.
Funny..to me it always feels like Cocoa's slightly disabled kid brother. Curious, what makes it feel "grown up" to you?
I also enjoy the pre made view controllers.
Thus, they're adding clang integration, and an objective c runtime, and a way to run 'universal' windows 10 apps on xbox one, a rearchitected browser with modern js (asm.js!) and modern platform features (webgl!) etc etc etc. They just want devs to put their applications on Microsoft platforms, they're letting go of the desire to control every part of the platform & developer experience.
Compare this with how Apple has been aggressively pruning and scoping down their dev tooling, it's a pretty interesting contrast. They insist on controlling everything from beginning to end, which results in problems like not being able to build executables that support older versions of OSX with the official toolchain.
But what do you expect, everybody to pack up and go home?
I'm glad they are trying something/everything in order to bootstrap Windows.
Innovation happens when people are competing and fighting for the user's attention. Not when they are rolling in cash with no desire to do anything new.
At first Microsoft tried to copy exactly what Apple was doing and that didn't work. Now they're at least trying to compete with Apple in a way that leverages their advantages.