I. Optimization of power consumption: (from: http://www.jianshu.com/p/4555704f9696?utm_campaign=maleskine&utm_content=note&utm_medium=reader_share&utm_source=weibo). Use NSDateFormatter and NSCalendar objects with high overhead. 2. Don’t refresh the page frequently NSArray, using index to find fast dictionaries, using keys to find fast NSSets, which are unordered, using keys to find fast, inserting/deleting fast 4. Use less operations to get rounded corners, whether view.maskToBounds or layer.clipToBounds will have a lot of resource overhead, must use rounded corners, it is better to make the image itself rounded 5. Lazy loading, do not create all subViews at once, but as needed. 6. Reuse can mimic both uITableViews and UicollectionViews. Instead of creating all subviews at once, create them as needed. 7. Image processing The image is the same size as the imageView, avoiding redundant computing. You can use the whole image, increasing the application volume, but saving the CPU adjustable image size, saving some unnecessary space CALayer,CoreGraphics, and even OpenGL to draw, consuming CPU 8. Cache,cache,cache(cache all needed) the server’s cache of corresponding results (picture) the cache of complex computed results (UITableView line height) 9. 10. Using ARC to reduce memory errors,dealloc needs to be overwritten and set properties to nil 11. Avoid large XIBs and storyboards, and try to use pure code to develop CPU layer 1. The interval of Timer should not be too short, as long as it meets the requirements 2. 3. Optimize the algorithm and reduce the number of cycles 4. Location and Bluetooth on demand, after location to turn off or reduce the location frequency