何为C++对象模型? C++对象模型可以概括为以下2部分: 1.??????? 语言中直接支持面向对象程序设计的部分 2.??????? 对于各种支持的底层实现机制 语言中直接支持面向对象程序设计的部分,如构造函数...
分类:
编程语言 时间:
2015-06-01 19:00:11
阅读次数:
155
KVO是实现Cocoa Bindings的基础,它提供了一种方法,当某个属性改变时,相对的objects会被通知到。在其他语言中,这种观察者模式通常需要单独实现,而在Objective-C中,通常无须增加额外代码即可使用,
这是怎么实现的呢?其实就是通过OC强大的运行时(runtime)实现的。当你第一次观察某个对象时,runtime会创建一个新的继承原先class的subclass。在这个新的...
分类:
其他好文 时间:
2015-05-29 15:53:40
阅读次数:
1020
红黑树与hash table最大的不同是,红黑树是有序结构,而hash table不是。但不是说set就不能用hash,如果只是判断set中的元素是否存在,那么hash显然更合适,因为set 的访问操作时间复杂度是log(N)的,而使用hash底层实现的hash_set是近似O(1)的。然而,set...
分类:
其他好文 时间:
2015-05-26 21:13:00
阅读次数:
218
一.IoC的基础知识以及原理:
1.IoC理论的背景:在采用面向对象方法设计的软件系统中,底层实现都是由N个对象组成的,所有的对象通过彼此的合作,最终实现系统的业务逻辑。即软件系统中对象之间的耦合,对象A和对象B之间有关联,对象B又和对象C有依赖关系,这样对象和对象之间有着复杂的依赖关系,所以才有了控制反转这个理论。
2.什么是控制反转(IoC):
(1).IoC是Inver...
分类:
编程语言 时间:
2015-05-26 12:41:01
阅读次数:
126
因为redis是用c写的,c中没有自带的map,所以redis自己实现了map,来看一下redis是怎么实现的。1、redis字典基本数据类型redis是用哈希表作为字典的底层实现,dictht是哈希表的定义:typedef struct dictht { // 哈希表节点指针数组(俗称桶,b...
分类:
其他好文 时间:
2015-05-26 00:10:58
阅读次数:
117
这几天学习了HashMap的底层实现,发现关于HashMap实现的博客还是很多的,但几乎都是JDK1.6版本的,而我的JDK版本是1.8.0_25,对比之下,发现Hashmap的实现变动较大。这篇博客断断续续写了一天,理解不当之处,欢迎指正。
在JDK1.6中,HashMap采用位桶+链表实现,即使用链表处理冲突,同一hash值的链表都存储在一个链表里。但是当位于一个桶中的元素较多,即hash值...
分类:
编程语言 时间:
2015-05-21 22:45:40
阅读次数:
256
我把软件分为开源软件和商业软件,开源软件功能相对较弱,源码开放,可以看到底层实现,适合学习研究;商业软件正好相反。但如果我们能看到商业软件的源码或者至少能够免费使用,这就是我理解的破解。 由于本软件是商业软件,所以不能涉及具体名称,这里只是示范演示之用,禁止以此来进行商业使用! 1.安装使用 不管怎...
分类:
Web程序 时间:
2015-05-14 15:38:26
阅读次数:
531
在学习和使用Android网路编程时,我们接触的仅仅是上层协议和接口如Apache的httpclient或者Android自带的httpURlconnection等等。对于这些接口的底层实现我们也有必要进一步的了解,这就要我们了解网络通信层了,提到网络通信层不得不说起ISO-OSI的七层协议经典.....
分类:
移动开发 时间:
2015-05-14 11:23:43
阅读次数:
124
在开发项目的过程中会用到很多第三方库,比如AFNetWorking,SDWebImage,FMDB等,但一直都没去好好的研究一下,最近刚好项目不是太紧,闲下来可以给自己充充电,先研究一下SDWebImage的底层实现,源码地址:SDWebImage 先介绍一下SDWebImage,我们使用较多...
分类:
Web程序 时间:
2015-05-10 15:32:00
阅读次数:
161