提要 刚开始学习iOS开发时用到了Cocoapods,安装时踩了许多坑,现在总结一下之前的安装经验 1. 先安装Homebrew 可能遇到的问题: 安装Homebrew时总是...
提要 刚开始学习iOS开发时用到了Cocoapods,安装时踩了许多坑,现在总结一下之前的安装经验 1. 先安装Homebrew 可能遇到的问题: 安装Homebrew时总是...
官方给出的dealloc 翻译 外部在什么情况下会触发dealloc方法? 当一个对象retain count为0 (不再有强引用指向)时会触发dealloc。 注意直接把n...
获取当前设备可用内存及所占内存的头文件 获取当前设备可用内存(单位:MB) 获取当前任务所占用的内存(单位:MB)
ios本地数据存储有哪几种方法 1.NSUserDefaults类 2.Plist文件 3.归档接档 4.数据库 sqlite CoreData 5.第三方数据存储框架 6...
整理的一些iOS面试相关问题,持续更新,敬请关注 1、2018 iOS面试题---UI相关:事件传递,图像显示,性能优化,离屏渲染[https://juejin.im/pos...
上周写了篇关于iOS 分类的文章,我们可以在分类中定义属性,但只是定义了属性,编译器既没有生成相应的setter和getter方法,也没有生成对应的成员属性。如果想给对象动态...
实体与实体之间有3种对应关系,这些关系也需要存储下来 在开发中需要对存储的数据进行一些处理,用到内置的一些函数 视图用于完成查询语句的封装 事务可以保证复杂的增删改操作有效 ...
查询的基本语法 select * from 表名;from关键字后面写表名,表示数据来源于是这张表select后面写表中的列名,如果是*表示在结果中显示表中所有列在selec...
使用命令连接 命令操作方式,在工作中使用的更多一些,所以要达到熟练的程度 打开终端,运行命令 mysql -uroot -p回车后输入密码,当前设置的密码为mysql 退出登...
在面试中,三次握手和四次挥手可以说是问的最频繁的一个知识点了,我相信大家也都看过很多关于三次握手与四次挥手的文章,今天的这篇文章,重点是围绕着面试,我们应该掌握哪些比较重要的...
Runtime的特性主要是消息(方法)传递,如果消息(方法)在对象中找不到,就进行转发,具体怎么实现的呢。我们从下面几个方面探寻Runtime的实现机制。 Runtime介绍...
工具[StarUML](链接: https://pan.baidu.com/s/14P7sHJ17euRJqgVI-7t_Mw) 密码: yjfv 什么是ULM,它可以干什么...
前言:Method Swizzling是利用Objective C动态替换方法的IMP(执行函数)。常用的场景有两个:1.Debug某些复杂函数; 2.在某无法修改源代码的S...
为分类添加属性 如果我们直接给分类添加属性,然后去访问程序就会闪退,因为分类中需要我们自己去写这个属性的set和get方法。 为分类中添加属性需要使用到runtime.h中的...
前言 在上一篇文章中,我详细的讲解了一些基本关键词以及基本概念。 SEL方法的名字,可以理解为字符串指针类型 id指向一个类的实例对象 isa每个类的示例对象都保存的指针,指...
Rumtime都能干什么 动态改变方法的执行体 Method Swizzling NSSelectorFromString,NSClassFromString… 动态添加属性...
前言 启动时间是衡量应用品质的重要指标。 本文首先会从原理上出发,讲解iOS系统是如何启动APP的,然后从main函数之前和main函数之后俩个角度去分析如何优化启动时间。 ...