桃源谷

心灵的旅行

人生就是一场旅行,不在乎旅行的目的地,在乎的是沿途的风景和看风景的心情 !
posts - 32, comments - 42, trackbacks - 0, articles - 0
  C++博客 :: 首页 :: 新随笔 :: 联系 :: 聚合  :: 管理

     摘要: From 2008精选 设计模式在Linux文件系统中的简单实现 注:这边文章是为了学习设计模式而写的,并不具有实际的意义。仅仅作为学习设计模式的一个参考。 Linux中的文件系统,设备驱动,和实际设备间的结构关系如下图所示:   用户对设备上的数据进行I/O访问,都要先把I/O请求传递到VFS层,然后再通过实际的文件系统,最终传递到设备的驱...  阅读全文

posted @ 2009-02-02 13:08 lymons 阅读(2030) | 评论 (0)编辑 收藏

     摘要: bstract factory:为创建相互关联(风格类似)的一系列的对象提供了一个通用接口,而不需要指定具体的类(产品)名。
factory method:定义一个用来创建对象的接口,并让子类来决定实例化哪一个具体的类(产品),从而让具体类的实例化延迟到子类。
他们的主要区别在于,abstract factory强调的是把诺干个产品按照风格进行分类, 为相同风格的一系列对象(产品)提供一个工厂类,因此,只要改变工厂类的实例,就能到达改变这一组产品的风格和外观。而这一风格的产品的生产可以利用工厂方法来实现. 这其中, factory method强调的则是先在父类实现创建对象的行为,具体的行为或者具体对象(产品)的实例化则延迟到子类实现。  阅读全文

posted @ 2009-02-02 12:58 lymons 阅读(649) | 评论 (0)编辑 收藏

     摘要: Kernel Korner - ATA Over Ethernet: 把硬盘放到局域网上 ATA Over Ethernet: 把硬盘放到局域网上 By Ed Cashin 翻译:Lymons Lau Created 2005-04-28 01:00   随着ATA硬盘比起磁带这样的存储设备来是越来越便宜,一些简单的新存储技术能使你为存档,备份或者现场应用建...  阅读全文

posted @ 2009-02-02 12:54 lymons 阅读(1220) | 评论 (1)编辑 收藏

     摘要: From 2008精选 重構, 第一個案例Refactoring, a First Example 這是一個影片出租店用的程式,計算每位顧客的消費金額並列印報表(statement)。操作者告訴程式:顧客租了哪些影片、租期多長,程式便根據租賃時間和影片類型算出費用。影片分為三類:普通片、兒童片和新片。除了計算費用,還要為常客計算點數;點數會隨著「租片種類是否...  阅读全文

posted @ 2009-02-02 12:52 lymons 阅读(414) | 评论 (0)编辑 收藏

     摘要: 嵌入式文件系统的知识分享 嵌入式文件系统挂载构架 (一) 有人花了数万元的学费,结果没学到什么,这次帮他恶补一下,让他心里平衡一下。因為手邊沒有他所要的詳細資料,僅能靠 記憶,所以會多花些功夫介紹其他的東西。 照上次規矩,先由大家熟悉的地方談起,再切入正題。首先來 看普通 PC 的檔案掛載 ...  阅读全文

posted @ 2009-02-02 12:47 lymons 阅读(780) | 评论 (0)编辑 收藏

     摘要: From 2008精选 在linux平台下的较为庞大的命令一般都带有一个配置文件,用于存储该命令启动时要设置的参数,用户还可以变更该配置文件中的某些域的值。因此,在命令中就要考虑怎么来存取这些文件里的值。一般情况下,大多数程序员都愿意自己编写一段程序来解析配置文件里内容,在配置文件比较小的情况下,该中方法也非常方便适用,我平时也喜欢这么作。但是,当在配置文...  阅读全文

posted @ 2009-02-02 12:31 lymons 阅读(4719) | 评论 (0)编辑 收藏

     摘要: From 长城 RX-RPC的客户端与服务器端的通信解析  Rx是扩展远程过程调用(Extended Remote Procedure Call)的缩写,顾名思义,它就是RPC协议的一个扩展。与之不同的是,它允许任意大小的数据请求以及给端到端(end-to-end)的认证和安全提供了通用支持。另外,这个协议能使允许客户端和服务器端自适应它们关联性能...  阅读全文

posted @ 2009-02-02 11:58 lymons 阅读(1108) | 评论 (0)编辑 收藏

 Degrade解说

品質 


软件开发中所谓的degrade是指,在修改某个bug时,引入了另外的bug。在日本通常称之为"デグレード"或者“デグレ”。例如,在计算字符串长度的机能中,修改了日语(2字节字符串)长度数错bug,而导致原本好用的英数字(1字节字符串)的长度计算出错,这样就叫degrade

避免出现“デグレ”的对策就是进行回溯测试(除了修改部分的确认测试以外,还要确认现有机能是否如期待那样运行测试)。只是不能每次修改时都做大范围手动回溯测试,自动化测试也是有范围的。要考虑bug发生时风险的严重性,再决定回溯测试的执行方针,或选择(减少)要执行的回溯测试,或考虑自动化测试程序的再利用性和规模,再决定自动化的范围。也有在设计程序和测试设计之初,就预先制定好各机能如何进行回溯测试的简单运行规则。

特别是个别的承包系统项目和用于本公司服务的项目等,因为在出现问题时能够立刻修改,所以在实际中更容易引入新问题,如在发布之后,用户运行时出现了问题,紧急对应这个问题,就会引发degrade分秒必争的情况下,要保持冷静是相当困难的。但是,事先定好判断流程,即使在非常紧急的情况下,也要有条不紊地让很多人来检查。一旦真正置身于那种状况下可就不那么容易了。


我认为在决定回溯测试的时机与范围时,要考虑与成本投入是否相匹配。如果还没有这样考虑的话,那么不妨尝试一下吧。

posted @ 2009-02-02 11:52 lymons 阅读(1773) | 评论 (0)编辑 收藏

     摘要: September 28, 2007 Linux中处理来自共享对象的同步事件 By lymons Linux中处理来自共享对象的同步事件   怎么利用设计模式来更有效的使用共享内存 级别:中等 ...  阅读全文

posted @ 2009-02-02 11:28 lymons 阅读(512) | 评论 (0)编辑 收藏

     摘要: 「Code Reading―从开源里学习软件开发的技法」有这样一本书。我是这本书日本版的译者, 呵呵有点王婆卖瓜---自卖自夸的感觉,但是把读源代码作为主题的在市面还没有其他的书。我认为这是一本网罗了从技法到工具,数据结构,构架,还有利用代码的实际读法的实例的好书。

照片1●「Code Reading―跟着开源来学习软件的开发技法」
 这本书的前言里,编程高手Dave Thomas写下了下面的话。
 没有研读过其他作家作品的伟大作家,没有研究过其他画家笔法的伟大画家,没有盗取过并肩作战的同事的技术的技巧高明的外科医生,没有在副驾驶的位置积累实际经验的波音767的机长,在现实生活中真的会存在他们这样的人吗?  阅读全文

posted @ 2009-02-01 15:54 lymons 阅读(5618) | 评论 (0)编辑 收藏

仅列出标题
共4页: 1 2 3 4 
我的个人简历第一页 我的个人简历第二页