摘要: 堆和栈都是一种数据项按序排列的数据结构,只能在一端(称为栈顶(top))对数据项进行插入和删除。 堆,队列优先,先进先出(FIFO—first in first out); 栈,先进后出(FILO—First-In/Last-Out)。 一般情况下,如果有人把堆栈合起来说,那它的意思是栈,而不是堆。 阅读全文
posted @ 2020-06-18 14:30 不思议的iOS 阅读(708) 评论(0) 推荐(0) 编辑
摘要: iOS学习面试相关问题整理,希望能巩固自己的基础知识,当然也希望能帮助更多的开发者。 数据结构 1.数据结构的存储一般常用的有几种?各有什么特点? 2.集合结构 线性结构 树形结构 图形结构 3.单向链表 双向链表 循环链表 4.数组和链表区别 5.堆、栈和队列 6.输入一棵二叉树的根结点,求该树的 阅读全文
posted @ 2020-06-17 15:40 不思议的iOS 阅读(516) 评论(0) 推荐(0) 编辑
摘要: 首先我们先了解一下运行时实现机制及作用 1、运行时实现的机制是什么? 运行时是一套比较底层的纯C语言API,属于1个C语言库,包含了很多底层的C语言API。 在我们平时编写的OC代码中,程序运行过程时,其实最终都是转成了运行时的C语言代码,运行时算是OC的幕后工作者 比如说,下面一个创建对象的方法中 阅读全文
posted @ 2020-06-17 14:28 不思议的iOS 阅读(664) 评论(0) 推荐(0) 编辑
摘要: 原文来自cocoachina 前言 iOS开发语言有哪些? OS开发语言主要包括什么? iOS开发语言具体怎么学习? 今天重点介绍一下: iOS开发语言主要包括:C语言基础、Obiective-C编程、Swift、UIKit框架详解这几大块,在这里项目阶段就不详细的介绍了。 C语言基础 C语言是开发 阅读全文
posted @ 2020-06-16 16:59 不思议的iOS 阅读(1700) 评论(0) 推荐(0) 编辑
摘要: 最近在微博上看到一个很好的开源项目,是关于如何优化UITableView的,加上正好最近也在优化项目中的类似朋友圈功能这块,思考了很多关于UITableView的优化技巧,所以决定详细的整理下对优化UITableView的理解,需要的朋友们可以参考借鉴。 一、介绍 iOS开发中,UITableVie 阅读全文
posted @ 2020-06-16 15:45 不思议的iOS 阅读(774) 评论(0) 推荐(0) 编辑
摘要: 先简单说说我最近的面试经历吧。面试的公司很多,大部分最后都能得到令人满意的结果,我将这些体会记录下来,面了这么多公司,如果不留下什么,那岂不是太浪费了。对于我来说,这也是一次自我检查,在这次面试中总结经验,认清自己,同时希望这些对即将换工作或者打算看看其他机会的你有一些帮助。 以下的部分有具体的面试 阅读全文
posted @ 2020-06-16 14:42 不思议的iOS 阅读(620) 评论(0) 推荐(0) 编辑
摘要: 1. 前言 Block:带有自动变量(局部变量)的匿名函数。它是C语言的扩充功能。之所以是拓展,是因为C语言不允许存在这样匿名函数。 1.1 匿名函数 匿名函数是指不带函数名称函数。C语言中,函数是怎样的呢?类似这样: int func(int count); 调用的时候: int result = 阅读全文
posted @ 2020-06-15 16:16 不思议的iOS 阅读(729) 评论(0) 推荐(0) 编辑
摘要: 在开发过程中,埋点可以解决两大类问题:一是了解用户使用 App 的行为,二是降低分析线上问题的难度。目前,iOS 开发中常见的埋点方式,主要包括: 代码埋点 可视化埋点 无埋点 代码埋点 代码埋点主要就是通过手写代码的方式来埋点,能很精确的在需要埋点的代码处加上埋点的代码,可以很方便地记录当前环境的 阅读全文
posted @ 2020-06-13 15:50 不思议的iOS 阅读(643) 评论(0) 推荐(0) 编辑
摘要: 分享近期 GitHub 上比较流行的 22 个和 iOS 开发相关的开源项目。 包括开发辅助工具,异步编程库,JSON 解析,移动端数据库,图像视频处理,网络请求,UI 框架、组件,算法、数据结构等内容。 Accio 使用 Swift 编写的 iOS/tvOS/watchOS/macOS 依赖管理工 阅读全文
posted @ 2020-06-13 14:23 不思议的iOS 阅读(1137) 评论(0) 推荐(0) 编辑
摘要: 背景 启动是App给用户的第一印象,对用户体验至关重要。抖音的业务迭代迅速,如果放任不管,启动速度会一点点劣化。为此抖音iOS客户端团队做了大量优化工作,除了传统的修改业务代码方式,我们还做了些开拓性的探索,发现修改代码在二进制文件的布局可以提高启动性能,方案落地后在抖音上启动速度提高了约15%。 阅读全文
posted @ 2020-06-12 14:55 不思议的iOS 阅读(1920) 评论(0) 推荐(0) 编辑