首页
AI Coding
NEW
沸点
课程
直播
活动
AI刷题
APP
插件
搜索历史
清空
创作者中心
写文章
发沸点
写笔记
写代码
草稿箱
创作灵感
查看更多
会员
登录
注册
Im_Free
掘友等级
获得徽章 0
动态
文章
专栏
沸点
收藏集
关注
作品
赞
10
文章 10
沸点 0
赞
10
返回
|
搜索文章
赞
文章( 10 )
沸点( 0 )
如何通过静态分析提高iOS代码质量
随着项目的扩大,依靠人工codereview来保证项目的质量,越来越不现实,这时就有必要借助于一种自动化的代码审查工具:程序静态分析。 程序静态分析(Program Static Analysis)是指在不运行代码的方式下,通过词法分析、语法分析、控制流、数据流分析等技术对程序…
iOS底层 - 关于死锁,你了解多少?
我们永远不应该将函数添加到队列中执行任务时使用同步的方式,这对于保证死锁的串行队列尤其重要,但对于并发队列也应避免。的确,这是避免死锁的重要思路,但是,在实际开发中,我们使用了下面的代码。
iOS -- Autorelease & AutoreleasePool
内存管理一直是Objective-C 的重点,在MRC环境下,通过调用[obj autorelease]来延迟内存的释放,在现在ARC环境下,我们都知道编译器会在合适的地方插入release/autorelease内存释放语句,我们甚至可以不需要知道Autorelease就能很…
WWDC 2021 技术热点
Live Text Live Text是iOS 15 新增的捕获文字的功能,用户可以通过摄像头或者图片获取文字,不用手动输入。 使用场景 文本框中填写快递单号、身份证号、地图中搜索地址; 相机扫描,文
iOS 13原生端适配攻略
1. KVC访问私有属性 2. 模态弹窗ViewController 默认样式改变 3. 黑暗模式的适配 4. LaunchImage即将废弃 5. 新增一直使用蓝牙的权限申请 6. Sign With Apple 7. 推送Device Token适配 8. UIKit 控件…
Effective Objective-C 2.0读书笔记(一)-如何减少头文件的引入
决定用一个读书笔记作为自己掘金博客的第一篇会比较好,压力也比较小。最近在读《编写高质量iOS与OS X代码的52个有效方法》,觉得应该记下来的细小的点非常多,希望大家看了我的读书笔记也能有所裨益吧。 有时候在OC的头文件声明一些属性或者方法,此时可能会依赖一些其他的类,常规的做…
多用类型常量替代#define预处理指令
这么写有个明显的问题就是缺乏类型信息,在头文件引入时,由于是预编译的指令,常量名称也可能出现冲突。此时可以使用类型常量来解决这个问题。 在实现文件内部,可以用这种方式代替#define指令。 const表示kAnimationTime是一个常量,不可修改。 static表示仅在…
对象等同性判断
在实际的开发过程当中,经常需要比较对象是否相同。但是,==操作符比较出来的结果可能并不是想要的,因为这个操作符比较的是指针本身,并不是对象。所以大部分情况下,比价对象应该使用NSObject协议中的isEqual:。 一般来说,类型不同的对象总是不相等的。 某些类会提供自己的等…
初步理解objc_msgSend
Objective-c方法调用本质上是消息传递。消息包括消息名称name,选择器selector(其实就是函数指针)。传递的消息可以接受参数,也可能有返回值。 要理解OC的消息传递,就该说一下C语言的函数调用方式,毕竟OC是C语言的延伸语言。C语言使用静态绑定Static bi…
理解消息转发机制
。那么,对象在收到消息之后无法通过objc_msgSend发送的消息之后会怎么办呢? 下面具体看看每一步的过程。 该方法的参数就是objc_msgSend无法处理的selector,返回的布尔值表示这个类能否新增一个实例方法处理它。如果这个seletor不是一个实例方法而是一个…
下一页
个人成就
文章被点赞
16
文章被阅读
5,050
掘力值
149
关注了
22
关注者
13
收藏集
1
关注标签
7
加入于
2019-09-03