动态规划算法的核心就是记住已经解决过的子问题的解。记住求解的方式有两种:①自顶向下的备忘录法②自底向上。动态规划的经典模型线性模型线性模型的是动态规划中最常用的模型,上文讲到的钢条切割问题就是经典的线性模型,这里的线性指的是状态的排布是呈线性的。【例题1】是一个经典的面试题,我们将它作为线性模型的敲门砖。【例题1】在一个夜黑风高的晚上,有n(n <= 50)个小朋友在桥的这边,现在他们需要过
转载
2024-07-05 18:41:25
23阅读
目录JSON转字符串普通字典转模型模型属性有自定义的模型YYUSer属性有数组(数组里自定义模型),还有字典和集合字典里的key与模型里的属性名不一致 常用的几个方法:# json转模型
+ (instancetype)yy_modelWithJSON:(id)json;
# 模型转字符串
- (NSString *)yy_modelToJSONString
# 字典转模型
+ (insta
转载
2024-06-02 19:29:30
180阅读
前言iOS 开发中少不了各种各样的模型,不论是采用 MVC、MVP 还是 MVVM 设计模式都逃不过 Model。那么大家在使用 Model 的时候肯定遇到过一个问题,即接口传递过来的数据(一般是 JSON 格式)需要转换为 iOS 内我们能直接使用的模型(类)。iOS 开发早期第三方框架没有那么多,大家可能会手写相关代码,但是随着业务的扩展,模型的增多,这些没什么技术含量的代码只是在重复的浪费我
转载
2023-10-12 22:21:33
5阅读
# iOS YYModel ID字段名映射详解
在iOS开发中,数据模型的反序列化是一个常见的任务。YYModel是一个高效的JSON模型框架,能够帮助开发者快速将JSON数据映射到对象。本文将深入探讨YYModel中的ID字段名映射,并通过代码示例帮助你更好地理解如何使用这一特性。
## 什么是YYModel?
YYModel是一个轻量级的第三方库,用于在iOS和macOS项目中实现模型映
特性高性能: 模型转换性能接近手写解析代码。自动类型转换: 对象类型可以自动转换,详情见下方表格。类型安全: 转换过程中,所有的数据类型都会被检测一遍,以保证类型安全,避免崩溃问题。无侵入性: 模型无需继承自其他基类。轻量: 该框架只有 5 个文件 (包括.h文件)。文档和单元测试: 文档覆盖率100%, 代码覆盖率99.6%。 使用方法 简单的 Model 与 JSON 相互转换// JSON
转载
2023-10-15 19:12:35
383阅读
# 科普文章:iOS YYModel
在iOS开发中,数据模型的转换是一个常见的需求。YYModel是一个轻量级的iOS数据模型转换库,可以帮助开发者快速方便地进行数据模型的转换。本文将介绍YYModel的基本用法,并通过代码示例帮助读者更好地理解。
## 什么是YYModel
YYModel是由腾讯开发的一款iOS数据模型转换库,它提供了一种简单易用的方式,帮助开发者将JSON数据转换为i
原创
2024-07-14 08:59:57
56阅读
OC的run-time 机制,简直像是网络上的猫! 我在开发中很少用到,但是作为iOS开发 人家肯定会问这个东西,所以深入的学习了下。 对于 run-time的入手,YYModel的学习,简直让人美滋滋。 对于YYModel的 源码解析什么的,网上很多,我主要参考 马在路上 的总结,他都这个总结,是我看过对于新手最友好的总结。浅显易懂,逐条分析,流程分析
转载
2023-12-20 18:04:35
91阅读
11. iOS 类(class)和结构体(struct)有什么区别?Swift 中,类是引用类型,结构体是值类型。值类型在传递和赋值时将进行复制,而引用类型则只会使用引用对象的一个"指向"。所以他们两者之间的区别就是两个类型的区别。举个简单的例子,代码如下class Temperature { var value: Float = 37.0}class Person { var temp: T
转载
2023-12-24 11:28:50
177阅读
转载
2016-04-11 10:06:00
177阅读
2评论
iOS Json转换模型库:YYModel其实在研究这个库之前,市面上已经有很多类似的模型序列化成JSON及反序列化库(如Mantle、MJExtension)了,推荐他只是因为他高端的性能和容错(错误对象类型赋值到属性时YYMODEL会尝试自动转换,避免Crash)以及低侵入(不需要你的MODEL类去继承某个基类、因为他是Category 方式来实现的)。作者号称对比性能如下:接下来直接写一个小
转载
2024-04-25 15:59:10
56阅读
YYModel介绍YYModel是一个针对iOS/OSX平台的高性能的Model解析库,是属于YYKit的一个组件,创建是ibireme。其实在YYModel出现之前,已经有非常多的Model解析库,例如JSONModel、Mantle和MJExtension。YYModel从易用性和性能方面均达到了最高水平。性能
Model解析库对比
特性High performanc
转载
2024-04-13 10:09:13
144阅读
# iOS引入YYModel:快速解析JSON的利器
在iOS开发中,数据交互常常需要将JSON数据转换为模型对象。使用手动解析会增加代码量且容易出错,因此引入一个模型映射库显得尤为重要。YYModel就是这样一个高效的模型库,它能帮助开发者轻松实现JSON与模型之间的转换。
## 何为YYModel
YYModel是一个轻量级、高性能的模型映射库,旨在通过简单配置实现对象序列化和反序列化。
原创
2024-10-26 07:26:43
87阅读
# iOS YYModel 映射实现指南
在近几年的 iOS 开发中,YYModel 因其简洁明了的对象模型映射而受到开发者的青睐。如果你是刚入行的小白,那么这篇文章将指导你如何通过 YYModel 实现映射,并帮助你理解整个过程。我们将通过明确的步骤、代码示例和类图来帮助你更好地掌握。
## 流程概述
下面是使用 YYModel 进行对象映射的基本步骤:
| 步骤 | 描述 |
|---
YYModel 是我写的一个 JSON 模型转换库,功能和 Mantle、JSONModel 差不多,但有着更好的性能和容错性。这里简单介绍一下 YYModel 的使用方法。 1. 简单的 JSON 与 Model 的转换 // JSON:
{
"uid":123456,
"name":"Harry",
"created":"1965-07-31T00:00:00+
转载
2023-10-16 23:16:07
401阅读
关于源码学习自己的一些感悟
第一层:熟练使用;
第二层:读懂代码;
第三层:通晓原理;
第四层:如何设计;
自己学到了什么,还留有什么问题;
关于分享
关于线下演讲分享和线上文章分享,我一直觉得技术领域要学东西的话线上文章分享是最好的形式,一是它传播广,触达用户多;二是耗时少,写一篇文章或看一篇文章都比听一个分享花的时间少很多;三是可沉淀,读者可以反复看细节,可以沉淀下来不断被人搜索
转载
2024-01-19 17:28:36
92阅读
iOS JSON 模型转换库评测iOS 开发中总会用到各种 JSON 模型转换库,这篇文章将会对常见的几个开源库进行一下评测。评测的内容主要集中在性能、功能、容错性这几个方面。一、评测的对象:Manually 手动进行 JSON/Model 转换,不用任何开源库,可以进行高效、自由的转换,但手写代码非常繁琐,而且容易出错。YYModel 我造的一个新轮子,比较轻量(算上 .h 只有 5 个文件),
转载
2023-10-13 08:36:07
93阅读
前边3篇介绍了YYClassinfo 文件的组成单元,算是功能的分割,按照业务的设计思想来说,方向应该是相反的由此引申出我们在设计api的思想其实和项目管理是很类似的----- 一些题外话1.目的回到代码,首先应该明确写这个类的目的是什么? 按照正常逻辑,我们需要一个类来获取我们所需要的所有和此类相关的信息包括(类名,父类,成员变量,方法,属性...)2.技术调研调研我们所需要的结果是否能够通过技
# 理解 iOS YYModel 原理的简单指南
YYModel 是一个轻量级、高效的模型转化工具,它能够方便地将 JSON 数据映射到 Objective-C 或 Swift 对象中。本文将通过步骤细化、实例代码以及甘特图展示如何实现这一目标。
## 流程概述
首先,让我们看一下实现 YYModel 的基本步骤:
| 步骤 | 描述
原创
2024-10-22 06:18:19
22阅读
YYModel作为开发过程中模型转换框架,为JSON与数据模型之间的相互转换,提供了高性能的解决方案。之前一直听别人说,YYModel内部实现是KVC进行的属性赋值。也认为是合理的,但是今天查看源码发现,里边其实并不是采用的setValue:forKey:的方式进行赋值的。而是采用了objc_msgSend方法调用了属性的setter方法进行赋值的。以后,跟别人说YYModel里可别再说是KVC了
转载
2023-07-25 14:24:31
1013阅读
前言json与模型的转换框架很多,YYModel 一出,性能吊打同类组件,终于找了些时间观摩了一番,确实收益颇多,写下此文作为分享。由于该框架代码比较多,考虑到突出重点,压缩篇幅,不会有太多笔墨在基础知识上,很多展示源码部分会做删减,重点是在理解作者思维。读者需要具备一定的 runtime 知识,若想阅读起来轻松一些,最好自己打开源码做参照。源码基于 1.0.4 版本。一、框架的核心思路使用过框架
转载
2023-12-05 22:29:12
518阅读