サクサク読めて、アプリ限定の機能も多数!
トップへ戻る
iPhone 16
www.mikeash.com
We're back! During the week of WWDC, I spoke at CocoaConf Next Door, and one of my talks involved a dissection of objc_msgSend's ARM64 implementation. I thought that turning it into an article would make for a nice return to blogging for Friday Q&A. Overview Every Objective-C object has a class, and every Objective-C class has a list of methods. Each method has a selector, a function pointer to th
One of the persistent topics of discussion in the world of Swift has been the question of when to use classes and when to use structs. I thought I'd contribute my own version of things today. Values Versus References The answer is actually really simple: use structs when you need value semantics, and use classes when you need reference semantics. That's it! Come back next week for.... Wait What? T
Since the introduction of Swift, speed has been a key selling point. Indeed, it's right in the name of the language. It's said to be faster than dynamic languages like Python or JavaScript, potentially faster than Objective-C, and even claimed to be faster than C for certain cases. But how exactly does it do it? Speculation While the language should allow for great performance, the current compile
Ever since the iPhone 5S was announced a couple of weeks ago, the world of tech journalism has been filled with massive quantities of misinformation. Unfortunately, good information takes time, and the world of tech journalism is more about speed than accuracy. Today, as suggested by a variety of readers, I'm going to give the rundown of just what 64-bit ARM in the iPhone 5S means for you, in term
Introducing the Game of Life screensaver with the highest system requirements in history! But it may be one of the fastest.... This Life screensaver runs almost entirely on your graphics card. The logic is written as an OpenGL shader, with just a bit of extra programming to glue it all together. This screensaver gets 22fps on my PowerBook G4 running at a 1x zoom fullscreen at 1280x854 while using
Since the moment Apple announced it, readers have asked me to write about Automatic Reference Counting, or ARC. Today is the day. I'll talk about Apple's new memory management system, how it works, and how to get the most out of it. Conceptual The Clang static analyzer is a really useful tool for finding memory management errors in code. If you're like me, you've looked at the output of the analyz
Blocks are perhaps the most significant new language feature introduced by Apple in years, and I've written a lot about them before. The new C++ standard, C++0x, introduces lambdas, a similar feature. Today, I want to discuss the two features and how they are alike and how they differ, a topic suggested by David Dunham. Terminology I will refer to Apple's blocks extension as "Objective-C blocks" e
Welcome back to another edition of Friday Q&A. I'm back from my break and ready to bring you more programming goodies. This week I want to take Landon Fuller's suggestion to write a followup to my original Friday Q&A on blocks now that the design is finalized and code available for them. Although Apple has yet to ship blocks with any of their developer tools, they have released code for their bloc
Welcome back to Friday Q&A. This week's edition lines up with Apple's release of Snow Leopard, so I'm going to take this opportunity to open up the discussion on previously NDA'd technologies and talk about some of the cool stuff now available in Snow Leopard. For this week I'm going to start what I plan to be an ongoing series on Grand Central Dispatch, a topic suggested by Chris Liscio. What Is
Welcome back to another Friday Q&A. Now that WWDC is behind us, I'm back on track to bring you more juicy highly-technical goodness. Maybe I can even get back to doing one a week.... This week I'm going to take André Pang's suggestion of discussing process memory statistics (the stuff you see in Activity Monitor or top) in Mac OS X. Memory Structure Before I can discuss what the stats mean, I firs
Book The Complete Friday Q&A, advanced topics in Mac OS X and iOS programming. GitHub My GitHub page, containing various open-source libraries for Mac and iOS development, and some miscellaneous projects
News: QTAmateur 1.0.1 (released March 9th, 2006) brings minor bug fixes and a Universal binary. QTAmateur is a small, simple QuickTime video player. It can play any format that QuickTime can understand, handle fullscreen video playback, and export files to any format that QuickTime can write. QTAmateur includes a Batch Export function which can convert any number of movies at a time to another for
このページを最初にブックマークしてみませんか?
『www.mikeash.com』の新着エントリーを見る
j次のブックマーク
k前のブックマーク
lあとで読む
eコメント一覧を開く
oページを開く