IOS里Request的斗争(上)

基本想好了怎么写,并且也在这一周开始抽出时间兑现之前的预告。

  首先,如果我们打进ASIHTTPRequest和NSURLConnection在baidu里面,大家可以立刻发现到CSDN gnicky的文章,这位前辈介绍了关于为什么我们需要选择ASIHTTPRequest而不是NSURLConnection。这位前辈其实把Stackoverflow里面的文章摘出来了一下(其实就第一段,后面两段,我已经不知道前辈的目的为何了),我们来看一下原文:Why should I prefer ASIHTTPRequest over NSURLConnection for downloading files from the web?。我发现是好几个人的答案的ctrlCV(那叫做归纳么!)

  那我来归纳一下:一,ASI有更多的代理。二,ASI有更好的缓存机制。三,NS会出现数据溢出。四,没什么bug。五,由于封装,简单易用。

  相比之下,另外有个以NS封装的包,叫做AFNetworking,ASI与的比较呢?

  这里又有两篇文章:刺月舞星 和 高嘉峻我们可以在高嘉峻前辈文章中看到,无论是代理的完整性,运行速度上,优化上,bug问题上,ASI都大大超越了AF。那为什么我们还要选择ASI呢?注意:读文章一定要看时间!(我就不说三次了,但这很重要!)

  stack里的回答是4年前的,高嘉俊前辈的文章是13年的,刺月舞星的表格是14年的!

  而在这几年里,IOS的原生进化,以及AF的版本更新已经大大改变了现在的格局。而ASI呢?早在11年,它就停止了更新。

  那现在怎样呢?刺月舞星前辈显示了AF性能开始逐渐超越ASI的事实,而另外一边在Stackoverflow上,ASIHTTPRequest vs AFNetworking vs NSUrlRequest这里的问答也显示了AF的持续更新,和NS在IOS7上的进步和在SWIFT上的原理相似性。收到了更多同行们的支持。

  我们看到,这里stack的回答是更新到14年的。所以,在言论上,已经倾向了AF。

  但是,这不够。

  做程序的时候,最重要的部分,是never just simply trust others before you try it!

  那我们在下章就要开始对ASI和AF的实验了。

=======================这是来刷存在感的分割线======================

我总是觉得,一次性不要讲太多内容比较好,人总是先要记忆再消化的。但是,记忆是很奇妙的。擅长记专业的人不见得会对其他东西会有记忆。比方说我一个做了律师的小伙伴,法条案例背的各种熟,但是自己的事情,大家讨论过的事情就是记不住。往往明明昨天刚说过的东西,一觉睡完就忘光了。

“嘿嘿,幸好微信都有记录呢。”

“你脑容真的需要检查一下了。。。”

“你记住了不就好了嘛!”

“我又不是你的云盘!”

于是第二天又是类似的对话。。。

=======================这里是深夜食堂的分割线======================

下午喝一杯咖啡,真的是很惬意的事情,想来也知道当年Java的名字由来也是来自于咖啡。紧张的生活或许能做更多的工作。但是,往往放松反而是种激发灵感的方式。

时间: 2024-10-27 02:48:48

IOS里Request的斗争(上)的相关文章

iOS开发基于MVC项目上重构举例

上一次我们讨论了iOS重构在MVC项目上的可行性,今天具体来讲基于MVC的项目重构步骤以及重构后的结构. 思考要解决的问题 回到项目重构的问题上来,我认为项目重构首先要想清楚的问题: 项目层级如何划分? 大的业务场景有哪些? 将UIViewController归类为View还是Controller? 谁来负责网络请求,Model还是Controller? 从Model中取得数据后Controller怎么把数据传递给View去展示?按照View层级逐级传递?是否需要使用ViewModel? Mod

iOS开发中文件的上传和下载功能的基本实现-备用

感谢大神分享 这篇文章主要介绍了iOS开发中文件的上传和下载功能的基本实现,并且下载方面讲到了大文件的多线程断点下载,需要的朋友可以参考下 文件的上传 说明:文件上传使用的时POST请求,通常把要上传的数据保存在请求体中.本文介绍如何不借助第三方框架实现iOS开发中得文件上传. 由于过程较为复杂,因此本文只贴出部分关键代码. 主控制器的关键代码: 复制代码代码如下: YYViewController.m#import "YYViewController.h" #define YYEnc

