iOS架构 网络层设计选择

大量一次当然有才,少量多组才更伟大。

最早的时候,我是直接拿ASI的接口来做API调用的,情况可谓惨烈。

后来懂得多一点,知道对AFN进行封装,做集约型API调用。大多数外包项目都是集约型API调用,因为省事,即便以后不易维护。通过庞大的类来处理多种变化,这是一种非常不好的编程习惯。虽然在设计上省事,在修改维护上却是要命的。

然后慢慢接触到离散型API调用的网络层设计。离散弄API调用设计,说白了,就是一个API请求一个类。通过对每个API请求单独封装,将更有利于后期的业务开发和需求变更。

当前,我接触到的有三种离散弄API调用方案。分别是:分类、使用block回调的子类、使用delegate回调的子类。

1、分类

参考:http://www.brighttj.com/ios/ios-network-foundation.html

第一层:通过指定的API方法名、参数字典、请求回调,对底层网络库(AFNetworking)进行基类封装。

第二层:通过指定参数和默认参数配置参数字典,用API方法名向第一层发起请求。

第三层:接受事件,把请求所需定制参数传递到第二层。

2、使用block的子类

参考:https://github.com/yuantiku/YTKNetwork/blob/master/BasicGuide.md

3、使用delegate的子类

参考:http://casatwy.com/iosying-yong-jia-gou-tan-wang-luo-ceng-she-ji-fang-an.html

目前公司用的是“使用block的子类”。

后记(下面以聊家常为主,没时间没兴趣的朋友请直接忽略):

今天,我做了5组仰卧起坐,50个每组,一共250个,比昨天多了一组50个。随着规律健身的习惯慢慢养成,我发现自己在做事的心态上也有很大的变化。

我慢慢地变得不那么着急,开始重视每一天的积累,明白持续积累可以产生非常大的能量。技术上,但求每天在工作上或者书籍阅读上都能像健身一样,每天都做,每天都有所进步。

才开始写技术博客的第二天,就已经有人告诉我:你写得不好。

我以前会对这类事情非常着急,会努力去证明自己没有那么菜,会非常着急去跟别人一再斗嘴解释。

我现在没有了这些需求。

因为,我并不害怕别人发现我的技术不够高。相反,从一个足够低的水平,向一个足够高的水平不断努力,恰恰是我能给这个世界带来的最大价值。

很多资源跟我一样少,性格跟我一样差的朋友,也许他们看了我所做的努力,才会终于找到了一个已经在起跑线上落后非常远的自己,应该怎么去努力做好每一天。

就像交易策略一样,即使我用这个策略赚了再多钱,如果这个策略本身要求上千万的本金,那注定就跟绝大多数人是没有任何关系的。

在技术上同样如此,与其看到大厂大牛羡慕其牛B,还不如好好想想在目前这么受限的自己,怎么样才能下手去努力,提升自己。

所以,我现在认为:从小做起,从少做起,将会在“带人”上有更高的示范作用。

最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容

  • iOS应用架构谈 网络层设计方案 前言 网络层在一个App中也是一个不可缺少的部分,工程师们在网络层能够发挥的空间...
    其实也没有阅读 586评论 1 1
  • <iOS应用架构谈 网络层设计方案> 转自原博主: Casa Taloyum 原文链接: http://cas...
    金康帅阅读 1,131评论 0 13
  • 今天很残酷,明天更残酷,后天更美好 严寒过去就是春天,既然选择美乐家,就要用心细心经营美乐家,为人的事情做起来非常...
    党宇宝阅读 172评论 0 0
  • 1.创建Person类文件,继承NSObject2.创建Student类文件,继承自Person(父类)3.在Vi...
    Stormstout阅读 439评论 0 0
  • 时节已至带来的霜, 黄花垂叶浸入没有冰封的湖。 今早的冷又是如何美好, 天际凉透了晨霞。 车窗被染成了橘红, 那似...
    今聿阅读 211评论 1 2