作家
登录

iOS如何进行优化项目?

作者: 来源: 2017-07-31 08:31:53 阅读 我要评论

  •                 } 
  •             } 
  •             timeoutCount = 0; 
  •         } 
  •     }); 
  •   
  •   
  • static void runLoopObserverCallBack(CFRunLoopObserverRef observer, CFRunLoopActivity activity, void *info) 
  •     LagCollectionTool *tool = (__bridge LagCollectionTool *)info; 
  •     tool->activity = activity; 
  •   
  •     dispatch_semaphore_t semaphore = tool->semaphore; 
  •     dispatch_semaphore_signal(semaphore); 
  • 不过也有些弊病:

    1. 须要手动保护DNS解析表,解析掉足后须要一套容错筹划,包管接口的通顺

    2. HTTP请求可以经由过程设置header中的host字段进行收集请求,HTTPS请求还需额外设备,受限于篇幅原因,具体的弊病和解决办法可以浏览下这篇文┞仿HTTPDNS在iOS中的实践

    2.3.3.2 收集请求缓存优化

    实用处景:一些更新频率较低的场景:比如小我中间

    App端第二次请求该接口,Header中传递本地缓存的Header中的Last-Modified,如不雅办事器端的资本并未产生变更,则会返回HTTP Status为304,我们直接可以应用本地的缓存,传输流量更少,相对而言,用户的等待时光会更短

    关于收集请求缓存,App端的收集请求对面到后端更多的是增删改查,这个方面须要和后端合营,是否资本改变即后端是否须要从新检索或修改数据,这个时刻我们就须要一个value比如时光戳Last-Modified或者标识ETag来告诉办事器本身当前的资本标记,今朝常用的策略为:

    以时光戳Last-Modified为例

    1. App端第一次请求接口,办事端返回成功,HTTP Status为200,并且在返回的Header顶用Last-Modified注解办事器中该资本最后被修改的时光

    2. 注:

      量化而非猜测,这是我们开辟过程中的一个原则,当碰到机能问题时,我们可以应用instruments来测量实际运行过程中的各个参数,找到问题地点(建议真机调试而不是模仿器,真机才能更高的还原机能问题)

      instruments对象常见功能

      点击右上方加号还有更多对象+

      instruments中对象都有各自的用处,比如可以应用Leask查看App运行过程中的内存泄漏,应用TimeProfiler查看App启动耗时或者办法耗时,或者偷懒一点可以应用CACurrentMediaTime()两次的差值计算办法耗时

      4. 收集缓存有做吗,UIWebView / WKWebView的常用静态资本做缓存了吗

      受限于篇幅原因,有些点也是一概而过,iOS中若何优化一个项目,这是一门很深的学问,常识点范围很广,我也执偾涉及到了一部分,学无尽头嘛,完成工作的同时我们也可以做一个酷酷的法度榜样员,学学Haskell去体验下函数式编程思维的乐趣,或者搞搞LLDB更好得做个Debugger

      最后,异常感激您浏览这篇文┞仿,如不雅我的文┞仿产生了赞助,可以给一个小小的红心??,迎接去我的小站www.manoboo.com拍砖啦,我会尽力创作更好的文┞仿

      2.1 UITest & UnitTest

      文中引用到的文┞仿如下:

      CocoaChina - iOS 及时卡顿监控

      iOS Core Animation: Advanced Techniques 中文译本

      文中所涉及到的开源库如下:

      PLCrashReporter

      MBNullSafe ManoBoo编写的NullSafe库,会进一步拓展功能

      【编辑推荐】

      1. iOS 10概念作品来了:阴郁模式看上去高大年夜上
      2. ios10新增9大年夜功能Gif详解,听肾哭的声音
      3. 卷积神经收集不克不及处理“图”构造数据?这篇文┞仿告诉你谜底
      4. 长文解密卷积神经收集体系构造
      5. 卷积神经收集不克不及处理“图”构造数据?这篇文┞仿告诉你谜底
      【义务编辑:张子龙 TEL:(010)68476606】

      DNS办事商(如万网)解析出现故障造成的大年夜批量用户无法正常应用App,按天计算。。



    3.   推荐阅读

        从交通三元素看高德易行新平台

      “高德易行平台的上线,标记住高德地图在交通出行计谋进级上迈出了重要一步。其实交通在我看来竽暌剐三元素,就是人、车和路,它们构成了交通核心的关键词。将来高德将以易行平台与交>>>详细阅读


      本文标题:iOS如何进行优化项目?

      地址:http://www.17bianji.com/lsqh/36461.html

    关键词: 探索发现

    乐购科技部分新闻及文章转载自互联网,供读者交流和学习,若有涉及作者版权等问题请及时与我们联系,以便更正、删除或按规定办理。感谢所有提供资讯的网站,欢迎各类媒体与乐购科技进行文章共享合作。

    网友点评
    自媒体专栏

    评论

    热度

    精彩导读
    栏目ID=71的表不存在(操作类型=0)