关于request.getInputStream方法上传文件

之前有做过一个上传图片的功能,找到的资料全部都是用框架做的,当时为了尽快完成任务,就拿过来修修改改直接放线上了.对于我这样的菜鸟,任务虽然完成了,可当前更重要的是个人的技术提升.然后我又开始乱想了.经理说平时把基础多看看,嗯,上班也有一年了,年后我也写了日记进行了深刻的反思,然后重新给自己定位.理所当然的是最开始的一层,就是买家具用的人,对于各种技术都只是研究它是做什么的,怎么使用.只能拿过来用,也只会拿过来用.能力还不足以吃透它的底层和核心.再多的技术拿过来都只是会用.虽然这是做项目必备,而我

iOS 真机调试(史上最详细步骤解析,hmt精心打造)

/*************************************************************1********************************************************************/ /*************************************************************2******************************************************

iOS手势 规避同一界面上不同子界面同时响应多个手势

最近在项目中遇到这样一个有关iOS手势的问题,首先需求描述如下:“在一个CollectionView中,要求长按不同的cell,产生一个cell的snapshot,此时可拖拽这个snapshot再进行后续的操作(如拖到view的某个位置出发一个事件)”.需求本身并不复杂,但要求每次只能有一个cell响应长按手势,不允许同时有两个或以上的cell响应长按手势. 我们知道UIGestureRecognizer有很多回调和方法可以兼容同一个View上的多种手势,网上相关的教程也很多,比如: http:

iOS开发之在地图上绘制出你运行的轨迹

首先我们看下如何在地图上绘制曲线.在Map Kit中提供了一个叫MKPolyline的类,我们可以利用它来绘制曲线,先看个简单的例子. 使用下面代码从一个文件中读取出经纬度,然后创建一个路径:MKPolyline实例. 1 -(void) loadRoute 2 { 3 NSString* filePath = [[NSBundle mainBundle] pathForResource:@"route" ofType:@"csv"]; 4 NSString* fi

iOS开发助手、ipa上传工具、苹果APP快速上架辅助工具Appuploader

ipa上传助手Appuploader是一个iOS APP上架辅助助手,帮助开发者可以快速的申请iOS证书打包ipa文件上传到App Store审核. 非常方便的iOS上架助手,提升上架效率. ipa上传助手Appuploader官网 ipa上传助手Appuploader介绍 一.可以在Windows系统直接申请iOS证书上传ipa(不用苹果电脑也不用装Mac虚拟机) 二.帮助不懂上架流程.初次接触上架的开发者,快速掌握上架流程 在这可以学习iOS证书申请和各类证书用法.打包ipa文件.测试iOS

说说iOS与内存管理(上)

http://www.cocoachina.com/ios/20150625/12234.html 说起内存管理,看似老生常谈,而真正掌握内存管理的核心其实并不简单.ARC/MRR以及“谁分配谁就负责释放”这种基本原则是很重要的,但不是本文要讨论的重点.之前本人还没在小站发过相关的文章,本篇文章中,我本人是想结合实际开发和调试中遇到的一些细节问题,来谈谈iOS的内存管理内在机制和调试方法. 上一篇文章已经是4月份的了,时间飞快又过去了好久,小站5月份没有文章更新,罪过罪过.最近小站的站长我又转换

iOS 网络请求 NSURLSession 的上传文件方法

NSURLSession/NSURLConnection的上传文件方法 此篇文章的理论基础主要是与HTTP网络通信协议相关.为集中精力,可以先把TCP/IP协议这些置之不理,也就是先只关注HTTP的请求和响应的结构.HTTP完整的原理内容就此略过.在此只略提相关内容.文中涉及的设计源码可以通过这里获取 https://github.com/wuqingjian2015/uploadHelper,有意者可以去看看. HTTP是干什么用的呢? 先考虑一下以下应用过程: 从客户端向服务器端发起一个请求