网络性能评价方法

目前度量网络的品质的方法如果仅以网络连接类型来区分,比如2G, 3G, Wifi等,无法有效感知到当时的网络状态。在同一网络连接类型下,网络的品质仍有大幅波动,可能会因为阻塞以及线路上问题导致延迟上抖动(jitter)、丢失数据包、数据包损坏等情况。 本文基于对一段时间的网络数据的记录,进行算法处理,可以测出一个衡量当时网络状态的指标。...
阅读(10105) 评论(2)

如何实践设计原则

大家都知道遵循设计原则是开发高质量软件的重要基础,但实际运用时并不容易。Booch在面向对象分析与设计>>中提出了四个基础原则:抽象   核心思想是不变性的概念。去除不关心的属性,而强化重要的属性,帮助人们思考要做什么。封装  核心是分离关注和信息隐藏,让程序借助最少的工作进行可靠的修改。模块化  核心思想是分而治之,各个模块应当高内聚、低耦合。层次结构  核心是对抽象的分级和排序,可以简化对系统...
阅读(2032) 评论(0)

[OOD]违反里氏替换原则的解决方案

关于OOD的几个设计原则,大家耳熟能祥了,不再展开,可以参考设计模式的六大设计原则之里氏替换原则。这里尝试讨论常常违反的形式和解决方案。违反里氏替换原则的根源是对子类及父类关系不明确。我们在设计继承关系常常受一些主观认识的左右,比如Robert C. Martin提到的线段与线的关系,以及被大家说到烂的正方形与矩形。从以前的经验我们认为它们符合继承关系,比如线段是线的较短形式,正方形是矩形的一个特例...
阅读(2509) 评论(4)

如何避免类的膨胀

类的膨胀(Bloating)指的是类中成员过多,甚至出现无序增加的情况。过大的类,会使得复杂度急剧增加,维护会变得更为困难。所以需要控制类的增长。本文总结了一下,简单介绍四种解决的方式,我故意用四个来讲,主要为了介绍最后一种方式。...
阅读(2645) 评论(4)

API的设计与实现

关于API的设计与实现API的设计是软件开发中一个独特的领域。最主要的特殊点在于API是供开发者使用的界面,即Application Programmer Interfaces。所以相对于依据软件设计的原则,考虑用户的”体验”会更加重要。许多著名的工具和库的作者都写过相关的著作,详细的论述他们在API上的设计与实现要点。本文是尝试对前人工作的总结。...
阅读(6641) 评论(1)
    个人资料
    • 访问:1524016次
    • 积分:16767
    • 等级:
    • 排名:第617名
    • 原创:221篇
    • 转载:30篇
    • 译文:47篇
    • 评论:362条
    微博/MSN/EMail

    新浪微博:Horky
    QQ:324014340
    Mail:horky.chen@gmail.com
    微信公众号 (聚焦软件开发):
    博客专栏
    最新评论