前言 本篇主要介绍Runtime在开发中的一些使用场景,顺便讲解了下MJExtension的底层实现 一.runtime简介 RunTime简称运行时.OC就是运行时机制,也就是在运行时候的一些机制,其中最主要的是消息机制. 对于C语言,函数的调用在编译的时候会决定调用哪个函数. 对于OC的函数,属于动态调用过程,在编译的时候并不能决定真正调用哪个函数,只有在真正运行的时候才会根据函数的名称找到对应的函数来调用. 事实证明: 在编译阶段,OC可以调用任何函数,即使这个函数并未实现,只要声明过就不…
一.非对称加密 - RSA : + 公钥加密,私钥解密: + 私钥加密,公钥解密: + 只能通过因式分解来破解 二.对称加密 - DES - 3DES - AES (高级密码标准,美国国家安全局使用,iOS操作系统内部使用,目前还没有发现过被破解的案例) 三.哈希散列函数 (摘要算法) 1.常见算法 - MD5 - SHA1 - SHA256/512 2.散列函数特点 - 算法是公开的 - 对相同的数据加密,得到的结果是一样的 - 对不同的数据加密,得到的结果是一样长的32位字符 由a-Z 0-…
前言 对于iOS开发中的网络请求模块,AFNet的使用应该是最熟悉不过了,但你是否把握了网络请求正确的完成时机?本篇文章涉及线程同步.线程依赖.线程组等专用名词的含义,若对上述名词认识模糊,可先进行查阅理解后阅读本文.如果你也纠结于文中所述问题,可进行阅读希望对你有所帮助.大神无视勿喷. 在真实开发中,我们通常会遇到如下问题: 一.某界面存在多个请求,希望所有请求均结束才进行某操作. 对于这一问题的解决方案很容易想到通过线程组进行实现.代码如下: 1 2 3 4 5 6 7 8 9 10 11…
一.iPad简介 1.什么是iPad一款苹果公司于2010年发布的平板电脑定位介于苹果的智能手机iPhone和笔记本电脑产品之间跟iPhone一样,搭载的是iOS操作系统 2.iPhone和iPadiPhone是手机,iPad是平板电脑 iPhone和iPad开发的区别UI元素的排布 \设计键盘API屏幕方向的支持… … 3.屏幕的尺寸 \分辨率在iOS开发中,只需要关注以下几种情况iPhone3.5 inch:320 x 480 4.0 inch:320 x 5684.7inch : 375…
一.CoreLocation 在移动互联网时代,移动app能解决用户的很多生活琐事,比如周边:找餐馆.找KTV.找电影院等等导航:根据用户设定的起点和终点,进行路线规划,并指引用户如何到达 在上述应用中,都用到了定位和地图功能,在iOS开发中,要想加入这2大功能,必须基于2个框架进行开发CoreLocation :用于地理定位,地理编码,区域监听等(着重功能实现)MapKit :用于地图展示,例如大头针,路线.覆盖层展示等(着重界面展示) 2个热门专业术语LBS :Location Based…
一.简介 1.在移动互联网时代,移动app能解决用户的很多生活琐事,比如周边:找餐馆.找KTV.找电影院等等导航:根据用户设定的起点和终点,进行路线规划,并指引用户如何到达 在上述应用中,都用到了定位和地图功能,在iOS开发中,要想加入这2大功能,必须基于2个框架进行开发CoreLocation :用于地理定位,地理编码,区域监听等(着重功能实现)MapKit :用于地图展示,例如大头针,路线.覆盖层展示等(着重界面展示) 2.MapKit框架的使用MapKit框架使用前提导入框架(Xcode5…
最近闲来无事去面试一下iOS开发,让我感到吃惊的,面试官竟然问怎么分目录结构,还具体问每个子目录的文件名. 目录结构确实非常重要,面试官这么问,无疑是想窥探开发经验.清晰的目录结构,可让人一眼明白相应的业务和职能,这也能体现开发者的经验和架构水平. 目前,我接触过的项目中,比较常规的两种结构:1.主目录按照业务分类,内目录按照模块分类(主目录按照MVC架构分类,内部根据项目模块分类) 优点:相对比较快定位对应的业务.缺点:模块相关类太过分散,需要来回切换寻找文件,不方便开发. 2.主目录按照模块…
Objective-C是基于C语言加入了面向对象特性和消息转发机制的动态语言,这意味着它不仅需要一个编译器,还需要Runtime系统来动态创建类和对象,进行消息发送和转发.下面通过分析Apple开源的Runtime代码(我使用的版本是objc4-646.tar)来深入理解Objective-C的Runtime机制. Runtime数据结构 在Objective-C中,使用[receiver message]语法并不会马上执行receiver对象的message方法的代码,而是向receiver发…
Runtime运行时特性详解 本文详细整理了 Cocoa 的 Runtime 系统的知识,它使得 Objective-C 如虎添翼,具备了灵活的动态特性,使这门古老的语言焕发生机.主要内容如下: 引言 简介 与Runtime交互 Runtime术语 消息 动态方法解析 消息转发 健壮的实例变量(Non Fragile ivars) Objective-C Associated Objects Method Swizzling 总结 引言 曾经觉得Objc特别方便上手,面对着 Cocoa 中大量…
本教程已针对Swift, iOS 8.3, Xcode 6.3及最新的Parse SDK(1.7.1版本)更新. 网络后台支持可以为你的App添加许多崭新的功能:不论是数据同步,社交分享,还是云端存储都可应付自如.作为一名专业的iOS开发者,如何才能为你的App添加服务器端的支持? 在本篇Parse教程中,你将会学到如何创建一个使用 Parse后台支持的App,此App主要功能为照片分享,包含用户登录.照片上传和照片墙功能.为了使你集中精力在aParse的实现上,本工程预先包含了一部分用户界面,…