《Redis设计与实现》强烈推荐
前言:
是否有听过有些面试官这么问或者博客这么写:说说redis有几种数据类型?
你肯定知道怎么答:string、list、hash、set、zset
自从我看了这本书,我发现了这种说法是极其不专业的,原因稍后分析。
先看书中定义:
【Redis 并没有直接使用这些数据结构来实现键值对数据库, 而是基于这些数据结构创建了一个对象系统, 这个系统包含字符串对象、列表对象、哈希对象、集合对象和有序集合对象这五种类型的对象】
对,没有错,面试官想问的是这5个,你也知道要回答的是这5个。但是,他们不是数据类型而是对象。
确切的问应该是:redis有几种对象类型?
答案应该是:字符串对象、列表对象、哈希对象、集合对象和有序集合对象
问题1:
那答案中的:string、list、hash、set、zset 说的是啥啊?
问题2:
为什么大家好像对这种说法并不觉得错?
因为很多博客,为了让大家更方便的入门,更好的理解,省略了很多没有讲,string、list、hash 相信学过编程的都不陌生,理解起来也不费劲。
但是,但是,但是,他们光为了理解简单了,并没有交代这种说法是有问题的(也不知道是真不知道还是懒得写)。
退一万步讲,你非要说他们5个是数据结构也说得过去,就是有点太不专业了。
总结:推荐大家看看这本书,redis作为目前后端业务开发必考的技能,系统的学习会对你非常有帮助。