首页
学习
活动
专区
圈层
工具
发布
  • 您找到你想要的搜索结果了吗?
    是的
    没有找到

    代码重构(六):代码重构完整案例

    今天的这篇博客就使用一个完整的示例来总结一下之前的重构规则,也算给之前的关于重构的博客画一个句号。今天的示例借鉴于《重构,改善既有代码的设计》这本书中的第一章的示例,在其基础上做了一些修改。...今天博客从头到尾就是一个完整的重构过程。首先会给出需要重构的代码,然后对其进行分析,然后对症下药,使用之前我们分享的重构规则对其进行一步步的重构。...今天博客会给出原始的代码,也是需要进行重构的代码。当然原始代码完全符合需求,并且可以正确执行。废话少说,先看示例吧。 一、需要重构的代码 在本篇博客的第一部分,我们先给出完成上述需求需要重构的代码。...经过分析后的,我们不难发现下方红框当中的代码是一个完整的模块,一个是进行单价计算的,一个是进行积分计算的,我们可以将这两块代码进行提取并封装成一个新的方法。...本篇博客中每次重构过程的完整实例会在github上进行分享。对每次重构的代码都进行了系统的整理。今天博客中的代码整理的结果如下。 ?

    2.5K70

    Swift AsyncSequence — 代码实例详解

    因此,我将指导你使用 AsyncSequence 实例进行工作。 什么是 AsyncSequence? AsyncSequence 是我们在Swift中熟悉的 Sequence 的一个异步变体。...如果你没有使用过 async/await,我鼓励你阅读我的文章:Swift 中的async/await ——代码实例详解 值可以随着时间的推移而变得可用,这意味着一个 AsyncSequence 在你第一次使用它时可能不包含也可能包含一些...为了更好地理解 AsyncSequence 是如何工作的,我将演示一个实现实例。...因此,这只是一个代码例子,以更好地理解 AsyncSequence 的工作原理。 下面的例子沿用了原始提案中的例子,实现了一个计数器。这些值可以立即使用,所以对异步序列没有太大的需求。

    1K20

    工厂模式代码实例详解

    条条大路通罗马,代码都能实现,但如何更合理的实现,遵循设计模式,才是一个优秀的程序员该考虑的问题。作为一个 精益求精的程序员,工作几年之后,不应该只满足于单纯的实现需求,还应该追求代码的质量。...return chicken; } } public class CNChicken extends Chicken{ } 这样写就不遵循开闭原则,每次新增一个的时候,都需要修改之前的代码...interface ChickenInterface { public Chicken create(String name); } 这样扩展性就更好了,通过地址只需要入参就可以通过不同的地址实例化...当以上实现之后,我们把项目需求代入抽象工厂模式,我们需要根据不同的商家来写不同的代码,遵循开闭原则,每个商家都有订购或者取消等功能,于是设计如下。

    70040

    【安卓】安卓集成魔窗-完整实例

    不出意外的话,会这样: image.png 现在配置完了,直接看代码吧。 首先你需要创建一个启动页(Cocos2d-x开发的游戏也可以),记得是启动页而不是首页。...android.intent.category.DEFAULT"/> ParaSetActivity类上的注解的值为mLink的key 实例说明...id=1&name=chx 在浏览器中直接访问,即可跳转到ParaSetActivity页面,参数值也可在app中读出 实例中的MW_APPID请替换为自己的魔窗App Key,可以在产品管理中看到...: image.png 更多的理解,可以通过下面的实例(使用android studio开发)去看看。...也可以直接下载官方的DEMO 源代码下载地址: GITHUB源码下载地址: 【点我进行下载】 本文章由[谙忆]编写, 所有权利保留。 欢迎转载,分享是进步的源泉。

    6.1K10
    领券