一. 引子——高维空间与西瓜 这学期选课有一门“网络数据挖掘”,原来特别担心与本学期选的一门“模式识别与数据挖掘”在一定程度上相重复,不过还好,这个老师讲课不是照本宣科,讲得更多的是个人的理解还有从业经验。 今天讲得挺有意思的一点是,在讲到聚类的时候,老师有些嗤之以鼻,说在高维空间内,聚类算法可能并 ...
分类:
其他好文 时间:
2018-10-12 23:55:52
阅读次数:
224
面向对象的特征有哪些? 封装:封装是保证软件部件具有优良的模块性的基础,封装的目标就是要实现软件部件的“高内聚,低耦合”,防止程序相互以来性带来的变动影响。面向对象的封装就是把描述一个对象的属性和行为的代码封装在一个“模块”中,也就是一个类中,属性用变量定义,行为用方法定义,方法可以直接访问同一个对 ...
分类:
其他好文 时间:
2018-10-10 22:03:46
阅读次数:
175
开始、结束与开始 by李畅 李雅楠 看似漫长实则短暂的结对编程项目就这么结束了。细细回想起来,其中更有着点滴的感悟与体会。那么,让我们一切从头说起,慢慢回味其中的点滴。 Part 1 初遇结对编程,对其中的点滴真的是可以说完全不了解。结对编程?如何去做?怎么去做?又会有什么结果?一切,起于未知。 而 ...
分类:
其他好文 时间:
2018-10-08 23:18:08
阅读次数:
188
class Fruit { public: virtual void get_fruit() { std::cout<<"Fruit:getFruit"<<std::endl; } }; class Pear : public Fruit { public: virtual void get_fru... ...
分类:
其他好文 时间:
2018-10-08 20:42:20
阅读次数:
148
定义:一个对象应该对其他对象保持最少的了解。 问题由来:类与类之间的关系越密切,耦合度越大,当一个类发生改变时,对另一个类的影响也越大。 解决方案:尽量降低类与类之间的耦合。 自从我们接触编程开始,就知道了软件编程的总的原则:低耦合,高内聚。无论是面向过程编程还是面向对象编程,只有使各个模块之间的耦 ...
分类:
其他好文 时间:
2018-10-05 00:58:28
阅读次数:
206
一、面向对象开发中的七大设计原则 软件开发中最核心的思想就是“高内聚,低耦合”,主要的目的也是为了方便后期的维护和变更。下面的设计原则也是依靠这个核心思想衍生出来的。 1、单一职责原则【SINGLE RESPONSIBILITY PRINCIPLE】:单一职责原则想表达的核心思想就是“高内聚”,一个 ...
分类:
其他好文 时间:
2018-09-29 10:16:39
阅读次数:
193
1. 现实需求 客户有了新的需求,这时我们直接新增策略即可,改很少的代码。基本符合我们面向对象原则中的开闭原则(对扩展开放,对修改关系),实现了高内聚低耦合。 2. 策略模式定义 策略模式,又叫算法簇模式,就是定义了不同的算法族,并且之间可以互相替换,此模式让算法的变化独立于使用算法的客户。 3. ...
分类:
编程语言 时间:
2018-09-22 18:33:49
阅读次数:
135
【解析】本题考查了栈、队列、循环队列的基本概念,栈的特点是先进后出,队列的特点是先进先出,根据数据结构中各数据元素之间的复杂程度,将数据结构分为线性结构与非线性结构两类。有序线性表既可以采用顺序存储结构,也可以采用链式存储结构。 【解析】根据栈的定义,栈是一种限定在一端进行插入与删除的线性表。在主函 ...
分类:
编程语言 时间:
2018-09-16 15:50:07
阅读次数:
153
Gradle多项目构建关于项目模块化:在企业项目中,包层次和类关系比较复杂,把代码拆分成模块通常是最佳实践,这需要你清晰的划分功能的边界,比如把业务逻辑层和数据持久化层拆分开来。项目符合高内聚低耦合时,模块化就变得很容易,这是一条非常好的软件开发实践通常在使用Maven构建项目的时候,我们会将一个项目划分为多个模块,然后通过父工程去管理子模块。而Gradle也拥有类似的功能,我们将其称之为多项目构
分类:
编程语言 时间:
2018-09-12 21:19:01
阅读次数:
211
1,spring中ioc的底层原理 xml配置文件 dom4j解析xml 工厂设计模式 反射 思想:高内聚,低耦合 2,spring中的关键字 <bean id="" class=""> id属性:根据id值得到配置对象 class属性:创建对象所在类的全路径 name属性:功能和id一样,但是能有 ...
分类:
编程语言 时间:
2018-09-06 14:41:51
阅读次数:
145