首先說這不是一個新技術,它很老,老到幾乎沒人提起它。
這是蘋果 MVC 模式下的產物,最早在沒有 iPhone 的時候就已經誕生了,它是用來配合 Xcode 圖形化設置界面用的——比如 NIB,當然,現在已經變成 XIB了,哦,還有 Storyboard。
現在如果說起要 bind 一個 Storyboard 中的對像到代碼中,你可能查到的都是這樣的:
在左側欄點擊鼠標右鍵打開小窗口[……]
首先說這不是一個新技術,它很老,老到幾乎沒人提起它。
這是蘋果 MVC 模式下的產物,最早在沒有 iPhone 的時候就已經誕生了,它是用來配合 Xcode 圖形化設置界面用的——比如 NIB,當然,現在已經變成 XIB了,哦,還有 Storyboard。
現在如果說起要 bind 一個 Storyboard 中的對像到代碼中,你可能查到的都是這樣的:
在左側欄點擊鼠標右鍵打開小窗口[……]
在之前的一篇文章中我為大家介紹了一個同時安裝多個版本 Xcode中 的工具使用 xcode-install 來管理 Xcode 版本但當你的系統中同時存在多個 Xcode 時,就會導致系統困惑,讓 Xcode 的插件無法被識別,主要的體現就是系統偏好設置中根本看不到 Xcode 插件的選項——就好像你完全沒安裝過它們一樣。
總之,我在這裡找到了答案
首先執行命令:
[crayo[……]
之前我曾寫過一篇文章macOS app 實現自動化 notarize 腳本,但並沒有提到使用代碼自動編譯並生成 App 的腳本,畢竟這一步有好多工具可以完成,比如說 fastlane。
我由於在 notarize 之前也沒想過做自動化,而在寫那篇文章的時候 fastlane 還沒有支持 notarized 上傳,於是我就自己寫了,具體的編譯命令是這樣的:
[crayon-67bb7f73a[……]
最近忽然發現磁盤存在大量寫入,打開任務管理器一看,發現一個叫做“lsd”的進程持續佔用 20% – 40% 中央處理器,很奇怪。
經過一番查詢,得知這個進程是 macOS 和 iOS 上的系統進程,全名叫做“Launch Service Daemon”,負責所有 App 文件類型關聯和啟動。但它的數據庫有時候會損壞,這就導致它頻繁讀取和驗證某些數據。
一旦它的數據庫損壞,你就會遇到 lsd[……]
平時,你會在安裝某個 Python 包時遇到這個錯誤,這個包肯定是一個包含了 C++ 代碼的包。
這是由於 macOS 更新後出現的不兼容,一般來說,這個包的維護者應該已經對這個特殊情況做出了兼容:
1 2 |
if platform.system() == 'Darwin': extra_compile_args += ['-mmacosx-version-min=10.7', '-stdlib=libc++'] |
這樣在 macOS 上就可以順利編譯通過了。
但如果你使用的是 PyPy,那可能即使維護者包含了這句話,你也無法成功安[……]
最近在做文本統計,用 Python 實現,遇到了一個比較有意思的難題——如何保存統計結果。
直接寫入內存實在是放不下,十幾個小時後內存耗盡,程序被迫關閉。如果直接寫入數據庫吧,每次寫入又太慢了,本來就十幾個小時了,這樣下去就要往星期上數了,也不是個辦法。
最後,我想到了一個兩者兼顧的方案——用內存做緩衝,達到一定量之後一次性將當前所有數據合併到硬盤裡。
但這樣就有一個閾值,如何確[……]