iOS常用框架源码分析
SDWebImage
NSCache
- 类似可变字典,线程安全,使用可变字典自定义实现缓存时需要考虑加锁和释放锁
- 在内存不足时NSCache会自动释放存储的对象,不需要手动干预
- NSCache的key不会被复制,所以key不需要实现NSCopying协议
第三方框架
网络
1.PPNetworkHelper
- 对AFNetworking 3.x 与YYCache的二次封装
- 简单易用,包含了缓存机制,控制台可以直接打印json中文字符
2..YTKNetwork
- 猿题库研发团队基于AFNetworking封装的iOS网络库
- 适合稍微复杂一些的项目,不适合个人的小项目
基础组件库
YYKit
- YYModel— 高性能的 iOS JSON 模型框架。
- YYCache— 高性能的 iOS 缓存框架。
- YYImage— 功能强大的 iOS 图像框架。
- YYWebImage— 高性能的 iOS 异步图像加载框架。
- YYText— 功能强大的 iOS 富文本框架。
- YYKeyboardManager— iOS 键盘监听管理工具。
- YYDispatchQueuePool— iOS 全局并发队列管理工具。
- YYAsyncLayer— iOS 异步绘制与显示的工具。
- YYCategories— 功能丰富的 Category 类型工具库。
图像异步加载使用的NSURLConnection,还是建议使用SDWebImage。
等待加载提示
- MBProgressHUD
- SVProgressHUD
- UAProgressView
空白页面占位图
状态栏顶部通知
键盘监听管理工具
- IQKayboardManager
相册选择图片
- KSPhotoBrowser
Badge
- WZLBadge
日历
- GFCalendar
- FSCalendar
状态栏上方显示手机状态
跑马灯广告无线轮播
- 大专栏 iOS常用框架源码分析target="_blank" rel="noopener noreferrer">TXScrollLabelView
- CCPScrollView
FAQ视图
卡片界面
模仿Airbnb首页过渡动画
界面转场动画集
iOS的CSS
动画加号按钮
Swift 3快速异步助手
密码输入切换框
美颜相机(仿faceU)
多功能数据pickerView
直播
- LFLiveKit
- IJKMediaFramework
视频播放
- VIMVideoPlayer
- CLPlayer(tableViewCell、全屏播放)
- JPVideoPlayer(自动播放)
VR播放器
- MDVRLibrary
知识整合,学习资源
- AxcUIKit
- BigShow1949
参考资料:
(iOS及Mac开源项目和学习资料【超级全面】)[http://www.open-open.com/lib/view/open1442664670352.html]
iOS常用框架源码分析的更多相关文章
- Android Small插件化框架源码分析
Android Small插件化框架源码分析 目录 概述 Small如何使用 插件加载流程 待改进的地方 一.概述 Small是一个写得非常简洁的插件化框架,工程源码位置:https://github ...
- YII框架源码分析(百度PHP大牛创作-原版-无广告无水印)
YII 框架源码分析 百度联盟事业部——黄银锋 目 录 1. 引言 3 1.1.Yii 简介 3 1.2.本文内容与结构 3 2.组件化与模块化 4 2.1.框架加载和运行流程 4 ...
- Spark RPC框架源码分析(二)RPC运行时序
前情提要: Spark RPC框架源码分析(一)简述 一. Spark RPC概述 上一篇我们已经说明了Spark RPC框架的一个简单例子,Spark RPC相关的两个编程模型,Actor模型和Re ...
- 介绍开源的.net通信框架NetworkComms框架 源码分析
原文网址: http://www.cnblogs.com/csdev Networkcomms 是一款C# 语言编写的TCP/UDP通信框架 作者是英国人 以前是收费的 售价249英镑 我曾经花了 ...
- Spark RPC框架源码分析(一)简述
Spark RPC系列: Spark RPC框架源码分析(一)运行时序 Spark RPC框架源码分析(二)运行时序 Spark RPC框架源码分析(三)运行时序 一. Spark rpc框架概述 S ...
- Spark RPC框架源码分析(三)Spark心跳机制分析
一.Spark心跳概述 前面两节中介绍了Spark RPC的基本知识,以及深入剖析了Spark RPC中一些源码的实现流程. 具体可以看这里: Spark RPC框架源码分析(二)运行时序 Spark ...
- nodejs的Express框架源码分析、工作流程分析
nodejs的Express框架源码分析.工作流程分析 1.Express的编写流程 2.Express关键api的使用及其作用分析 app.use(middleware); connect pack ...
- laravel框架源码分析(一)自动加载
一.前言 使用php已有好几年,laravel的使用也是有好长时间,但是一直对于框架源码的理解不深,原因很多,归根到底还是php基础不扎实,所以源码看起来也比较吃力.最近有时间,所以开启第5.6遍的框 ...
- Android网络框架源码分析一---Volley
转载自 http://www.jianshu.com/p/9e17727f31a1?utm_campaign=maleskine&utm_content=note&utm_medium ...
随机推荐
- dubbo使用Spring配置暴露服务和使用Spring配置引用远程服务
提供者: <!-- 1.指定当前服务/应用的名字(同样的服务名字相同,不要和别的服务同名) --> <dubbo:application name="user-servic ...
- 18)C++对C的增强
在C++中所有的变量都必须有类型,但是在C语言中没有这个要求,C语言中的默认类型在C++中不合法, #include<stdio.h> f() { ; } int main() { int ...
- elasticsearch 大集群,双重别名,滚动更新分词方案
elasticsearch 滚动更新分词 国内用ik.hanlp.ansj或基于其二次开发的比较多 必然有分词变更的操作(主要是是加词) reindex+别名可以解决一部分问题,但在大集群上会影响业务 ...
- 实现TabControl 选项卡首个标签缩进的方法
借用一张网图说明需求 在网上找了一圈,没有找到直接通过API或者重绘TabControl 的解决方法,最后灵机一动想到了一个折(tou)中(lan)的解决办法 Tab1.TabPages.Clear( ...
- nginx常见的面试题
问题1:Nginx是用来干嘛的? Nginx是一个高性能的HTTP和反向代理服务器,这个基本是用来前端服务器集群后做负载均衡和动静分离用的. 负载均衡即是代理服务器将接收的请求均衡的分发到各服务器中, ...
- Kruskal算法详解
本章介绍克鲁斯卡尔算法.和以往一样,本文会先对克鲁斯卡尔算法的理论论知识进行介绍,然后给出C语言的实现.后续再分别给出C++和Java版本的实现. 最小生成树 在含有n个顶点的连通图中选择n-1条边, ...
- HttpServletReqeust、HttpServletResponse
HttpServletRequest:一次来自客户端的请求的相关信息 请求行 request.getMethod() 获取http请求方式 request.getR ...
- 领导力 / LeaderShip
领导力 / LeaderShip 什么是领导力? 结合我自己的经验,谈谈理解. 我们人类社会,发展到现在,已经成为了一个集合体,这一点在工业革命之前,表现的极为明显. 常见的社会发展形态,会按照人与人 ...
- 2019-2020-1 20199324《Linux内核原理与分析》第一周作业
1.问题:使用banner输出图形字符为什么都是大写? 2.实验二:基本概念及操作 作业:命令toilet和figlet的使用 使用如下命令安装 $ sudo apt-get update $ sud ...
- CSS样式表-------第二章:选择器
二 .选择器 内嵌.外部样式表的一般语法: 选择器 { 样式=值: 样式=值: 样式=值: ...... } 以下面html为例,了解区分一下各种样式的选择器 <head> <met ...