一般開發者總是會認為從頭到尾都用code去產生的效能會最好,事實上這個觀念也沒有錯,Matt Gallagher 針對 UITableView 的顯示進行了比較,一方是由InterfaceBuilder產生,另一方用code來建立視圖。

不出所料,模擬器上code大勝20%

但是在實機上,一開始Code贏了15%,不過第三個cell之後,卻由NIB(XIB)開始領先了17%。

再經過微調每個儲存格中字型不要自動符合大小 label.adjustsFontSizeToFitWidth = NO 之後,實機上code還是小贏7%

這可以證實不一定每次都是自己寫code效能最好,就算在模擬器上是,但實機上的差距還是微乎其微。除此之外也要取決於你使用哪種view的組件,有些的確在NIB(XIB)上load會比較快。Sam個人的感覺是,你覺個哪個用起來爽就用哪個...如果真的想用code產生,也要有足夠的動機與理由來證實的確比較快,否則只是拘泥在形式上罷了。
大家應該都聽過越獄女神(JailBreaker,JB) Erica Sudan吧?在她的書裡,全部都是用code產生...這是題外話...呵呵
用得順手
回覆刪除別出狀況
那就好囉~
要寫好效能的程式,就不能這樣想
回覆刪除就我目前看到國外論壇討論的,用NIB產生UITableView的狀況就很多