240 发简信
IP属地:广东
  • 这个TDD的步子很好,任务分解的粒度也很合适,不过考不考虑用面向对象的思路实现一个呢?

    第一个测试表达的意图其实不很清晰,用数字描述每击得分、用20来描述总击球次数(然后疑问不是21次么?)、roll(3, 18)是什么意思?感觉丢失了“Frame”这个重要的概念,使得代码一切都是数字操作,不好辨别主要的业务逻辑。可能这就是纯函数式的缺点吧。

    对我来说,从上一篇的需求图里我会设计出来的API可能是:

    ```
    describe('BowlingGame', () => {
    it('', () => {
    const game = new BowlingGame()

    game.fromRecord('35 27 4/ 5/ X 13 2/ 8/ X 5/9')

    expect(game.getTotalScore()).toBe(147)
    })
    })
    ```

    TDD Kata - 保龄球(Bowling)Coding

    阅读本文后,希望你能够有如下收获: 能够采用TDD的方式实现保龄球业务需求。 掌握TDD的节奏:红(失败测试)、绿(产品代码)、蓝(重构) 理解测试驱动设计的一种运用场景。 ...

  • 好像是圣石小子的图~

    React Native 热加载(Hot Reload)原理简介

    @author ASCE1885的 Github 简书 微博 CSDN 知乎 广而告之时间:我的新书《Android 高级进阶》(https://item.jd.com/1...

  • 120
    React Native 热加载(Hot Reload)原理简介

    @author ASCE1885的 Github 简书 微博 CSDN 知乎 广而告之时间:我的新书《Android 高级进阶》(https://item.jd.com/1...

  • 120
    开发笔记之你弄不懂的JAVA反射机制

    _寒鸦, FrigidCrow我热爱编程, 代码让我快乐, 我认为上帝就是最强大的程序员, "Hello World"真正的开辟了一个世界. JAVA反射机制, 啧啧, 当你...

  • 赞。看到「反射」两字忍不住就走进来了,有感情的技术啊,不得不安利一下我本科没完成的毕业论文:https://github.com/linesh-simplicity/swjtu-grad-thesis-java-reflection/blob/master/release/2015-06-15_%E8%AE%BA%E6%96%87.pdf

    建议楼主可以补充再讲讲反射的关键优点和缺点。有些问题是只有使用反射才能解决的,比如写框架,像 Spring MVC/Boot 这样的框架,它根本不知道你自己的 controller/service/model 会叫什么名字,更不可能通过 `new XXXController()` 这样的方式来创建你的类,只有使用反射,通过拿到一个字符串来动态生成对象,才可能解决这样的运行时问题。多么优雅的解决方案。

    缺点自然是性能。

    开发笔记之你弄不懂的JAVA反射机制

    _寒鸦, FrigidCrow我热爱编程, 代码让我快乐, 我认为上帝就是最强大的程序员, "Hello World"真正的开辟了一个世界. JAVA反射机制, 啧啧, 当你...

  • 沙发🛋!

    可视化,你准备好了么

    最近可视化概念被炒的很火热,很多会议的视觉记录者也获得了可能比内容输出者更多的关注。原因不言而喻,可视化的呈现在这个信息爆炸的时代,能够抓住客户/访客稍微多一点点的注意力,这...

  • 120
    可视化,你准备好了么

    最近可视化概念被炒的很火热,很多会议的视觉记录者也获得了可能比内容输出者更多的关注。原因不言而喻,可视化的呈现在这个信息爆炸的时代,能够抓住客户/访客稍微多一点点的注意力,这...

  • 辛苦搜集,不过筛选最有用的资料实在费精力。作者能把链接精简掉一半可能价值会更高。

    最全前端知识体系

    前端知识体系http://www.cnblogs.com/sb19871023/p/3894452.html 前端知识结构https://github.com/Jackson...

  • 使用付费资源很赞。最近也是开始大规模投资自己的职业成长啊。

    我的时间管理观念和技巧

    我是一个拖延症晚期患者,因为确实病得太重,一直拖着也没去治。最近有人说我高产,我仔细一想,确实每天写一篇文章也不是一件容易的事。我就开始思考,我是怎么从一个拖延症变成高产博主...

  • 我的时间管理观念和技巧

    我是一个拖延症晚期患者,因为确实病得太重,一直拖着也没去治。最近有人说我高产,我仔细一想,确实每天写一篇文章也不是一件容易的事。我就开始思考,我是怎么从一个拖延症变成高产博主...

  • 120
    utf-8和Unicode的区别

    utf-8和Unicode到底有什么区别?是存储方式不同?编码方式不同?它们看起来似乎很相似,但是实际上他们并不是同一个层次的概念 要想先讲清楚他们的区别,首先应该讲讲Uni...

  • 120
    谈谈API功能测试

    什么是API测试 什么是API 关于定义什么的,直接维基可得: API(Application Programming Interface,简称:API),又称为应用编程接口...

  • 120
    Spring MVC中文文档翻译发布

    前后经过九个月,我翻译的Spring MVC官方4.2.4版本中文文档发布啦。马上一睹为快:mvc.linesh.tw。译文尽力做到准确自然,妈妈再也不怕我看不懂原文档了。觉...

  • 120
    Spring MVC中文文档翻译发布

    前后经过九个月,我翻译的Spring MVC官方4.2.4版本中文文档发布啦。马上一睹为快:mvc.linesh.tw。译文尽力做到准确自然,妈妈再也不怕我看不懂原文档了。觉...

  • SQL 和 NoSQL 的区别

    概念 SQL (Structured Query Language) 数据库,指关系型数据库 - 主要代表:SQL Server,Oracle,MySQL(开源),Postg...

  • 使用七牛云存储和alfred的workflow简化markdown贴图流程

    使用七牛云存储和alfred的workflow简化markdown贴图流程 使用markdown最头疼的问题就是贴图问题。一方面我们习惯于从剪贴板直接用图片,但因为markd...

个人介绍
"我反对用韵。反对用韵,用起来就好。"

个人博客:linesh.tw
五子棋博客:dudulism.linesh.tw
MVC翻译主页:mvc.linesh.tw