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

订阅通知 | 我的代码没有else

嗯,我的代码没有else系列,一个设计模式业务真实使用的golang系列。 ? 前言 本系列主要分享,如何在我们的真实业务场景中使用设计模式。...所有发生变更,需要通知的业务场景 详细说:只要发生了某些变化,需要通知依赖了这些变化的具体事物的业务场景。 我们有哪些真实业务场景可以用「观察者模式」呢?...代码demo package main //------------------------------------------------------------ //我的代码没有`else`系列...我的代码没有`else`,只是一个在代码合理设计的情况下自然而然无限接近或者达到的结果,并不是一个硬性的目标,务必较真。 2....---- 我的代码没有else系列 更多文章 代码模板 | 我的代码没有else 链式调用 | 我的代码没有else 代码组件 | 我的代码没有else 点击https://github.com/

1.8K20

代码模板 | 我的代码没有else

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

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

    链式调用 | 我的代码没有else

    嗯,我的代码没有else系列,一个设计模式业务真实使用的golang系列。 ? 前言 本系列主要分享,如何在我们的真实业务场景中使用设计模式。...满足如下要求的场景: 业务极度复杂的所有场景 任何杂乱无章的业务代码,都可以使用责任链模式(改)去重构、设计。 我们有哪些真实业务场景可以用「责任链模式(改)」呢?...代码demo package main //--------------- //我的代码没有`else`系列 //责任链模式 //@auhtor TIGERB我的代码没有`else`,只是一个在代码合理设计的情况下自然而然无限接近或者达到的结果,并不是一个硬性的目标,务必较真。 2....---- 我的代码没有else系列 更多文章 代码模板 | 我的代码没有else 点击https://github.com/TIGERB/easy-tips/tree/master/go/src/patterns

    1.7K40

    客户决策 | 我的代码没有else

    嗯,我的代码没有else系列,一个设计模式业务真实使用的golang系列。 ? 前言 本系列主要分享,如何在我们的真实业务场景中使用设计模式。...我们有哪些真实业务场景可以用「策略模式」呢? 比如: 缓存: 使用什么样的nosql 存储: 使用什么样的DB 支付: 使用什么样的支付方式 等等......------------ //我的代码没有`else`系列 //策略模式 //@auhtor TIGERB //------------------...我的代码没有`else`,只是一个在代码合理设计的情况下自然而然无限接近或者达到的结果,并不是一个硬性的目标,务必较真。 2....---- 我的代码没有else系列 更多文章 代码模板 | 我的代码没有else 链式调用 | 我的代码没有else 代码组件 | 我的代码没有else 订阅通知 | 我的代码没有else

    91920

    我不曾忘记的初心-愿天堂没有代码

    已经过去4年了,q群里已经有1年没人在里面聊天了,他还在,大家总会想起他,看过第一篇“我不曾忘记的初心的-10年”文章的朋友, 应该记得2011年我进入了通行行业的公司,在那里认识了一位鹏飞兄弟,当时我是负责带一个...跟他相处有半年时间,后来我离开了那个公司,没过多久鹏飞也离开了,跟着公司其他4个同事离开郑州去了北京。...,后来互相找到公司的位置不同,在加上胖孩和迪迪他们有了女朋友大家都分开住了。...离开病房的那一刻迪迪和胖孩抱在一起哭了,没有想到一起来北京成为北漂的他们,战友变成了这样。...网上发生的事情非要让我现实遇见,曾经的战友就这样离开了我们…… 所有人,甚至我们自己,都希望在年轻的时候,努力一些,再努力一些,透支时间、身体、甚至生命,只为了有一天华丽转身。

    87130

    没有之一,我见过的最漂亮代码!!

    我曾经花两天的时间来调试一个使用了这个循环的复杂程序,并且几年以来,当我需要完成类似的任务时,我会很小心地复制这段代码。虽然这段代码能够解决我所遇到的问题,但我却并没有真正地理解它。...考虑到通过缩减代码量所得到的好处,我最后以第三种方式来问自己在本章之初提出的问题。“你没有编写过的最漂亮代码是什么?”。我如何使用非常少的代码来实现大量的功能?...通过十三行的代码和一些实验可以反应出许多问题。这里,我们引用作家Blaise Pascal和T. S. Eliot的话,“如果我有更多的时间,那么我给你写的信就会更短。”...* 如果我有更多的时间,那么我给你写的信就会越短(Pascal) * 发明家的矛盾:计划越宏大,成功的可能性就越大。...我实现了每一小段代码,并且亲自把每段代码都分解为基本的知识。我希望其他人在阅读这些代码时与我在编写这些代码时有着同样的享受过程。 软件系统 为了有针对性,我极其详尽地描述了一个小型任务。

    1.8K2219

    我有几个代码调试的奇技淫巧。

    你好呀,我是why。 在我早期出了很多源码解读文章的时候,就有朋友私信我,要我出一篇关于 Idea 调试的小技巧的文章。...今天就给大家分享一篇来自空无同学的文章,关于调试的奇技淫巧写的还是挺全的。 大家可以看看,是否有之前没有操作过的姿势,学习学习,补充一下自己的姿势库。...反正我是都用过的,这些姿势,呸,知识挺有用的。 以下是正文。...小提示:远程调试下,由于有网络的开销,反应会比较慢,而且会导致远程程序的暂停,使用时请找一个没有人使用的环境。 多线程下的调试 多线程程序是比较难写的,确切的说是很难调试。...好了,上面就是我要给大家分享的一些调试的小技巧啦。 你有没有什么独家的调试姿势呢? 欢迎大家在留言区分享。 ----

    93440

    读者说我的代码有内存泄漏的风险

    昨天发表了一篇文章:手把手教姐姐写消息队列,其中一段代码被细心的读者发现了有内存泄漏的危险,确实是这样,自己没有注意到这方面,追求完美的我,马上进行了排查并更改了这个bug。...我先贴一下会发生内存泄漏的代码段,根据代码可以更好的进行讲解: func (b *BrokerImpl) broadcast(msg interface{}, subscribers []chan interface...验证流程 首先我们先运行我的测试代码,然后打开我们的终端输入如下命令: $ go tool pprof http://127.0.0.1:6060/debug/pprof/profile -seconds...知道了什么问题,接下来我们就来分析一下原因吧。 原因分析 分析具体原因之前,我们先来了解一下go中两个定时器ticker和timer,因为不知道这两个的使用,确实不知道具体原因。...修复bug 方法一:使用timer定时器 time.After虽然调用的是timer定时器,但是他没有使用time.Reset() 方法再次激活定时器,所以每一次都是新创建的实例,才会造成的内存泄漏,我们添加上

    66710

    这是我见过写得最烂的Controller层代码,没有之一!

    实际工作中,我们会定义一个统一的格式,就是ResultBean,分页的有另外一个PageResultBean。...return configService.add(); } 很多人都觉得技术也很简单,没有什么特别的地方,但是,实现这个代码框架之前,就是要你的接口的统一的格式ResultBean,aop才好做...同样,如果我后面的关于习惯和规范的帖子,你重点还是放在技术上的话,那是丢了西瓜捡芝麻,有很多贴还是没有任何技术点呢。...Controller规范 上面2段代码,第一个是原生态的,第2段是我指定了接口定义规范,使用AOP技术之后最终交付的代码,从15行到1行,自己感受一下。接下来说说大家关注的AOP如何实现。...请对比 吐槽我见过的最烂的java代码里面原来的代码查看,没有对比就没有伤害。 最后说一句,先有统一的接口定义规范,然后有AOP实现。先有思想再有技术。

    61330

    这是我见过写得最烂的 Controller 层代码,没有之一!

    实际工作中,我们会定义一个统一的格式,就是ResultBean,分页的有另外一个PageResultBean。...return configService.add(); }很多人都觉得技术也很简单,没有什么特别的地方,但是,实现这个代码框架之前,就是要你的接口的统一的格式ResultBean,aop才好做。...同样,如果我后面的关于习惯和规范的帖子,你重点还是放在技术上的话,那是丢了西瓜捡芝麻,有很多贴还是没有任何技术点呢。...Controller规范上面2段代码,第一个是原生态的,第2段是我指定了接口定义规范,使用AOP技术之后最终交付的代码,从15行到1行,自己感受一下。接下来说说大家关注的AOP如何实现。...请对比 吐槽我见过的最烂的java代码里面原来的代码查看,没有对比就没有伤害。 最后说一句,先有统一的接口定义规范,然后有AOP实现。先有思想再有技术。

    49730

    我这里取出来的数据(最后边的excel)有点问题,我没有要取性别的数据,但是表里有

    截图如下图所示: 二、实现过程 这里【甯同学】给了一个思路,基于openpyxl写出来的代码,如下所示: import openpyxl def append_rows(sheet,rows):...这篇文章主要盘点了一个Python自动化办公的问题,文中针对该问题,给出了具体的解析和代码实现,帮助粉丝顺利解决了问题。...最后感谢粉丝【不争】提问,感谢【瑜亮老师】、【甯同学】给出的思路和代码解析,感谢【eric】、【冫马讠成】等人参与学习交流。 【提问补充】温馨提示,大家在群里提问的时候。...可以注意下面几点:如果涉及到大文件数据,可以数据脱敏后,发点demo数据来(小文件的意思),然后贴点代码(可以复制的那种),记得发报错截图(截全)。...大家在学习过程中如果有遇到问题,欢迎随时联系我解决(我的微信:pdcfighting1),应粉丝要求,我创建了一些高质量的Python付费学习交流群和付费接单群,欢迎大家加入我的Python学习交流群和接单群

    17920

    被通知一个月后离职,我改了重要项目里的代码注释

    乍看上去,这些注释还挺像那么回事,但实际内容跟代码功能已经没有任何关系了。 “接手工作之后,我的第一项任务就是为项目添加更多功能。这事当然做不成,因为我根本没法通过注释理解现有代码的作用。”...一年之后,我离开了项目组,但这些黑盒代码还是继续运行了五年,直到另外一家咨询公司全盘接管。” 但即使到今天,这些代码可能还是在某个隐秘的角落保持着运行。毕竟,黑盒代码就跟蟑螂一样顽强。...Dave K 举例他曾面临过的类似状况——但被解雇的不是他,而是其顶头上司。人力通知说公司已经确定要被收购,新的母公司认为没必要保留两位 IT 主管。...有网友分享说,曾接触过那种技术很强、但完全让人无法与之共事的家伙——他不给代码写注释、也不参加例会,因为他觉得自己很聪明,认定这些事情都是浪费时间。...其实他之前负责的项目根本不受千年虫问题的影响,项目文档已经更新完毕、交接工作也相当顺利,但项目经理还是希望他能“小心谨慎”。问题是,有什么可小心的?

    33030

    谁再问我如何写出没有Bug的代码,我上去就是一jio!

    在我所担任过的角色中,有一个岗位叫做 Development Manager,通常简称 DM。...,要这么说的话,会直接被怼回来:“你丫的自己不会用吧!”。 你可以换个说法:“咦,这里好像不对,是我操作错了吗?”,这时程序员心里就一咯噔:“Shit...不会是我代码有 bug 吧?”...从效用上完全等效于充满 bug 的一堆代码。你可能会辩解,程序还没写完呢,只是功能还没实现,并没有 bug。 事实上,换位思考一下,缺失某个功能和包含一个有故障的功能,对于用户而言,都是无用的。...有 bug 的地方就有麻烦,有麻烦就有解决麻烦的需要,客户就是给那些能解决麻烦事的人支付报酬的。只处理简单的问题,是没有价值的,市场只认可那些面对困难能提供解决方案的人。...恭喜,你们的项目经费增加了一点点。 英格兰有句谚语:Where there's muck,there's brass。 如此看来,“如何写出没有 BUG 的代码?”

    1.7K30

    我,开发者,在元宇宙里有一行自己的代码!

    但对研究者而言,想要上手研究扩展现实领域,还需要耗费不少时间、精力去解决繁琐的环境配置、不同代码库的底层规范以及代码库之间串接的问题。...当前,无论学术界还是工业界,扩展现实领域有非常丰富的算法研究方向,并有许多算法得到好评。...然而由于这一领域中,还没有像计算机视觉领域一样建立完整的开源算法生态,且当前的每个算法库相对独立,同时也缺乏统一的底层基座。...从整体上看,XR领域的底层有各式各样的传感器和不同的操作系统,上层有丰富的应用比如AR/VR、数字孪生、数字人等等,OpenXRLab致力于在底层的硬件和上层的操作系统间架起一座桥梁,供研究员方便迭代新的算法...目前,该框架以音乐生成舞蹈为切入点,构建人体动作生成代码库。 XRMoGen的亮点有3个: 第一个是代码结构清晰,易读性高,提供了较为详细的使用文档。 第二个是框架容易上手。

    63330

    有了 IDEA 的历史代码恢复,我再也不怕出错了!

    有了 IDEA 的历史代码恢复,我再也不怕出错了! 在我们的日常开发工作中,总会因为某些原因需要将代码恢复到之前的版本。...比如说使用代码生成之后,突然发现生成错了,之前的代码已经被覆盖了,按 Ctrl + Z 已经不管用了,该咋办呢? 这时候我们就需要使用 IDEA 的历史代码恢复功能,本篇文章我就给大家讲解这个功能。...查看代码历史版本 首先我们鼠标选定对应的代码文件 --> 右键选择 Local history --> Show History。...[打开代码历史记录.png] 这时候我们可以在左侧选择查看不同时刻的代码版本,并且在右侧会高亮显示当前代码版本与你选定的历史版本代码的区别。...[恢复.png] 生成了 toString() 之后,我再恢复到之前没有 toString()代码的版本。

    93230

    代码行云流水..这位刚高中毕业的 UP 主,告诉我人的学习能力没有上限

    简介:我从未想过,一个人敲代码可以这么快..这么顺畅。我将为各位介绍一位 B 站 UP 主 TheCW ,目前应该在上大二,粉丝 2.7 万(持续增长中)。...: 我觉得 UP 并没有刻意展示其学习能力,但是他的视频所体现的学习能力真的震惊到了我,我甚至觉得,他解决问题的能力与工程能力,是不低于国内 985 大学研究生平均水平的......我从来都没有见过/也无法想象这么棒的 键盘/硬件配置 + vim(以及自设快捷键/插件) + 终端 + 书写习惯 ,很感谢 UP 让我认识到了,工程能力的提升真的是没有上限的。...内藏干货:神经网络、深度/强化学习讲解[4] ,我去 GitHub 上找过,这些代码 UP 并没有开源,我在今年五一假期,用三天时间按照自己的理解复现了这个项目,你可以在 公众号【Piper蛋窝】回复【...人工智障】 查看我为此写的 7 篇文章(包括:游戏的制作、基于传统控制算法的控制、基于强化学习算法的控制、强化学习的“意义”、项目源代码地址);此外, UP 讲解的 go 系列视频也让我大开眼界——有机会

    83640

    【亲测有效】装了双系统后在ubuntu下耳机没有声音的解决方法

    今天尝试了好多种的不同方法,最后总结一下几种常见的出错情况,希望对大家有帮助: 1:第一种有可能是你设置了静音情况,点开音量图像设置即可。...2:第二种是终端下的方法: (1)打开终端(可输入 crtl+alt +T 打开),在终端输入alsamixer,在出现出现的画面中,设置Speaker将其调大,看看是否有声音。...(可采用F5,F6切换界面,用上下左右键选择) (2)如果经过上面的操作仍然没有声音,那么可能就是你的系统没有及时更新,可通过以下步骤更新你的ubuntu系统。...->更新管理器; 升级命令: 系统升级 #sudo apt-get update #sudo apt-get upgrade #sudo apt-get dist-upgrade 3.如果再没有解决那最后一步...,关机后再开机,这也是解决我的电脑的方法,希望对大家有用,有什么问题大家给你共同交流。。 有错的地方多多指教,共同进步。谢谢

    37310

    Html Notification通知的简单使用(转)

    但是,恕我愚钝,一直没想明白原理。难道Facebook和Chrome酱有合作,如果是这样那就是特例;如果不是,那通知是哪里发出的呢? 求达人解惑!...是可选参数,根据MDN的说法,Gecko 46开始舍弃了这种语法,但是,我自己使用FireFox 47测试,跑得很正常(有part4的截图为证)。...标记当前通知的标签。 icon 字符串。通知面板左侧那个图标地址。 data 任意类型和通知相关联的数据。 vibrate 通知显示时候,设备震动硬件需要的振动模式。...所谓振动模式,指的是一个描述交替时间的数组,分别表示振动和不振动的毫秒数,一直交替下去。例如[200, 100, 200]表示设备振动200毫秒,然后停止100毫秒,再振动200毫秒。...下面这些呢有必要独立出来,虽然现在是支持挺好的,但是,由于目前规范并没有把它们列入其中,所以,未来有可能浏览器就不支持了。

    2.9K10
    领券