今天要淺談一下,之前參加decard開發者分享的筆記,是有關開發上跟一些專案管理有關的筆記分享
https://fb.watch/g0418IFJQ
開發專案管理遇到的問題
在xcode中隨意移動Groups的檔案(夾),只是它在xcode中目錄結構改變了,它的實際儲存位置不受影響,原來儲存什麼位置,還是那個位置。
2.在xcode中修改Groups的資料夾的名字,group名字變了,資料夾的實際儲存名字不變,但如果修改Group的檔案的名字,實際儲存檔案的名字會變。
3.不管該group在xcode中如何移動,它對應的實際資料夾不變。
4.Group的資料夾都會對應盤上的一個實際儲存的資料夾位置。往這個group中新新增檔案,該檔案會儲存到group對應的實際資料夾中。
1.當有多個target的時候,必須 set the proper target membership for each file。
2.在finder中,專案的資料夾中可能有資料夾A,但是在x'code project中並沒有資料夾A,Because of the mismatch, locating files can get confusing。
Parallelism 並行性,也就是多人開發同個專案不會有上述問題發生,或是發生次數大大減低
自己的理解是,用來管理很多個project的方式。
以前我們的做法是,把客製化UI的檔案分成譬如model,畫面把它叫做view或是VC,把他分門別類,一個個模組化,這是把「整個APP」模組化
這裡其他兩個選項好像不符合DCARD的需求就沒有採用了,詳細原因我也忘了
這邊就是上面說的把APP模組化,這樣在呼叫的時候就可以向檔案一個個把他呼叫出來(個人理解)
如何優化Build time,靜態或動態庫太多,或是太大包都會對編譯時間有比較明顯的影響。
簡單粗暴的方法除了優化code,你換一台m1會更有感,起碼我是蠻有感的
優化code:
從cocoapods改用swift package來安裝第三方套件
較為主流的方式
我認為最簡單的套件管理方式
官方支持
支援的Package較少
會遇到的問題很多
簡化的定義流程:將檔案放入約定的目錄內即可一鍵打包。
簡化的 SPM 版本管理:Xcode 會根據定義檔案首行說明自動查詢相容的解決方案。
簡化的上手流程:不需要安裝工具,也不需要命令列安裝元件。
良好的持續整合能力:在完成專案配置以後,xcodebuild 無縫銜接,自動拉倉。
良好的相容性:可與現有的大多陣列件管理方案混用。
良好的除錯能力:斷點快狠準。
https://medium.com/彼得潘的-swift-ios-app-開發問題解答集/使用-spm-安裝第三方套件-xcode-11-新功能-2c4ffcf85b4b
https://xiaosean.github.io/ios/2018-04-06-IOS-package-manager/