小恐龙 小恐龙
3年前
LRU算法四种实现方式介绍
LRU全称是Least RecentlyUsed,即最近最久未使用的意思。LRU算法的设计原则是:如果一个数据在最近一段时间没有被访问到,那么在将来它被访问的可能性也很小。也就是说,当限定的空间已存满数据时,应当把最久没有被访问到的数据淘汰。
Easter79 Easter79
3年前
SpringIOC官方文档解读
IoC容器本章介绍了Spring的控制反转(IoC)容器。1.1。SpringIoC容器和Bean简介本章介绍了反转控制(IoC)原则的Spring框架实现。IoC也称为依赖注入(DI)。在此过程中,对象可以通过①构造函数参数(),②工厂方法的参数③或在构造或从工厂方法返回后在对象实例上设置的属性来定义其依
Wesley13 Wesley13
3年前
ES6 常用语法
什么是ES6ECMAScript6简称ES6,在2015年6月正式发布~ ECMAScript是JavaScript语言的国际标准。我们本着二八原则,掌握好常用的,有用的~能让我们更快的上手~~~1 声明变量const let varES6以前var关键字来声明变量,无论声明在何处都存在变量提升这个事情~~会
Wesley13 Wesley13
3年前
Java 深入理解volatile关键字
我们知道Java中volatile实现了修饰变量的原子性以及可见性,并且为了实现多线程环境下的线程安全,禁止了指令重排。首先我们先来了解一下happensbefore原则、asifserial语义以及数据依赖性,引用自《Java并发编程的艺术》happensbefore简介从JDK5开始,Java使用新的JSR133内存模型
Wesley13 Wesley13
3年前
ubuntu 14.04(trusty)下opencv2与opencv3切换
背景1.ubuntu14.04下进行SLAM开发,使用rosindigo,而indigo默认的opencv版本为2.4.82.在高翔博士的《SLAM十四讲》中,需要用到viz模块,此处需要使用的opencv版本为3以上。因此需要在实际使用中切换opencv的版本。原则是opencv3不影响默认的opencv2.4.8版本。步骤
Wesley13 Wesley13
3年前
C优化代码
本文来自:智趣网C/C语言编程技术交流论坛http://www.bczh.net(https://www.oschina.net/action/GoToLink?urlhttp%3A%2F%2Fwww.bczh.net) 在性能优化方面永远注意8020原则,即20%的程序消耗了80%的运行时间,因而我们要改进效率,最主要是考虑改进那20
Stella981 Stella981
3年前
Linux Shell 文本处理工具集锦
本文将介绍Linux下使用Shell处理文本时最常用的工具:find、grep、xargs、sort、uniq、tr、cut、paste、wc、sed、awk;提供的例子和参数都是最常用和最为实用的;我对shell脚本使用的原则是命令单行书写,尽量不要超过2行;如果有更为复杂的任务需求,还是考虑python吧;find文件查找
Stella981 Stella981
3年前
GPIO操作原理(Linux一切皆文件)
Linux系统定义了一切皆文件的原则,甚至于硬件:磁盘,软盘,等……,这样的好处是,在不同的平台和硬件上都能形成统一的调用方式。这里,我们从树莓派,探讨下GPIO的操作原理(非内核原理):通过sysfs方式控制GPIO。!(https://oscimg.oschina.net/oscnet/149aab6e168e10
Stella981 Stella981
3年前
JVM G1(Garbage
!(https://oscimg.oschina.net/oscnet/upf2c0108b18ba28baf5af916153110bf0a85.png)G1垃圾收集器的设计原则是“首先收集尽可能多的垃圾(GarbageFirst)”,目标是为了尽量缩短处理超大堆(超过4GB)产生的停顿。因此,G1并不会等内存耗尽(比如Seria
敏捷开发 敏捷开发
4个月前
实践了上万次,原来这些才是敏捷测试需要遵循的原则
与传统的阶段性测试不同的是,敏捷测试能够将测试集成到整个软件开发过程中,尽早、及时地发现缺陷,帮助交付有价值的高质量产品。传统测试与敏捷测试的比较大的区别在于:在瀑布方法中,测试只能在开发结束后进行;在敏捷方法中,测试是贯穿在整个开发过程中的,同时可以在需