前言 随着用户的需求越来越多,对App的用户体验也变的要求越来越高。为了更好的应对各种需求,开发人员从软件工程的角度,将App架构由原来简单的MVC变成MVVM,VIPER等...
![240](https://cdn2.jianshu.io/assets/default_avatar/2-9636b13945b9ccf345bc98d0d81074eb.jpg?imageMogr2/auto-orient/strip|imageView2/1/w/240/h/240)
前言 随着用户的需求越来越多,对App的用户体验也变的要求越来越高。为了更好的应对各种需求,开发人员从软件工程的角度,将App架构由原来简单的MVC变成MVVM,VIPER等...
工厂模式分为简单工厂模式,工厂模式、抽象工厂模式三类。 简单工厂模式 1. 定义 简单工厂模式并不是常用的设计模式之一,它只算是工厂模式的特殊实现。可以根据不同的参数来实例化...
一、定义 装饰者模式动态的将责任附加到对象上。若要扩展功能,装饰者提供了比继承更有弹性的替代方案。 装饰者模式采用了多用组合,少用继承、对扩展开放,对修改关闭的OO原则。一个...
一、定义 观察者模式定义了对象之间的一对多依赖,这样一来,当一个对象改变状态时,它所有的依赖者都会收到通知并自动更新。观察者提供了一种对象设计,让主题和观察者之间松耦合。 二...
一、定义 策略模式定义了算法族,分别封装起来,让它们之间可以相互替换,此模式让算法的变化独立于使用算法的客户。 二、适用场景 1、 多个类只区别在表现行为不同,可以使用Str...
目录 Block底层解析什么是block?block编译转换结构block实际结构block的类型NSConcreteGlobalBlock和NSConcreteStackB...
目录 【如何快速的开发一个完整的iOS直播app】(原理篇) 【如何快速的开发一个完整的iOS直播app】(播放篇) 【如何快速的开发一个完整的iOS直播app】(采集篇) ...
技术 最近正在准备换份工作, 看到网上有份题库, 觉得不错, 准备整理下, 复习下所学知识, 为面试做足准备, 下面是我整理了一上午的题库答案, 希望能帮大家温习下知识; 当...
人和动物的根本区别在哪里?在思想上。人有逻辑思维和理性能力,但动物几乎没有。 智者与非智者的根本区别在哪里?也在思想上。智者拥有高超的逻辑思维和理性能力,而非智者基本没有。 ...
关于LLDB调试,很多iOS开发者可能就是停留在会下简单的断点,使用最多命令也就是po。无可厚非,这些简单的调试对于简单的问题来说应该是游刃有余。但是如果稍微复杂一些的问题,...
1.需求 1. 真机屏幕上显示Log 总感觉Xcode的控制台输出不怎么方便,代码在模拟器上跑还好.但很多情况下模拟器并不能满足开发需求,需要在真机上运行.既然我都在真机上运...
一个项目因为引用了一个系统目录的plist文件, INFOPLIST_FILE构建设置指定的名称信息.plist与你的目标相关。在构建目标,Xcode读取这个构建设置和复制r...
iOS开发过程中,使用的一些常用宏定义 字符串是否为空#define kStringIsEmpty(str) ([str isKindOfClass:[NSNull clas...
该文章属于<简书 — Timhbw>原创,转载请注明: <简书社区 — Timhbw>http://www.jianshu.com/p/edfed1b1822c 有些时候我们...
提示: 这仅仅只是逆向的一次尝试,如果你仅仅只是想单纯的修改步数,建议使用Healthkit的API修改步数,将会更简单。 为了纪念我失去的已越狱iPad, 不得不写点什么。...
写在开头: 作为一个iOS开发,也许你不知道NSUrlRequest、不知道NSUrlConnection、也不知道NSURLSession...(说不下去了...怎么会什么...
在日常开发过程中,为了提升程序运行效率,以及用户体验,我们经常使用多线程。在使用多线程的过程中,难免会遇到资源竞争问题。我们采用锁的机制来确保线程安全。 线程安全 当一个线程...
首先来分析一下什么是HTTPS以及了解HTTPS对于iOS开发者的意义 HTTPS 以及SSL/TSL 什么是SSL? SSL(Secure Sockets Layer, 安...