2012-05-06 27 views
4

我想知道爲客戶提供的專業應用程序如何優雅,流暢,應用程序崩潰較少或沒有應用程序崩潰。因爲我總是看到問題主要是關於內存泄漏,NSZombie還是不夠好的表現。使用儀器測試iOS應用程序開發的最佳實踐

我發現解決儀器工具的一些問題非常好。但我只是熟悉內存泄漏和殭屍模板。當然,我認爲還有其他有趣的工具可以更好地跟蹤和修復我們的應用程序。 (系統使用情況,自動測試,等等..有什麼想法?)

我的問題:什麼是最好的策略,以銳利的儀器應用程序?推薦儀器模板或任何建議?

讓我們分享您的經驗和討論!

* 更新:*我可以問更多問題嗎?我應該將這個問題編輯到wiki嗎?我們可以分享戰略應該不僅僅是問題。

+0

只需按Cmd + I即可。之後,儀器將被打開,選擇你想用儀器做什麼和....當然,測試 – VietHung

回答

0

蘋果公司推出了稱爲自動引用計數(ARC)的甜蜜功能,​​它可以爲您提供幾乎所有的內存控制。你只需要設置屬性的弱/強參數。它消除了內存泄漏的幾乎所有問題。 至於工具 - 我不知道儀器以外的其他應用程序。樂器有所有...樂器:)我需要,用來做測試。

+0

,ARC是真正令人驚歎的功能在新的Xcode。幫助開發人員關注內存管理問題。但我認爲它是功能強大的應用程序中更重要的因素。 :) – Sakares

3

我主要(大約98.2%的時間)使用泄漏和分配模板。此外,許多人不知道 - 但在Xcode 4中,您可以使用Xcode中的樂器啓動應用程序。從頂部菜單中,選擇產品 - >配置文件。

此外 - 即使使用ARC,您仍應該意識到您如何使用內存以及如何分配對象。很多時候,ARC在做它的事情很好,但我的代碼中的一個小編程更改導致分配的對象少得多。 ARC在編寫代碼時會幫助你,但它不是沒有測試和分析應用程序以使其儘可能高效的藉口。

1

是的,儀器很關鍵。 ARC可以緩解一些最糟糕的內存問題。分析(在產品菜單上)也被低估。

退房程序123,改善您的應用程序,的穩定性在App框架部分,它具有許多其他問題,很好的討論,可能會影響你的代碼的穩定性WWDC 2011(我特別想測試的討論很好)。

最後,優雅不是工具的產物,而是優秀的設計。製作高雅的產品需要花費大量精力。擁抱HIG及其中包含的更廣泛的哲學主題。此外,請與尊重的開發人員進行代碼和設計評審。

1

CPU採樣器(Time Profiler)會告訴您程序在哪裏花費其執行時間。如果您的應用程序「速度慢」,則此工具通常可以幫助您確定問題出現在哪裏,以及(如果您瞭解您的程序)如何解決這些問題。

定期運行此儀器以瞭解您的程序以及他們依賴的抽象背後的實現 - 不要等到出現問題時再進行操作。


您可以使用CPU採樣器來記錄程序線程的調用堆棧。記錄頻率很高。採樣器顯示的信息包括花費時間最多的功能以及佔用的時間百分比。您可以向其調用者收取圖書館或功能,有效地選擇您想要的粒度,或隱藏您無法改變的內容。一旦你找到了你感興趣的功能/方法,你可以在樂器中查看源文件,它將打破你需要的很長時間。

+0

你可以通過使用CPU採樣器給我任何例子嗎?只是一些問題和解決方案。 (一些圖片描述很棒) – Sakares

+0

已擴展,但沒有圖片 – justin

相關問題