首页
学习
活动
专区
工具
TVP
发布
精选内容/技术社群/优惠产品,尽在小程序
立即前往

代码模板 | 我代码没有else

嗯,我代码没有else系列,一个设计模式业务真实使用golang系列。 ? 前言 本系列主要分享,如何在我们真实业务场景中使用设计模式。...关于怎么用,完全可以生搬硬套我总结使用设计模式四个步骤: 业务梳理 业务流程图 代码建模 代码demo 业务梳理 我通过历史上接触过各种抽奖场景(红包雨、糖果雨、打地鼠、大转盘(九宫格)、考眼力、...------------ //我代码没有`else`系列 //模板模式 //@auhtor TIGERB //------------------...//------------------------------------------------------------ //我代码没有`else`系列 //模板模式 //@auhtor TIGERB...我代码没有`else`,只是一个在代码合理设计情况下自然而然无限接近或者达到结果,并不是一个硬性目标,务必较真。 2.

1K30

代码组件 | 我代码没有else

嗯,我代码没有else系列,一个设计模式业务真实使用golang系列。 ? 前言 本系列主要分享,如何在我们真实业务场景中使用设计模式。...复用:不同业务场景,相同组件可被重复使用。 什么真实业务场景可以用「组合模式」?...代码demo升级「并发组件」 高度独立、不存在数据互相依赖组件,业务流程并发执行。 结语 最后总结下,「组合模式」抽象过程核心是: 按模块划分:业务逻辑归类,收敛过程。...我代码没有`else`,只是一个在代码合理设计情况下自然而然无限接近或者达到结果,并不是一个硬性目标,务必较真。 2....---- 我代码没有else系列 更多文章 代码模板 | 我代码没有else 链式调用 | 我代码没有else 点击https://github.com/TIGERB/easy-tips/tree

1.1K10
  • 您找到你想要的搜索结果了吗?
    是的
    没有找到

    代码质量--重用代码

    重用代码指:在相似业务场景下,用是同一份代码重用代码可以减少重复劳动。一个软件中,会有很多类似的业务场景。将这些场景抽象成重用代码。开发新功能时,重用代码减少重复劳动。...如果做成重用,则只需改动一处。 一、如何写出重用代码 代码职责越多,越难被复用。写出重用代码就是:识别,分离出复用部分。...要改成复用代码,就是将可复用UI,获取接口数据代码独立出来。 下面,我们来看些常见复用部分和复用方法。 (一)UI展示 UI展示为外观展示,包含:HTML和CSS。...(四)工具函数 工具函数是与业务无关。如:格式化日期,生成唯一id等。Lodash和 moment.js包含了很多工具方法。 二、总结 要写出重用代码,本质就是识别和分离出复用部分。...前端可以从UI展示,接口调用,业务流程,数据,工具函数中找出复用部分。 代码质量下一层次就是:重构代码。我会在下一篇文章中介绍。

    15230

    如何编写没有bug代码

    因为它有若干缺点: 会导致你复制到糟糕设计决策或易受其他人攻击代码 会形成一种依赖心态:要是我们不能google到内容,那么只能向人求助了 没有网就不能工作 但是,我不认为这些是大问题。...关于“学习如何编写没有bug代码魔法书是不存在。因为所有软件都有bug——除了这个框架之外。遇到bug我们就应该处理掉。 关键要点是:每个人编写代码都不应该带有明显错误。...有些工具在你代码库上运行一些复杂启发式算法来检测不同问题,比如这个代码行内有太多逻辑,这个类是不需要,这个函数太复杂了; 审查你代码。在合并为master之前对其进行审查。...05 应用程序部署后,我仍然不自信 终于,我应用程序已经进入了产品阶段。它可以工作了。我可以休息休息,应该不会出什么问题了。等等,不!一切都崩溃了。是的,我没有说错:一切。...如果我们想编写出好软件,那么我们需要不断地学习怎么做。没有捷径也没有魔法。每天进步一点点,就会越来越好。 总之,我们需要理解两件基本事情: 每个人都会遇到问题。

    88410

    SOLID 原则:编写扩展且维护代码

    ,你写是 “糟糕代码” ?...如果你写过,其实也没什么好羞愧。在学习过程中,我们都会编写有缺陷代码。但是好消息是对于 “糟糕代码” 进行改进是相当简单,但前提是你愿意改。 改进代码最佳方法之一是学习一些编程设计原则。...它违反了职责分离原则,并使代码灵活性和扩展性降低。让我们看一下解决这个问题一种方法。...根据里氏替换原则,Vehicle 任何子类也应该能够毫无问题地启动发动机。 但是,如果我们添加了 Bicycle(自行车)类。显然我们将无法再启动发动机,因为自行车没有发动机。...也就是说,高层模块不应该依赖于低层模块,而应该依赖于它们共同抽象。 通过遵循这些原则,我们可以编写出更加清晰、灵活和复用代码,降低耦合度和代码腐化风险,提高代码测试性和可读性。

    20220

    Yank Note 高度扩展 Markdown 编辑

    Yank Note 是一款高度扩展 Markdown 编辑器,本文记录相关内容。...Yank Note Yank Note 是一款高度扩展 Markdown 编辑器,支持全平台操作系统使用,专为易用和强大编辑体验而设计。...) 编辑优化: 列表自动补全 粘贴图片: 快速粘贴剪切板里面的图片,可作为文件或 Base64 形式插入 嵌入附件: 可以添加附件到文档,点击在系统中打开 代码运行: 支持运行...JavaScript、PHP、nodejs、Python、bash 代码 待办列表: 支持显示文档中待办进度,点击快速切换待办状态 快速打开: 可使用快捷键打开文件切换面板,以便快捷打开文件...Typora 不行 使用体验 实话说就 Markdown 编辑体验来说 YankNote 照 Typora 逊色很多,双屏就是难受,很多快捷键也没有,估计对于 Markdown 不太熟悉同学使用起来可能都会有一些门槛

    10310

    编写测试JavaScript代码

    B.代码是让人用 1.我们编写代码不是让电脑用,而是让人用 2.为何要编写测试代码 测试代码更加容易测试,意味着它更加容易维护,易维护则意味着它有让人(包括自己)更加容易理解 ,更加容易维护...,从而又使得测试变得更加容易 3.如果没有测试维护以及可理解代码,那它就是垃圾 4.什么是测试代码 什么是测试:短小但也不太复杂代码、完整注释,以及检耦合。...什么是维护:可以存在于一个完整产品周期:产品从一个人转到另外一个人手里时,不需要部分或全部重写 什么是可理解:简单、小型且有注释代码更加容易理解 5.如何编写测试代码:编写短小、最小依赖和最低复杂度隔离代码块...没有任何修饰符,所有的内容都是私有的,与“外部”世界唯一沟通就是通过基于事件API。...C.测试基于事件架构 1.基于事件架构本质:注册事件监听,并且没有(或很少)对象被实例化 D.基于事件架构说明 1.伸缩性:事件集线器创造了超级单一故障点,如果集线器出现了故障,应该程序就宕机了

    1.3K30

    编写测试JavaScript代码

    编写测试JavaScript代码 既然要对代码进行测试,那么为什么不让这一过程变得尽可能简单和轻松呢?JavaScript客户端代码测试之所以尤其困难,是因为我们几乎无法控制代码运行环境。...此外,Node.js异步特性也使得测试变得更加复杂。有趣是,这样一种与异步执行密切相关语言,竟然没有设置与该执行模式相配内置支持。...我比较推崇Michael Feathers在他优秀作品Working Effectively with Legacy Code(Prentice Hall出版社)中定义:遗留代码没有测试过代码,...再次接触遗留代码时,就是要重写它了。看一下当前项目,任何没有被测试代码都有可能会被重写。 重写的人可能不是原作者,而是负责处理这个任务(增强代码或修补漏洞)的人。...除非这些代码经过测试,否则它们就是必须要重写无用代码。这段代码可能很惊人,但它唯一能存活方法就是永远不会产生Bug,并且没有人要求对它进行增强或者添加新特性。

    42300

    代码编辑

    代码在文章最后 一,内存管理 用到再分配内存,不负责回收内存。主要是利用硬件异常中断程序。下面是具体步骤: 1,分配一块内存。内存属性是禁止读写。 2,设置异常中断程序。...程序内容就是当产生异常原因读写【禁止读写内存】时,执行分配对应地址内存,然后继续运行。分配内存应该考虑可能失败。 二,操作管理 包括 操作撤销 和 操作恢复 。...我这里块内容是从上一个组指针读写(前提是存在上一组指针。实际肯定是存在。因为收缩块和展开块也是一种操作,也产生一组指针和N行数据) 块实际内容就是读取函数参数。这样来很明显省内存。...这里没有收缩全部块功能【太复杂了,我没弄】。我个人觉得【收缩全部函数块】够用了。主要判断依据是块前一个有效字符是不是‘)’。注意过滤块中块,意思是函数块中块不再考虑。 2,块全部展开。...这个简单,读取所有块内容,再产生N行数据和一组指针。 3,双击块展开。 4,双击块收缩。 四,查找 是查找所有内容,有块的话,先读出块转为文本再查找。

    7.7K50

    链式调用 | 我代码没有else

    嗯,我代码没有else系列,一个设计模式业务真实使用golang系列。 ? 前言 本系列主要分享,如何在我们真实业务场景中使用设计模式。...以下是责任链模式(改)具体优势: 直观:一眼可观业务调用过程 无限扩展:可无限扩展业务逻辑 高度封装:复杂业务代码依然高度封装 极易被修改:复杂业务代码下修改代码只需要专注对应业务类(结构体)文件即可...代码demo package main //--------------- //我代码没有`else`系列 //责任链模式 //@auhtor TIGERB<https://github.com/...我代码没有`else`,只是一个在代码合理设计情况下自然而然无限接近或者达到结果,并不是一个硬性目标,务必较真。 2....---- 我代码没有else系列 更多文章 代码模板 | 我代码没有else 点击https://github.com/TIGERB/easy-tips/tree/master/go/src/patterns

    1.7K40

    后疫情办公时代——你需要多人同步协同编辑Demo(粘贴撤销)

    首先,纯前端表格默认会将所有的用户UI操作封装成命令去执行(内置命令),而我们通常代码设置并没有通过命令来执行。...这样就可以用来区分一个操作到底是用户UI操作(最终用户使用时操作),还是代码逻辑进行操作(程序员通过写代码完成,即程序内部运行逻辑)。...而用户在表格上修改任何操作均可以被撤销,撤销同时不会影响之前代码设置这部分内容。...命令对于在线协同应用: 命令机制我们可以分清操作到底是代码执行还是用户UI去操作,而在线协同场景中需要同步内容就是用户UI相关操作。...mod=attachment&aid=ODY2MjZ8OTBlY2E0NWF8MTY3MTc5MzE5Mnw2MjY3Nnw3NTM0Nw%3D%3D 粘贴柯撤销多人协同 那最原始通过命令方式为什么无法将粘贴命令同步呢

    73830

    代码质量第2层-重用代码

    重用代码指:在相似业务场景下,用是同一份代码重用代码可以减少重复劳动。一个软件中,会有很多类似的业务场景。将这些场景抽象成重用代码。开发新功能时,重用代码减少重复劳动。...如果做成重用,则只需改动一处。 一、如何写出重用代码 代码职责越多,越难被复用。写出重用代码就是:识别,分离出复用部分。...要改成复用代码,就是将可复用UI,获取接口数据代码独立出来。 下面,我们来看些常见复用部分和复用方法。 (一)UI展示 UI展示为外观展示,包含:HTML和CSS。...(四)工具函数 工具函数是与业务无关。如:格式化日期,生成唯一id等。Lodash和 moment.js包含了很多工具方法。 二、总结 要写出重用代码,本质就是识别和分离出复用部分。...前端可以从UI展示,接口调用,业务流程,数据,工具函数中找出复用部分。 代码质量下一层次就是:重构代码。我会在下一篇文章中介绍。  推荐阅读 代码质量第3层-可读代码

    82320

    代码在线编辑工具_php代码编辑器安卓版

    大家好,又见面了,我是你们朋友全栈君。 在线代码编辑器 在线编辑各种文本形式代码,如js,html,php等,要支持语法高亮,即时输入即时高亮。...我初步想法是用一个 来实现,就是类似于常见在线网页编辑器,但是因为仅仅是需要代码编辑,所以,要控制只能输入文本,不能让用户插入图片啊链接啊等等东西...Bespin是一个用Canvas实现在线代码编辑器,所以不支持IE,而且,因为是Canvas模拟编辑,效率很低,反应迟钝。...codepress js干这活效率上差很多,由于这个原因实际项目中没有采用js,还是用ActiveX 看了你文章。...很赞在线代码编辑器,支持多种语言彩色语法编辑,罕见精品 http://blog.csdn.net/cuixiping/archive/2009/10/16/4678840.aspx 网址

    2.5K10

    代码质量第 1 层 - 重构代码

    重构代码指:可以放心代码,不用担心因为改代码而导致 bug。重构代码是对代码质量最高要求,也是最难达到重构代码是易于维护。...如何写出重构代码 写出重构代码要做 3 件事: 隔离副作用。 使用静态类型。 写测试。 隔离副作用是写出重构代码基础。使用静态类型是对过程检查。写测试是对结果检查。 下面具体来说。...代码修改后,只要测试用例能跑通过,则保证了代码改动没有破坏之前功能。 测试是分层。对前端来说,测试包括三层: 单元测试(Unit Tests)。 接口测试(Service Tests)。...我们写测试场景优先考虑:业务流程不频繁改动核心场景。 总结 重构代码可以被放心修改。要写出重构代码需要: 隔离副作用。 使用静态类型。 写测试。...2 层 - 重用代码

    74910

    代码质量第 2 层 - 重用代码

    3金伟强---(+云荐大咖).jpg重用代码指:在相似业务场景下,用是同一份代码重用代码可以减少重复劳动。一个软件中,会有很多类似的业务场景。将这些场景抽象成重用代码。...开发新功能时,重用代码减少重复劳动。 重用代码可以减少因需求变动,导致多次改动和漏改情况。...代码职责越多,越难被复用。写出重用代码就是:识别,分离出复用部分。 考虑这样场景:代码块A 功能是获取接口数据,并渲染 UI。代码块B UI 和 A 一样,但获取接口数据不一样。...代码块C 获取数据和 A 一样,但 UI 和 A 不一样。A,B,C 之间代码都不能被复用。 要改成复用代码,就是将可复用 UI,获取接口数据代码独立出来。...前端可以从 UI 展示,接口调用,业务流程,数据,工具函数 中找出复用部分。 代码质量下一层次就是:重构代码。我会在下一篇文章中介绍。

    3.6K102

    代码质量第 2 层 - 重用代码

    重用代码指:在相似业务场景下,用是同一份代码重用代码可以减少重复劳动。一个软件中,会有很多类似的业务场景。将这些场景抽象成重用代码。开发新功能时,重用代码减少重复劳动。...重用代码可以减少因需求变动,导致多次改动和漏改情况。试想,要修改全站提交按钮颜色,如果全站有100个包含提交按钮页面,每个页面的按钮样式都没复用,这改动量和漏改风险都很大。...如果做成重用,则只需改动一处。 如何写出重用代码 代码职责越多,越难被复用。写出重用代码就是:识别,分离出复用部分。 考虑这样场景:代码块A 功能是获取接口数据,并渲染 UI。...工具函数 工具函数是与业务无关。如:格式化日期,生成唯一 id 等。Lodash 和 moment.js 包含了很多工具方法。 总结 要写出重用代码,本质就是识别和分离出复用部分。...前端可以从 UI 展示,接口调用,业务流程,数据,工具函数 中找出复用部分。 代码质量下一层次就是:重构代码。我会在下一篇文章中介绍。

    92220

    小米手机安装 charles 证书,提示“没有安装证书”

    问题: 通过浏览器下载crt文件,提示证书无效,安装失败。 解决问题: 1、不要用小米手机自带浏览器下载crt文件。...问题原因: 1.在Android7.0及以上系统中,每个应用可以定义自己可信CA集集。 默认情况下,应用只会信任系统预装CA证书,而不会信任用户安装CA证书。...而回想我们抓包过程,无论是fiddler还是Charles,想抓https,都必须手机安装对应证书,通过fiddler/Charles安装证书恰恰正属于用户安装CA证书,因此会被视作不安全证书...然而现在已经失效 就算没有 也不是长久之计。 第二种解决方案:对Android7.0以上系统进行root操作,获取管理员权限,然后把代理证书(如fiddler、charles)改为系统证书即可。...如果服务端没有加密的话,终于可以了,有点心累啊; 最后这两个app下载地址HttpCanary+VirtualApp:链接: https://pan.baidu.com/s/1BJQaFOhCZ14PZKm4OvV2Uw

    15.5K30

    SpringBoot + Vue 实现拖拽编辑大屏开源项目

    1、简介 该大屏设计是一个可视化拖拽编辑全开源项目,直观,酷炫,具有科技感图表工具。内置基础功能包括数据源,数据集,报表管理。...webpack:用于现代 JavaScript 应用程序_静态模块打包工具 ES6:Javascript新版本,ECMAScript6简称。...利用ES6我们可以简化我们JS代码,同时利用其提供强大功能来快速实现JS逻辑。 vue-cli:Vue脚手架工具,用于自动生成Vue项目的目录及文件。...flyway5.2.1 : 主要用于在你应用版本不断升级同时,升级你数据库结构和里面的数据。...3、数据流程图 4、部分截图 拖拽编辑 日志大屏 5、最后 最后,防止找不到本篇文章,可以收藏点赞,方便翻阅查找。 还等什么呢?赶快来试试吧!项目源码和更详细安装部署文档已经放到了云盘!

    2.9K40
    领券