- 博客(12)
- 收藏
- 关注
转载 iOS 底层实现 - KVO
简介KVO是基于观察者设计模式来实现的。 观察者模式:一个目标对象管理所有依赖于它的观察者对象,并在它自身的状态改变时主动通知观察者对象。这个主动通知通常是通过调用各观察者对象所提供的接口方法来实现的。观察者模式较完美地将目标对象与观察者对象解耦。 手动实现键值观察(代码示例) 被观察的对象Target(重写setter/getter方法) Target.h@interface Target
2016-11-24 22:29:49 408
转载 C语言预处理指令整理
什么是预处理指令?预处理就是在进行编译的第一遍词法扫描和语法分析之前所作的工作。说白了,就是对源文件进行编译前,先对预处理部分进行处理,然后对处理后的代码进行编译。这样做的好处是,经过处理后的代码,将会变的很精短。C源码在进行编译前会先经过预处理,预处理指令均以#开头,结尾没有分号(;)不是C语句。预处理器采用“语言符号”的分析方式,将空格作为区分标志之间的符号,一行作为一条指令,“\”可以将预处理
2016-11-10 16:00:24 522
原创 REST
什么是REST?REST即表现状态传输,Representational State Transfer。一种软件架构风格。它是一种针对网络应用的设计和开发方式,可以降低开发的复杂性,提高系统的可伸缩性。先说REST名称REST:REpresentational State Transfer = 直接翻译:表现层状态转移。这个中文直译经常出现在很多博客中。尼玛谁听得懂“表现层状态转移”?这是人话吗?
2016-11-10 09:08:12 678
转载 iOS - IM环信集成
发送语音AMR和WAViOS的AVAudioRecorder默认的保存格式是WAV格式,但是安卓中使用的是AMR格式,所以iOS录音发送前需要转换格式。昵称和头像环信提供了获取头像和昵称的两种方式:方法一 从APP服务器获取昵称和头像● 昵称和头像的获取:当收到一条消息(群消息)时,得到发送者的用户ID,然后查找手机本地数据库是否有此用户ID的昵称和头像,如没有则调用APP服务器接口通过用户ID查询
2016-11-09 17:19:34 891
原创 前后端分离开发
为什么要前后端分离开发?前端UI搭建得差不多了,可是后台的API还没有写好,那就丢下工作嗨起来?可惜这样的好愿望就被Mock和Swagger这样的破东西给毁了,项目可以解藕,人也是可以的,只要双方有接口文档的约定。接口文档解决方案1.Swagger,写起来太费劲,修改接口的同时还需要修护文档,增加工作量。 2.SosoApi,简化了Swagger的书写,但是把接口文档放在网上会有一定的安全隐患。
2016-11-09 08:36:58 699
原创 iOS - 默认NavigationBar
为什么要使用默认NavigationBar?1.自动实现Swipe To Pop动画2.结构清晰,代码容易维护影响默认NavigationBar的因素。App的两种结构方式 一、从LoginViewController是否释放,对默认NavigationBar的影响。UINavigationController从LoginViewController push过来的时候是否把LoginViewCo
2016-11-09 07:58:55 363
原创 iOS - AVFoundation
Recorder & Player1.Recorder // 设定存储路径 NSArray *pathComponents = [NSArray arrayWithObjects:[NSSearchPathForDirectoriesInDomains(NSDocumentDirectory, NSUserDomainMask, YES)lastObject], @"MyAudioMem
2016-11-08 11:21:40 394
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人