首页
沸点
课程
AI Coding
数据标注
更多
直播
活动
APP
插件
直播
活动
APP
插件
搜索历史
清空
创作者中心
写文章
发沸点
写笔记
写代码
草稿箱
创作灵感
查看更多
登录
注册
确定删除此收藏集吗
删除后此收藏集将被移除
取消
确定删除
确定删除此文章吗
删除后此文章将被从当前收藏集中移除
取消
确定删除
编辑收藏集
名称:
描述:
0
/100
公开
当其他人关注此收藏集后不可再更改为隐私
隐私
仅自己可见此收藏集
取消
确定
iOS
订阅
davidzhu95
更多收藏集
微信扫码分享
微信
新浪微博
QQ
11篇文章 · 0订阅
iOS架构师的必经之路
为什么要关注架构设计? 因为假如你不关心架构,那么总有一天,需要在同一个庞大的类中调试若干复杂的事情,你会发现在这样的条件下,根本不可能在这个类中快速的找到以及有效的修改任何bug.当然,把这样的一个类想象为一个整体是困难的,因此,有可能一些重要的细节总会在这个过程中会被忽略。…
iOS 消息发送与转发详解
Objective-C 是一门动态语言,它将很多静态语言在编译和链接时期做的事情,放到了运行时来处理。之所以能具备这种特性,离不开 Runtime 这个库。Runtime 很好的解决了如何在运行时期找到调用方法这样的问题。 [myClass printLog] 经过编译后就是调…
iOS layoutMargins 的坑:一个活久见的 bug
我一看,从不说粗口的仓薯也忍不住说了一句:“我……去,我做了这么多年 iOS 还从来没遇见这样的事。” 把领导也叫过来看。领导拿来玩了一会儿,然后说:“哈哈哈,感觉真想要实现这个效果,还不是那么容易呢……” 这个方块形的 cell 就是一个平凡而普通的 collectionVi…
ReactiveCocoa 中奇妙无比的“宏”魔法
在ReactiveCocoa 中,开源库作者为我们提供了很多种魔法,“黑”魔法,“红”魔法……今天就让先来看看“红”魔法。 在ReactiveCocoa 中,封装了很多非常实用的“宏”,使用这些“宏”为我们开发带来了很多的便利。 今天就来盘点一下RAC中的宏是如何实现的。 一.…
@inerface的11条规范写法
总结一些interface声明时的规范,相关宏的介绍,定义方法时有用的修饰符,编写注释的规范,最终写出一个合格的头文件。 .h文件里的声明是用于暴露给外部的接口,而类内部的私有方法、私有属性和实例变量,应该放到.m文件的interface extension里。 这3个关键字用…
iOS多线程详解:实践篇
iOS多线程实践中,常用的就是子线程执行耗时操作,然后回到主线程刷新UI。在iOS中每个进程启动后都会建立一个主线程(UI线程),这个线程是其他线程的父线程。由于在iOS中除了主线程,其他子线程是独立于Cocoa Touch的,所以只有主线程可以更新UI界面。iOS多线程开发实…
iOS多线程详解:概念篇
讲多线程这个话题,就免不了先了解多线程相关的技术概念。本文涉及到的技术概念有CPU、进程、线程、同异步、队列等概念。 也可能讲的不全或者不足的地方,后续再加以补充,最近一直使用Swift进行开发,本文所有代码例子都会Swift4进行演示。 CPU主要由运算器、控制器、寄存器三部…
Core Animation 之 View
最近切实的感受到了自己在界面这一块基础原理的匮乏,因此决定深入学习了解一下Core Animation, 但是在学习Core Animation的开端,不禁又怀疑自己,UIWindow是什么?它的作用你真的明白吗?为什么要有UIWindow呢,如果没有的话行不行呢?一系列问题层…
iOS UI绘制原理
高质量的图形展示在app的交互界面中扮演非常重要的角色。高质量的图形展示让用户更能喜欢使用它。iOS系统主要提供两种途径去创建高质量的图形:OpenGL或者使用原生Quarts、Core Animation和UIKit。本文会展开讲一下后者。 Quartz是主要的绘制途径,它提…
网络回调:Block和Delegate的对比
block和delegate是iOS开发者经常用到的技术,也常常出现在各种面试题里,你经常听到他们之间的对比。 我的态度是每个成熟的技术并没有明显的优劣,不应该用谁好谁劣来评判他们,而应该看谁更适合应用场景,在合适的场合选择合适的技术。 本篇文章将讨论在 网络层调用和回调 这个…