4 ms·
> Win32 should be in a nursing home right now awaiting death. It is well tested, has high performance due to its heritage, and is really damn flexible. You ra
by com2kid 13y ago
> Win32 should be in a nursing home right now awaiting death.
It is well tested, has high performance due to its heritage, and is really damn flexible. You rarely find yourself going "well that isn't possible" with Win32 given how many iterations the API has been through.
Unfortunately making a general purpose API of any sort tends to get ugly as more and more stuff is added to it, and then add in legacy requirements, and yes things are pretty icky at times.
But any other API that is capable of as much as Win32 is would end up looking almost as bad, minus a lot of the legacy cruft, except of course in the time it takes to develop such an all encompassing API, you'd end up with legacy cruft all of your own!
- revscat 13y agoThe same could be said of Cocoa.
- dottrap 13y agoCocoa (like everything) has some rough patches, but overall is clean, elegant, and has a pretty consistent feel and vision. Proof is that ARC exists. This is the only reason compiler tools like ARC are possible. If Cocoa were too inconsistent, ARC could not be exist. Given that Cocoa's origins are from the 80's (NeXT) and Foundation is still with us today on iOS (and UIKit is very similar/familiar to AppKit), this is an extraordinary accomplishment and it has succeeded better and longer than any of its contemporaries.
- lloeki 13y ago> Cocoa (like everything) has some rough patches, but overall is clean, elegant, and has a pretty consistent feel and vision. Exactly. Also, Apple has the courage to regularly deprecate and subsequently remove things from Cocoa/Core/Darwin, keeping it clean, focused and elegant. Which bring us to the GGP comment: > But any other API that is capable of as much as Win32 is would end up looking almost as bad, minus a lot of the legacy cruft, except of course in the time it takes to develop such an all encompassing API, you'd end up with legacy cruft all of your own!* To which I disagree wholeheartedly (not just because of Cocoa, but every single sane API out there regularly deprecates then drops stuff). Win32 accreted features around a core of cruft like a black hole. The only solution for Microsoft is to relegate the 8/16/32bit heritage lying at its core and drop it dead as it's collapsing under its own weight. Which is what they did with the Win8 internal design, where Win32 is relegated to a gangrenous limb awaiting to be severed.
- rsynnott 13y agoAh, but what is Cocoa? :) In practice, Cocoa has had at least two major refreshes; a major overhaul of AppKit in the NeXT->MacOS transition, and the replacement of AppKit with UIKit for iOS (and I'd be sort of surprised if AppKit isn't eventually deprecated and replaced with a UIKit derivative on the desktop; UIKit smooths a lot of the rough edges). Bits get added to Win32, but it hasn't really had much substantive change to existing stuff in a very long time.