在ios中使用cocoapad是必不可少的,方便管理第三方只需pod install,也可用于组件化开发,那么如何发布属于我们自己的pod呢?废话不多说,撸起袖子就是干......

在ios中使用cocoapad是必不可少的,方便管理第三方只需pod install,也可用于组件化开发,那么如何发布属于我们自己的pod呢?废话不多说,撸起袖子就是干......
前段时间出差支援实施兄弟,回来差点忘记自己是干啥的。 [猛男微笑.gif]准备灌几篇水找找感觉。 [猛男再次微笑.gif]最近趁着年前空闲重读了 Swift 的文档,一方面看...
Swift底层原理-方法调度 我们知道,在OC中方法的调用是通过objc_msgSend来发送消息的;那么在Swift中,方法的调用时如何实现的呢? 而且在swift中不仅仅...
虚拟内存 & ASLR 在早期计算机中数据是直接通过物理地址访问的,这就造成了下面两个问题 1.内存不够用2.数据安全问题 内存不够 ---> 虚拟内存 虚拟内存就是通过创建...
一、Swift 存储属性和计算属性比较: 存储型属性:用于存储一个常量或者变量计算型属性: 计算性属性不直接存储值,而是用 get / set 来取值 和 赋值,可以操作其他...
对象创建 原型(Prototype) 使用原型实例指定创建对象的种类,并通过复制这个原型创建新的对象。 array 就是原型了,array2 以 array 为原型,通过 c...
怎么检测项目中的Data race? 下面就进入正题简单聊一聊iOS中的锁,以及相关的内容(由于本人能力有限,文中难免有一些遗漏或者错误,请各位看官不吝赐教!谢谢!🙏) 简单...
前言 在iOS开发过程中,总会遇到各种各样的崩溃问题,那么如何可能的降低应用的崩溃率,就成为每位iOS开发人员的必修课。所以,归纳总结iOS崩溃问题就显得尤为重要了。 cra...
前言 最近开始学习Flutter开发,在打包iOS的时候需要用到Xcode,所以下单了一台MacBookPro作为以后的电脑。但是由于之前没有用过mac,所以弄了半天才安装好...
实现一个如下的动画: 实现如果的动画方式大概有两种: 1.直接找一个GIF图片进行播放(最直接) 2.自己用代码绘制然后加上动画第一种方式参考:播放GIF的几种方式 下面主要...
前言 iOS的方法交换能为我们 hook 实例方法,也能为我们 hook 类方法,但是对于 Block 却无能为力,原因很简单,Block并不是一个方法,而是一个函数指针。但...
最近看了斯坦福大学 2020 春季的 SwiftUI 课程,总结一下 SwiftUI 是如何支持 MVVM 设计模式的。 介绍 MVVM(Model-View-ViewMod...
前言 移动端项目复杂到一定程度都会走上组件化的道路,组件一多就会出现联编缓慢的问题。对于Objectiv-C语言的项目,想要加速编译打包的速度,就需要将大量依赖的组件在打包的...
如何把在Mac中命令行编译的代码,生成二进制可执行文件。
Swift 二进制,静态库,动态库解决方案cocoapods-framework 你是不是发现 cocoapods-packager 不能支持 Swift? 你是不是发现 cocoapods-packager 不能支...
Block 匿名函数,能够自动捕捉变量
① 闲着编译了最新libclosure-74 Block 底层源码想必大家已经非常熟悉了,但是估计有很多人不知道怎么去看,更有甚者不知道在哪!这里首先感谢苹果开源了 : li...
锁是最常用的同步工具。一段代码段在同一个时间只能允许被有限个线程访问,比如一个线程 A 进入需要保护代码之前添加简单的互斥锁,另一个线程 B 就无法访问,只有等待前一个线程 ...
这两天翻看 ibireme 大神 《不再安全的 OSSpinLock》 这篇文章,看到文中分析各种锁之前的性能的图表: 发现除了@synchronized 用过,其他的都陌生...
本文首发于我的个人博客:「程序员充电站」[https://itcharge.cn]文章链接:「传送门」[https://itcharge.cn/ios-complete-le...
1、KVO简介 KVO官方简介[https://developer.apple.com/library/archive/documentation/Cocoa/Concept...