3 ms·
> We should consider that maybe Apple has been also optimizing software to be more performant. They absolutely do. You can see it in all their bundled programs
by handrous 5y ago
> We should consider that maybe Apple has been also optimizing software to be more performant.
They absolutely do. You can see it in all their bundled programs, too (except Xcode... sigh). Safari, Pages/Numbers/Keynote, Preview, Maps. All snappy and light on resources. None of them prone to slowing down unrelated things on your system. You can leave them open in the background for weeks and forget they're there.
There's also iOS and Android. Android's gotten better, but it's always needed more energy and faster hardware to approach iOS performance and UI responsiveness. The software's simply better, by that metric, anyway.
Another instance of this was visible in BeOS vs. Windows/Linux, back in the day. The difference was not subtle and was present even when running cross-platform programs, so it must have been BeOS itself (and its libraries, SDK, et c.) responsible for everything feeling way faster and more responsive.
- dwaite 5y ago> There's also iOS and Android. Android's gotten better, but it's always needed more energy and faster hardware to approach iOS performance and UI responsiveness. The software's simply better, by that metric, anyway. A significant portion of this is just requiring more efficient developer tools. - Generational GC vs ARC memory management accounts for a large (50-100%) increase in memory usage - JIT vs compiled code performance impacts - Swift value types vs Java (and Objc) class types removes further memory management pressure as well as allowing for significant memory savings. - The underlying OS model Apple has restricts the need to run code from multiple applications at one time to a small set of extension points. Android does allow for background processing (although you can't guarantee consistent/persistent processes). Of course you give all this up when you are just wrapping your javascript + web content up in an electron or similar framework. In that case, you are running at a fraction of the efficiency of either platform.