13的話
這週沒有什麼開發者新聞,所以就拿台灣還買不到的 M1 繼續轟炸各位。
🍴What went wrong with the libdispatch. A tale of caution for the future of concurrency
本文是 libdispatch efficiency tips 這份經典指南同一位作者最近發表的文章。他提到在 GCD 剛發表的時代,電腦 CPU 在時脈上已經難有突破,開始往多核心發展。Apple 告訴開發者,透過 GCD,thread 可以盡量開。而作者因為這樣而踏入了多執行緒的踩坑經驗。
後來 Apple 也發現他們自己也落入了許多濫用多執行緒的陷阱。包括 iOS 12 效能提升一個原因是把 daemon 的多執行緒改成單執行緒。
![Twitter avatar for @Catfish_Man](https://substackcdn.com/image/twitter_name/w_96/Catfish_Man.jpg)
![Twitter avatar for @Catfish_Man](https://substackcdn.com/image/twitter_name/w_96/Catfish_Man.jpg)
之後 GCD 也隨著 iPhone 的推出來到 iOS 上。雖然它的語法簡單好用,相對地就不容易防止濫用。因此我覺得複習一下作者的建議(libdispatch efficiency tips)滿好的。
同場加映 libdispatch 的設計者出來講講話
![Twitter avatar for @davezarzycki](https://substackcdn.com/image/twitter_name/w_96/davezarzycki.jpg)
![Twitter avatar for @tclementdev](https://substackcdn.com/image/twitter_name/w_40/tclementdev.jpg)
下一步呢?Swift 的 concurrent 吧
🔥更多的 M1 心得
首先,Peter Steinberger 的這篇文章很值得一讀,因為他的背景是做 SDK,各種 mobile 相關的情境都會遇到。包括 iOS、Android、Docker、虛擬化、各種開發工具等等。
連續推文,分析為何 M1 跑 Rosetta 也跑得很快(提示:Apple 作弊啊)
![Twitter avatar for @ErrataRob](https://substackcdn.com/image/twitter_name/w_96/ErrataRob.jpg)
拿來跑 Minecraft
![Twitter avatar for @marcoarment](https://substackcdn.com/image/twitter_name/w_96/marcoarment.jpg)
![Twitter avatar for @LukeMiani](https://substackcdn.com/image/twitter_name/w_40/LukeMiani.jpg)
Best Computer
![Twitter avatar for @AlexMartinFR](https://substackcdn.com/image/twitter_name/w_96/AlexMartinFR.jpg)
![Twitter avatar for @Janne_o](https://substackcdn.com/image/twitter_name/w_96/Janne_o.jpg)
快速切螢幕
DHH 評論
![Twitter avatar for @dhh](https://substackcdn.com/image/twitter_name/w_96/dhh.jpg)
回不去了
![Twitter avatar for @marcoarment](https://substackcdn.com/image/twitter_name/w_96/marcoarment.jpg)
續航力
![Twitter avatar for @jdalrymple](https://substackcdn.com/image/twitter_name/w_96/jdalrymple.jpg)
效能比較
![Twitter avatar for @robertjpayne](https://substackcdn.com/image/twitter_name/w_96/robertjpayne.jpg)
![Twitter avatar for @johnsundell](https://substackcdn.com/image/twitter_name/w_96/johnsundell.jpg)
![Image](https://substackcdn.com/image/fetch/w_600,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fpbs.substack.com%2Fmedia%2FEniLJTOXYAAQPf0.jpg)
![Twitter avatar for @bendodson](https://substackcdn.com/image/twitter_name/w_96/bendodson.jpg)
![Twitter avatar for @merowing_](https://substackcdn.com/image/twitter_name/w_96/merowing_.jpg)
![Twitter avatar for @sandofsky](https://substackcdn.com/image/twitter_name/w_96/sandofsky.jpg)
![Twitter avatar for @steipete](https://substackcdn.com/image/twitter_name/w_96/steipete.jpg)
坑:App Store 下載的 iOS App 會把機器認成 iPad Pro
![Twitter avatar for @marcoarment](https://substackcdn.com/image/twitter_name/w_96/marcoarment.jpg)
這下全錯了😂
![Twitter avatar for @Blankwonder](https://substackcdn.com/image/twitter_name/w_96/Blankwonder.jpg)
🕸Local Network Privacy FAQ
有在處理區網跟隱私的話,這是 Apple 官方整理的問答。比如「我要怎麼發起 iOS 14 的區網權限要求對話框?」(感謝 @KoromikoNeo 轉推)
⛏Comparing iPhone OS 1.0 with iOS 14 using tree maps
iPhoneOS 考古學。看看從 1.0 到 14 差了多少?
🏃第 12 屆 iT邦幫忙鐵人賽得獎作品
之前我貼過,但這次是得獎名單。跟 iOS 有關的:
💍另類承諾
![Twitter avatar for @Casey](https://substackcdn.com/image/twitter_name/w_96/Casey.jpg)
![Image](https://substackcdn.com/image/fetch/w_600,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fpbs.substack.com%2Fmedia%2FEnmwrb6VEAEUtij.jpg)
![Image](https://substackcdn.com/image/fetch/w_600,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fpbs.substack.com%2Fmedia%2FEnmwrb7UcAAxidG.jpg)
以上就是本期的內容。歡迎轉寄或推薦給同事或開發者朋友。有問題或回饋請直接回覆,或到我的 Twitter 留言。