使用手機很常需要輸入文字,這時候虛擬鍵盤就會從螢幕底部升上來,因而擋住部分介面。在這裡iOS SDK並沒有自動調整介面,於是我們開發者每次就得自行處理,因為太常需要用到,於是就有高人寫的開源第三方套件IQKeyboardManager!
下載後匯入專案,不用寫任何一行程式,就能運行我們想要的功能!而且是每一頁面都預設套用,再也不用重複寫碼囉~
目前GitHub上有超過7000人打星。

在開發iOS App的朋友們一定都會遇到一些跟寫程式沒啥關係的坑!若沒有解決這些基本的設置,開發過程就會相當不順暢,像是我們想要把專案編譯到實機做測試,就需要透過供應配置文件 (Provisioning Profiles)來實現。儘管已經開發許久的老手,依然會像我一樣還是對這玩意兒半知半解呀⋯⋯
那麼我就趁這時候來記錄高手的教學吧~

身為程式設計師多年的我,陸續遇到開發與測試的各種奇異狀況,許多現象就如同這張表20個反應⋯⋯

20. “That’s weird…"
19. “It’s never done that before."
18. “It worked yesterday."
17. “How is that possible?"
16. “It must be a hardware problem."
15. “What did you type in wrong to get it to crash?"
14. “There is something funky in your data."
13. “I haven’t touched that module in weeks!"
12. “You must have the wrong version."
11. “It’s just some unlucky coincidence."
10. “I can’t test everything!"
9. “THIS can’t be the source of THAT."
8. “It works, but it hasn’t been tested."
7. “Somebody must have changed my code."
6. “Did you check for a virus on your system?"
5. “Even though it doesn’t work, how does it feel?
4. “You can’t use that version on your system."
3. “Why do you want to do it that way?"
2. “Where were you when the program blew up?"
And the Number One reply by programmers when their programs don’t work:
1. “It works on my machine."
如果要改動的地方很多的話,那就改天吧XD~
參考: The Top 20 replies by programmers when their programs do not work。
有時候會一直滑臉書動態,看著自己的朋友的生活是如此多采多姿,偶爾會顯示出鮮少聯絡的朋友,比如我就看到我台中二中當時的校長薛光豐,他是個讓我非常敬佩的校長,還記得他在升旗典禮的時候唱外婆的澎湖灣,至今已超過10年之久了⋯⋯

還記得大一剛學程式設計,就被這兩個玩意兒給搞糊塗,傳遞參照與值 (Pass by Reference and Value)有圖解的話就非常清楚囉~

有人問Reference咖啡顏色不一樣,是怎麼一回事XD~基本上Reference的杯子就是同一杯啦!半透明杯子表示並不是主體。
以物件的角度:
以咖啡的角度:
印象中還有個詞叫做Pass by Copy,我會把它當作跟Pass by Value一樣。
現在覺得能把複雜的概念簡單化的人很厲害,而不是把簡單的東西複雜化,若是衍伸出新的見解就另當別論囉~
這張圖是我看到靠北工程師粉絲團所貼,身為偽資深工程師的我看到貼文時常能會心一笑,我剛去英國留學一年的梅姬(Meggie)颱風有時候也會有感覺,想認識她的人可以參考氣象局這篇文章:當老師有暑假真好。
我使用固態硬碟的Macbook Air最近又常出現「空間不足」警告,可以參考我先前文章:Mac硬碟空間不足問題,那次有提到Xcode中的衍伸資料 (DerivedData),存放著我多年以來的專案暫存檔,數量之多佔據容量超過10GB。
現在我發現另一個空間更加肥大的原因,就是iOS 裝置支援 (iOS Device Support),因為我有在開發iOS App,時常需要拿實機做測試,當我開著Xcode等待,它會自動去判斷有無支援此裝置的作業系統,比如iOS 9.3.1、iOS 10.0.1,只要沒有該版本的支援,Xcode會從手機下載支援擋到預設路徑如下圖:
以至於空間再怎麼多,也會被這些作業系統支援檔給塞滿,所以我決定刪除比較不會用到的版本。

Xcode連結實機時,會出現上圖進度狀況,表示它正在從裝置下載作業系統支援檔到我的筆電。
我發現越高的作業系統支援檔容量越大,像iOS 10.0.1是2.9GB。
註:檢索筆電各檔案容量的軟體是OmniDiskSweeper。
參考:自己的經驗、Mac硬碟空間不足問題。
HappyMan・迴響