首页 > 其他分享 >软件设计原则

软件设计原则

时间:2022-08-19 18:23:52浏览次数:74  
标签:搜狗 输入法 需要 原则 软件设计 皮肤 开闭

1 开闭原则

对扩展开放,对修改关闭。在程序需要进行拓展的时候,不能去修改原有的代码,实现一个热插拔的效果。简言之,是为了使程序的扩展性好,易于维护和升级。

想要达到这样的效果,我们需要使用接口和抽象类。

因为抽象灵活性好,适应性广,只要抽象的合理,可以基本保持软件架构的稳定。而软件中易变的细节可以从抽象派生来的实现类来进行扩展,当软件需要发生变化时,只需要根据需求重新派生一个实现类来扩展就可以了。

下面以 搜狗输入法 的皮肤为例介绍开闭原则的应用。

【例】搜狗输入法 的皮肤设计。

分析:搜狗输入法 的皮肤是输入法背景图片、窗口颜色和声音等元素的组合。用户可以根据自己的喜爱更换自己的输入法的皮肤,也可以从网上下载新的皮肤。这些皮肤有共同的特点,可以为其定义一个抽象类(AbstractSkin),而每个具体的皮肤(DefaultSpecificSkin和HeimaSpecificSkin)是其子类。用户窗体可以根据需要选择或者增加新的主题,而不需要修改原代码,所以它是满足开闭原则的。

标签:搜狗,输入法,需要,原则,软件设计,皮肤,开闭
From: https://www.cnblogs.com/onecyl/p/16602965.html

相关文章

  • 软件测试100天上岸3-测试有哪些最高原则
    测试原则是一个测试人员时刻要铭记在心的,甚至要形成一种本能,指导测试工作。原则1:测试找不出所有的Bug软件的复杂性仅次于生命体,甚至现在很多软件都已经有了人工智能的属......
  • 七大设计原则
    七大设计原则原则单一职责原则         一个类只负责一个功能领域中的相应职责。依赖倒置原则高层模块不应该依赖于低层模块,二者都应该依赖......
  • 经典设计原则 - SOLID
    SOLID设计原则包含以下5种原则:单一职责原则(SingleResponsibilityPrinciple,SRP)开闭原则(OpenClosedPrinciple,OCP)里式替换原则(LiskovSubstitutionPrinciple,......
  • 设计原则
    学习了好几遍的设计模式,为了防止自己遗忘,做一下笔记,总结一下,自己学习过的设计模式,如果有什么错误,敬请谅解。单一职责原则描述:Aclassormoduleshouldhaveasingler......
  • 里氏转换原则
    六大原则如下:①单一职责原则;②开闭原则;③里氏转换原则;④依赖倒置原则;⑤接口隔离原则;⑥迪米特原则;里氏转换原则①子类对象可以直接赋值给父类变量;②子类转换成......
  • 35.概念/意义一致原则
    主语和谓语动词的一致关系并非只取决于语法上的单、复数形式,还取决于主语的单、复数意义。有时主语在语法形式上并非复数,但含有复数意义,其后的谓语动词应用复数形式;反之,主......
  • 33.语法一致原则
    主语和谓语动词之间的一致关系主要表现在“数”的形式上。一般来说,如果主语是复数形式,谓语动词应用复数形式;如果主语是单数形式,谓语动词应用单数形式。这种一致关系叫作“......
  • 34.就近原则
    (3)“neither+名词/代词+nor+名词/代词”结构作主语时,谓语动词的单、复数形式应与nor后的名词或代词保持一致。NeitherJohnnortheyknowhowtooperatethemachine.......
  • 汪子熙趣味成语接龙的游戏软件设计架构说明
    @目录背景战士阿短编程猫纸片初始化函数当开始被点击当收到广播“转盘停止”当收到广播“开始接龙”本作品采用Kitten编程猫v3.7.11开发而成。工程里主要包含一个背景......