对象将需求用类一个个隔开,就象用储物箱把东西一个个封装起来一样,需求变了,分几种情况,最严重的是大变,那么每个储物箱都要打开改,这种方法就不见得有好处:但是这种情况发生概率比较小,大部分需求变化都是局限在一两个储物柜中,那么我们只要打开这两个储物柜修改就可以,不会影响其他储物柜了. 而面向过程是把所有东西都放在一个大储物柜中,修改某个部分以后,会引起其他部分不稳定,一个BUG修复,引发新的无数BUG,最后程序员陷入焦头烂额,如日本东京电力公司员工处理核危机一样,心力交瘁啊. 所以,我们不能粗粒度…
封装.继承.多态. 封装:隐藏对象的属性和实现细节,仅对外公开接口,控制在程序中属性的读取和修改的访问级别.封装就是将抽象得到的数据和行为相结合,形成一个有机的整体,也就是将数据与操作数据的代码进行有机的结合,形成"类",其中数据和函数都是类的成员. 继承:类A继承类B,则类A拥有类B所拥有的所有方法和属性. 多态:一种事物的多种状态.不同的对象以自己的方式去响应同一个消息的能力,动物叫,猪哼哼,狗吠吠,鸟啾啾.先有继承,后有多态. 子类使用父类的方法是继承,父类使用子类的方法是多态.…
一.PO模式思想 PO模式是一种自动化测试设计模式,将页面定位和业务操作分开,也就是把对象的定位和测试脚本分开,从而提供可维护性. PO设计模式基础(页面作为类.元素对象作为属性.元素操作作为方法) 写了多个页面类后,发现可以归纳总结一个base_page父类,其它页面类继承该父类,首先抽象封装一个BasePage类,这个基类拥有一些指向Webdriver的公共的方法,然后每一个Page继承基类BasePage,可以通过driver管理每一个Page中的元素,而且在Page中将这些操作封装为一个…
递推算法是非常常用的算法思想,在数学计算等场合有着广泛的应用.递推算法适合有明显公式规律的场合. 递推算法基本思想 递推算法是一种理性思维莫斯的代表,根据已有的数据和关系,逐步推到而得到结果.递推算法的执行过程如下: (1)根据已知结果和关系,求解中间结果. (2)判断是否达到要求,如果没有达到,则继续根据已知结果和关系求解中间结果.如果满足要求,则表示寻找到一个正确答案. 递推算法需要用户知道答案和问题之间的逻辑关系.在许多数学问题中,都有明确的计算公式可以遵循,因此可以采用递推算法来实现.…
大家在和朋友,同行交流时有没有经常遇到各种 "高大上" 的术语,很多词有没有把各位 “鸟哥” 们搞得一头雾水,现在我就把这些 "牛逼" 的东东都罗列一下, 大家可以一起来整理完善(公众号:CodeL留言),方便我们随时查阅. 一.框架,设计模式      1. MVP(Model-View-Presenter) :从经典的MVC模式演变而来,它们的基本思想有相通的地方:Controller/Presenter负责逻辑的处理,Model提供数据,View负责显示.作为…
之前的文章行人计数.计次提到HOG特征这个概念,这两天看了一下原版的论文,了解了一下HOG特征的原理,并依据自己的理解将这种方法的流程写了下来,假设有不正确的地方欢迎指正. HOG(Histograms of Oriented Gradients)特征的基本思想:The basic idea is that local object appearance and shape can often be characterized rather well by the distribution of…
http://wayfarer.cnblogs.com/articles/241024.html 抄在这里,方便复习! AOP技术基础   1.引言2.AOP技术基础 3.Java平台AOP技术研究4..Net平台AOP技术研究2.1 AOP技术起源 AOP技术的诞生并不算晚,早在1990年开始,来自Xerox Palo Alto Research Lab(即PARC)的研究人员就对面向对象思想的局限性进行了分析.他们研究出了一种新的编程思想,借助这一思想或许可以通过减少代码重复模块从而帮助开发…
C++语言与OO思想介绍 C++的特点与OO思想 C语言有一个优点,即它的速度可以很快.写出来的程序可以很精练.简单.小巧,不用为了解决某个问题环绕太平洋一大圈. 但如果将C和C++相比较,C++就经常会为了解决某个问题绕一个大圈,所以代码量相对较大,并且里边有一些不是必须的代码. 但C++有个绝对的优势,就是针对不同的对象去做实例化,这就是所谓的OO思想. 什么是OO思想 在面对对象的思想中,任何事物都可以被看做一个对象.一个再复杂的模型结构都是由千千万万个对象组成的.这是根本思想. 例如:地…
AOP,一个oop的后传,面向切面,一个基于代理模式的机制. 举例子把:说原理很难理解, 吃饭:谁都得吃饭,一个老师类,有吃饭的方法.一个学生类,也得有吃饭的方法.是不是都得实现这个方法?构建一个person类?通过学生老师继承实现这个方法.但是从面向对象的角度来讲,代码应该高内聚低耦合,如果大量的继承方式实现,那就违背了这个思想. 所以通过aop思想实现,其中最具有代表性就是代理模式,通过一个工厂,专门实现吃饭. 有这么一句说法,面向对象是二维空间,而加上了aop,那么就是通过切面角度,增加到…