文章来源:http://blog.csdn.net/zhengzhb/article/details/7296921定义:客户端不应该依赖它不需要的接口;一个类对另一个类的依赖应该建立在最小的接口上。问题由来:类A通过接口I依赖类B,类C通过接口I依赖类D,如果接口I对于类A和类B来说不是最小接口,则类B和类D必须去实现他们不需要的方法。解决方案:将臃肿的接口I拆分为独立的几个接口,类A和类C分别与他们需要的接口建立依赖关系。也就是采用接口隔离原则。举例来
系统 2019-08-12 09:29:54 2215
很久之前我就先自己编写猜数字这个小游戏。这里先附上我从百度百科搜到对猜数字的规则。游戏规则如下:通常由两个人玩,一方出数字,一方猜。出数字的人要想好一个没有重复数字的4位数,不能让猜的人知道。猜的人就可以开始猜。每猜一个数字,出数者就要根据这个数字给出几A几B,其中A前面的数字表示位置正确的数的个数,而B前的数字表示数字正确而位置不对的数的个数。如正确答案为5234,而猜的人猜5346,则是1A2B,其中有一个5的位置对了,记为1A,而3和4这两个数字对了
系统 2019-08-12 09:29:50 2215
编者按:原文作者Jenkov是一位丹麦资深开发人员,从事软件开发已有十多年。常有读者咨询他,“怎么才能成为一位专家级的开发人员?”(这个“专家”不是头衔,应是指硬实力,“成为专家”和“被视为专家”是两码事)。所以他在下文中给出了相关建议。另外,他也提醒到,这些建议因人而异、因所用技术而异,并非适合所有人。什么是“专家”?成为“专家”需要多长时间?在我开始讨论如何成为一名专家之前,我们一起来花上30秒时间,看看专家的定义,还有成为专家需要多长时间?在使用某一
系统 2019-08-12 09:29:42 2215
一、问题需求:公司同仁使用MOSS2007平台,觉得MOSS的界面不够友好,主要有一下几个方面:<1>查看网站所有内容时候,左边的Menu区域不要显示。<2>查看清单信息时候,左边的Menu区域不要显示。<3>查看文件库信息时候,左边的Menu区域不要显示。<4>新建网站内容时候,左边的蓝色区域不要显示。<5>新建清单Item时候,左边的Menu区域不要显示。<6>新建清单Item时候,输入栏目区域的宽度width要设置为100%。二、解决办法:方法1:j
系统 2019-08-12 09:27:38 2215
对于现在的应用程序来说,日志的重要性是不言而喻的。很难想象没有任何日志记录功能的应用程序运行在生产环境中。日志所能提供的功能是多种多样的,包括记录程序运行时产生的错误信息、状态信息、调试信息和执行时间信息等。在生产环境中,日志是查找问题来源的重要依据。应用程序运行时的产生的各种信息,都应该通过日志API来进行记录。我们要记录什么?完成某项操作所需的时间通过它可以跟踪为什么系统响应变慢或者太快处理完一个请求所耗费的时间,精确到毫秒执行数据库查询的时间从磁盘或
系统 2019-08-12 09:27:32 2215
装了双系统后,后来某些原因要删除一个系统,在用系统在c盘,要删除的系统在D盘,可是当删除D盘中的系统文件时,“yourequirepermissionfromtrustedinstallertomakechange”,在网络上搜寻良久,发现一个方法可以获取文件夹权限,具体代码如下(注册表):WindowsRegistryEditorVersion5.00[HKEY_CLASSES_ROOT\*\shell\runas]@="TakeOwnership""N
系统 2019-08-12 09:26:44 2215
TheMSDNdocscontainthelistofT-SQLthatiseitherpartiallysupportedornotsupported.ForexampleseethefollowinglocationforCREATETABLE-http://msdn.microsoft.com/en-us/library/ee336258.aspxInElmah'scase,thefilegroupisnotsupportedon'createtab
系统 2019-08-12 01:55:17 2215
数据库应用项目是通过数据库引擎与数据库链接的。何为数据库引擎呢?简而言之,数据库引擎就是驱动各种数据库的程序,它负责处理数据库相关工作的整个核心部份。同样的,数据库应用项目的操作指令,均会通过数据库引擎的处理作用到数据库上。计算机经过几十年的发展,在其上开发成熟的数据库产品已经有很多种,但他们之间很难互相连接与访问,这给用户和应用软件开发商带来极大的不便。为了解决该问题,各大软件公司纷纷推出自己的数据库存取解决方案。Microsoft的ADO(Active
系统 2019-08-12 01:54:47 2215
以前的裸板程序都是通过u-boot下载到内存运行,今天实现更新程序update,程序运行时会输出一个菜单供选择。系统:ubuntu10.04.4单板:tq2440编译器:arm-linux-gcc-4.3.2搭建开发环境详见ubuntu10.04.4开发环境配置。目标:实现自我更新程序,串口输出菜单,有以下·功能供选择*********************************updateprogramwithserialportTheboard:T
系统 2019-08-12 01:51:31 2215
Pexpect是Expect语言的一个Python实现,是一个用来启动子程序,并使用正则表达式对程序输出做出特定响应,以此实现与其自动交互的Python模块。Pexpect的使用范围很广,可以用来实现与ssh、ftp、telnet等程序的自动交互;可以用来自动复制软件安装包并在不同机器自动安装;还可以用来实现软件测试中与命令行交互的自动化。整体来说大致的流程包括:运行程序程序要求人的判断和输入Expect通过关键字匹配根据关键字向程序发送符合的字符基本使用
系统 2019-09-27 17:57:09 2214