高内聚低耦合,可以说是每个程序猿,甚至是编过程序,或者仅仅只是在大学里面学过计算机,都知道的一个简单的设计原则. 虽然如此流行和人所众知,但其实真正理解的人并不多,很多时候都是人云亦云. =============================================================== 要想真正理解"高内聚低耦合",需要回答两个问题: 1)为什么要高内聚低耦合? 2)高内聚低耦合是否意味内聚越高越好,耦合越低越好? 第一个问题:为什么要高内聚低耦合? 经
直播视频点击观看 随着云计算.大数据.AI智能等前沿科技的发展,传统的研发速度越来越难满足企业快速发展的需求,研发效能也成了继商业模式.技术突破之后的另一核心竞争力.本文主要从黑天鹅事件开始谈起,接着分析了哪些模式是脆弱的,而后分享了通过案例得出了从变化中获益的启示,最后着重说明了打造敏捷组织的重要性.一起来了解下吧: 黑天鹅事件 在发现澳大利亚的黑天鹅之前,欧洲人认为天鹅都是白色的,但这个不可动摇的信念随着第一只黑天鹅的出现而崩溃.人们总是以自己有限的经验和不堪一击的信念来解释不可预测
本文讲的是[译] 通过测试来解耦 Activity, 原文地址:Test Driving away Coupling in Activities 原文作者:philosohacker 译文出自:掘金翻译计划 译者:mnikn 校对者:phxnirvana,stormrabbit 通过测试来解耦Activity Activity 和 Fragment,可能是因为一些奇怪的历史巧合,从 Android 推出之时起就被视为构建 Android 应用的最佳构件.我们把Activity 和 Fragmen
设计模式是从许多优秀的软件系统中总结出成功的可复用的设计方案.设计模式一定是将简单的东西复杂化,哈哈哈,是不是矛盾,其实不然,扩展性大大增强. 什么是框架 框架不是模式,框架是针对某个领域,提供用于开发应用系统的类的集合,程序设计者可以使用框架提供的类设计一个应用程序,而且在设计应用程序时可以针对特定的问题使用某个模式. 1.层次不同.模式比框架更抽象,模式是在某种特定环境中,针对一个软件设计出现的问题而给出的可复用的解决方案,不能向使用者提供可以直接使用的类,设计模式只有在被设计人员使用时才能
在 PHP 编程早期,PHP 代码在本质上是限于面向过程的.过程代码 的特征在于使用过程构建应用程序块.过程通过允许过程之间的调用提供某种程度的重用. 但是,没有面向对象的语言构造,程序员仍然可以把 OO 特性引入到 PHP 代码中.这样做有点困难并且会使代码难于阅读,因为它是混合范例(含有伪 OO 设计的过程语言).使用 PHP 代码中的 OO 构造 - 例如能够定义和使用类.能够构建使用继承的类之间的关系以及能够定义接口 - 可以更轻松地构建符合优秀 OO 实践的代码. 虽然没有过多模块化的
前面讲了为什么我们要使用分析模型,现在我们看设计分析模型的基本原则. 分配职责和职责驱动设计 我们在开始分析模型的时候,首先要弄清楚一个非常重要的原则,就是以职责为中心.OO分析设计的核心原则之一,就是软件系统中的所有元素都必须具有高度相关的职责,也就是说,软件系统中所有的模块.包.对象类,都应当拥有一个清晰的职责,并且与它相关的所有元素(即模块中的所有包.包中的所有对象类.对象类中的所有属性和行为)都必须与这个职责具有高度的相关性.因此,分析模型的首要设计原则就是职责驱动设计(Responsi
今年,大数据在很多公司都成为相关话题.虽然没有一个标准的定义来解释何为 "大数据",但在处理大数据上,Hadoop已经成为事实上的标准.IBM.Oracle.SAP.甚至Microsoft等几乎所有的大型软件提供商都采用了Hadoop.然而,当你已经决定要使用Hadoop来处理大数据时,首先碰到的问题就是如何开始以及选择哪一种产品.你有多种选择来安装Hadoop的一个版本并实现大数据处理.本文讨论了不同的选择,并推荐了每种选择的适用场合. Hadoop平台的多种选择 下图展示了Hado
云应用方面有云存储.云服务,还有许多地方企业性质的云端,如鄱阳云计算.苏宁云商等等,它们虽然看似新名词,但实际上主打概念,真正的作用就是在宽带作用下,可以达到在线共享和在线携带功能,我们可以列举出这些"云"如何运用. 云存储:百度云.网盘等. 这些应用的作用,可以帮助你存储资料,如公司的大容量文件就可以通过云存储留给外地公司下载,节省了时间和金钱,有很好的便携性.现在,除了互联网企业外,许多PC厂商也开始有自己的云存储服务,以达到捆绑客户的作用,比如联想的"乐云"
文章讲的是如何挑选合适的大数据或Hadoop平台,今年,大数据在很多公司都成为相关话题.虽然没有一个标准的定义来解释何为 "大数据",但在处理大数据上,Hadoop已经成为事实上的标准.IBM.Oracle.SAP.甚至Microsoft等几乎所有的大型软件提供商都采用了Hadoop.然而,当你已经决定要使用Hadoop来处理大数据时,首先碰到的问题就是如何开始以及选择哪一种产品.你有多种选择来安装Hadoop的一个版本并实现大数据处理.本文讨论了不同的选择,并推荐了每种选择的适用场合