java
文章平均质量分 67
current_person
计算于千里之外,编码于须臾之间(www.codog.com.cn)
展开
-
我的很大, 你忍一下, Arthas trace 命令学习
前言public static int wuyifantime() { final int sleepTime = 1000 * 60 * new Random().nextInt(3); try { // 0 分钟到 3 分钟 Thread.sleep(sleepTime); } catch (InterruptedException e) { e.printStackTrace(); } changeobject(原创 2021-07-24 23:00:49 · 1116 阅读 · 5 评论 -
学好一宁喜欢的 Arthas SM 命令, 做好葱油饼
前言public class Main { public static String generateWord(String type) { switch (type) { &原创 2021-06-19 14:22:31 · 649 阅读 · 0 评论 -
Arthas OGNL 举例
前言妹妹: 姐姐平时都用这么多的命令么, 妹妹我平时啥也不会用姐姐: 妹妹自称平时啥也不会用, OGNL 用的这么熟, 增删改查样样都不落OGNL 命令学习OGNL 这个表达式可以获取相关的值, 方便排查问题OGNL 一般需要指定类加载器, 可以先使用 SC 命令查询相关类加载器的 hash 如下:比如常见的使用 OGNL 通过调用静态方法获取 Spring 所加载的 bean 类:ognl -c classLoaderHash -x 返回值的遍历的属性的层次 ‘OGNL表达式’g原创 2021-06-14 19:41:41 · 607 阅读 · 1 评论 -
Arthas Sc 命令解释
前言SC 命令学习sc -d classNamecode-source:类代码来源name:类全路径iisInterface:是否是接口isAnnotation:是否是注解isEnum:是否是枚举isAnonymousClass:是否是匿名类isArray:是否是数组isLocalClass:是否是局部类(https://www.geeksforgeeks.org/class-islocalclass-method-in-java-with-examples/)isMember原创 2021-05-18 21:46:29 · 2266 阅读 · 0 评论 -
提高系统稳定性-快速排查代码版本正确性
前言当自己找了半天终于找到了 bug 的原因, 开始了修改老 bug 制造新 bug 的旅程, 但是有时候当自己修改了代码的 bug 推送到远程分支开始编译部署了之后, 发现代码好像还是原来的 bug, 没有产生新的 bug, 感觉代码没推上去, 又不知道是不是真的没推上去还是就是原来的 bug 没有修复掉JAD 命令学习jad + 类的全路径名 查看类的代码和类加载器(启动类加载器会显示是空):jad -E + 正则表达式 找到符合该正则表达式的类的代码:jad..原创 2021-04-18 13:07:15 · 178 阅读 · 0 评论 -
提高系统稳定性-快速排查 JVM
前言线上 jvm 时不时也会遇到一些问题, 或者怀疑是问题的问题, 这个怎么排查下找下原因呢JVM 命令学习执行 help jvm 先看下 jvm 命令的说明, 很好, 啥参数也没有, 直接执行一下(以下说明是我找了一些资料整理的, 有不对的地方欢迎指正)RUNTIME 相关:INPUT-ARGUMENTS: JVM 启动参数CLASS-PATH: 类加载路径BOOT-CLASS-PATH: 扩展类加载路径LIBRARY-PATH: 第三方类库地址CLASS-LOADING 相关:L原创 2021-04-03 17:06:35 · 418 阅读 · 1 评论 -
提高稳定性-快速排查Thread
前言系统的稳定性还在于线上问题的快速排查, 比如线上 oom, 线程死锁, 连接池耗尽等等都可能会造成严重的生产事故.为此我打算系统学习一下 Arthas 和相关的知识安装curl -O https://arthas.aliyun.com/arthas-boot.jarjava -jar arthas-boot.jarThread 命令学习:选择好 attach 的进程, 进入 arthas 命令界面, 执行 help thread 展示了详细的命令.字段解释:Internal threa原创 2021-03-21 10:07:51 · 340 阅读 · 0 评论 -
提高系统稳定性-幂等性-悲观锁
前言继上次乐观锁方案之后, 接下来讨论幂等性的第二个方案悲观锁方案鉴于前两个系列文章的问题和乐观锁的缺点, 我们又提出了悲观锁方案保证接口的幂等性.回忆一下, 没有悲观锁的方式是这样的:有了悲观锁的时候:有几点讨论说明一下:是不是可以先去查, 查完之后再等修改的时候再锁, 其实查询完加锁是可以防止并发修改的, 只能一个一个的修改, 但是不能保证查询到的是正确的信息, 如果注册记录没有乐观锁的情况下, 还是会插入多条. 阻塞锁和非阻塞锁的区别: 非阻塞锁...原创 2021-03-06 17:56:17 · 396 阅读 · 0 评论 -
提高系统稳定性-幂等性-乐观锁
前言接下来讨论一下修改幂等性的第一个方案数据库幂等性假设我们有一个 user 表, 每次有人注册就向其中插入一条记录, 我们要保证修改的幂等性, 初步的想法可以有二种: 第一种是先在数据库里查询一下, 如果没有这个 email, 就像数据库里插入一条, 第二种是先删除这个email的记录然后插入一条新的email;我们先假设查询(删除)操作和插入操作不在同一个事务中, 会出现一种情况大概如下:删除也是类似的情况, 所以单纯的先查(删)后插的方式不能够解决这个问题.这时候呢, 可能有的小伙伴会发原创 2021-01-31 14:04:17 · 210 阅读 · 0 评论 -
提高系统稳定性-幂等性-第一篇
前言幂等性是个很有意思的概念, 大概是指一个函数被同一个入参反复调用, 每次产生的效果都保持一样, 经常和防重放在一起, 主要用于防止接口的重复提交和防止消息的重复消费或者保持消息的顺序消费和一些其他场景吧, 还有一些学术一些的分类, 比如 select/get 接口是幂等的, 其实这也没啥用.幂等必要性这个要讲起来涉及事务可见性, 重试机制, 消息队列特性, 对应的方案有分布式锁, 乐观锁, 状态机等, 所以我打算多水几篇文章, 这次打算单纯讨论下幂等防重方向的必要性场景一:比如这个是程序员必备原创 2021-01-16 19:34:49 · 181 阅读 · 0 评论 -
提高系统稳定性-资源有限性
前言随着硬件性能的大大提高, 很多情况我们的应用即使写的简单粗暴些, 系统也可以可用的, 只是极端情况下会暴露出问题, 这也就是对于系统稳定性追求的价值所在, 另一个我们充分利用资源, 不造成资源的浪费也可以减少集群所需要的机器数量节约成本.资源有限性场景应用存储有限性内存是一种高速, 造价昂贵的存储设备, 而磁盘速度较慢造价低廉. 内存是通过电流来实现存储, 磁盘是通过磁记录来实现存储. 所以电脑断电后, 内存中的数据会丢失, 而磁盘中的数据在不损坏的情况下可以长久保留内存有限性java 内存原创 2021-01-01 16:57:32 · 440 阅读 · 0 评论 -
提高系统稳定性-常见兼容性解决方案
前言继上篇文章, 有些小伙伴有些疑问, 比如 A 系统以来 B 系统的接口, 两个系统同时发布最新的代码版本不就不用考虑兼容性了, 但是这个受限于几个情况, 比如需要分组发布, 总共 30 台机器, 需要 10 个一组慢慢发布, 不然流量都打不过来了, 造成系统问题, 或者 A 系统是开放平台外面的系统或者是前端, 也需要给一定的时间来迭代或者灰度发布甚至要永久支持, 这样 B 系统是不得不考虑兼容性的. 不然就像下图这样, 神奇的默契,,,兼容性场景接口兼容性解决方案:修改..原创 2020-12-27 18:29:35 · 2402 阅读 · 0 评论 -
springbatch-readersandwriters
前言[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-iZTAgAl7-1607220276020)(/assets/2020120501.png)]Spring Batch 预定义 Readers&WritersSpring batch 提供了一些预定义的 reader 和 writer, 还有自己的生态, 所以可以很方便的找到合适的通用的 reader 和 writer, 如果不能满足再自己定义.官方自己的文档在这里:https://docs.spring.原创 2020-12-06 10:05:26 · 341 阅读 · 0 评论 -
SpringBatch - MetaData, 年轻人不讲武德
前言马保国男神, 混元形意太极拳掌门人, 在一次比武中, 年轻人不讲武德, 说打就打, 大意了没有闪而没有使出闪电五连鞭而被大家嘲讽Spring Batch 统计性在定时任务的运行过程中, 需要统计一些基本的数据, 比如本次运行的定时任务的入参, 任务读取, 处理, 跳过, 失败, 写入的次数这些关键数据Spring Batch 例子[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传我们先定义一个数据源:@Configurationpublic class DataSour原创 2020-11-28 23:09:10 · 750 阅读 · 0 评论 -
SpringBatch - Validate, 竟然敢摸清华女学生
前言清华美院一名女学生称男同学通过包的掩护摸自己的 PP 并将男同学的身份信息公开到社交媒体, 导致男同学险些社会性死亡, 后来查了监控才证明了男同学的清白.Spring Batch 可校验性我们经常需要大量的读取数据, 其中有些数据可能不符合我们的预期, 比如从接口读了个用户列表, 年龄字段存在负数, 这种可能就需要中断程序或者跳过处理, 接着处理下一条Spring Batch 可校验性例子reader 和 writer 都是原来的, 我们重新写个 processor:@Componentp原创 2020-11-21 19:39:06 · 670 阅读 · 9 评论 -
SpringBatch - SkipPolicy, 蚂蚁金服变马已今服
前言最近蚂蚁金服变成了 ‘马已今服’ 了, 我的朋友圈小伙伴们的表现有捶胸顿足的, 还有转发网抑云的我不配, 没这命这样的歌, 积极的动态也就是上市从来不是最终的目标, 下面我们通过 springbatch 的跳过策略来讲讲这个问题Spring Batch 可跳过性因为我们处理数据的时候有不同的需求, 比如有 100 条数据, 处理到第 6 条的时候失败了, 整个 step 都终止了, 这个可能是大多数批处理任务不希望看到的, 大多数的批处理任务是希望当前处理失败的记录下来, 单据补偿, 大多数的数原创 2020-11-05 10:22:27 · 752 阅读 · 3 评论 -
SpringBatch - Reusability, 尾款人讲可复用性
前言最近临近双十一了, 大家都变成尾款人了么, 这次主要解释下 Spring Batch 框架的组件可复用性Spring Batch 可复用性job 分为 step, step 分为 reader, processor, writer, 增加了不同的 job 之间输入/处理/输出能力的复用性所以根据这个模型, 不同的 job 可以使用相同的已经定义好的 step, 不同的 step 和使用相同的已经定义好的 reader, processor 和 writer, 后者因为粒度小, 所以这种情况显原创 2020-11-01 16:15:59 · 237 阅读 · 0 评论 -
1024 这天我成功拿到舞蹈厂 offer, 涨薪 50%
前言大家 2020 - 1024 (996) 快乐!!!最近有小伙伴问如何才能进入 bat, 可惜我虽然有过类似的相关的经验, 但是只是运气好而且也没有总结出什么面试必考的问题, 只是初步讲的话, 福报厂会更注重工程素质和底层原理, 舞蹈厂对算法和潜力更看重.这就让我想起在福报厂听到看到的二次面试经验. 第一次背景是我们一直在使用 jdk5, 其实公司外部大多数公司已经开始使用 jdk8 了, 这时候面试官上来就问面试的同学 HashMap 原理, 这同学回答了个红黑树, 面试官就怒了, 什么原创 2020-10-24 12:35:30 · 1508 阅读 · 0 评论 -
SpringBatch - Hello World, 学好免费进上海名媛群
前言这段时间上海名媛群成为了大家茶余饭后的谈资, 什么花了 500 元卧底上海名媛群, 本来以为能见识到纸醉金迷的上海人上人生活, 结果换来了一堆拼高端酒店, 拼下午茶, 甚至拼二手丝袜的… 但是仍然瞧不起开宝马的一堆名媛, 今天用这个热门事件作为 Spring Batch 的入门例子Spring Batch 介绍Spring Batch 是一种批处理框架, 不是定时任务触发框架, 比如使用 @Scheduled, Quartz, ElasticJob 等框架都能定时触发任务, 但是任务的内容编写除了原创 2020-10-16 20:36:20 · 323 阅读 · 0 评论 -
jk女孩被人偷拍&知名企业代码泄露, 原来是属性注解模式(Attribute Annotation Pattern)兴风作浪
目的可以屏蔽掉不同类的区别, 标记某些属性的不同从而对这些属性统一处理例子代码最近上海漫展一位身着大胆的女孩去报警, 因为自己身着 jk 制服参加漫展, 在地上做出各种姿势的时候走光被人偷拍, 并被职责污染了 jk 的圈子, 同时还有一则互联网届的新闻, 由于 sonar 服务器配置问题, 多个知名的互联网企业的代码都有泄露, 微软小米任天堂迪士尼等https://v.qq.com/x/page/y3127ka8n1t.html比如我们要初步描述这两个事件:定义一个企业类:@Data@All原创 2020-10-12 11:41:23 · 4402 阅读 · 0 评论 -
绿地高管绿了80后, AsyncMethodInvocationPattern(异步方法调用模式)来讲解
目的效率型设计模式, 意义在于不阻塞主流程的同时完成异步操作, 还能将异步操作的结果聚集回主线程例子代码最近 70 后绿地高管抢了 80 后男人的 90 后老婆的事情也闹得沸沸洋洋, 70 后谎称自己不孕不育然后没有采取安全措施导致这个 90 后怀孕了, 还要给 80 后老公一笔钱, 孩子归 80 后老公管,[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-iVvBK0hj-1602385923532)(/assets/2020052300.png)][外链图片转存失败原创 2020-10-12 10:04:07 · 240 阅读 · 0 评论 -
适配器模式:不要你觉得,我要我觉得
目的将现有的代码能力适配到新的接口例子代码赵高欲为乱, 恐群臣不听, 乃先设验, 持鹿献于二世日: “马也” 二世笑曰: “丞相误耶? 谓鹿为马.” 问左右, 左右或默, 或言马以阿顺赵高, 或言鹿者. 高因阴中诸言鹿者以法这就是很有名的指鹿为马的故事了, 我们可以看到赵高需要的是个马, 但实际上是个鹿, 我们怎么通过适配器模式来实现他的指鹿为马呢我们先定义一下鹿和马的接口:马:public interface Horse extends Target { void eat();原创 2020-10-12 10:03:55 · 99 阅读 · 0 评论 -
高考 607 分的我被清华大学录取了, 原来是抽象工厂模式(Abstract Factory Pattern)在帮忙
目的减少工厂方法情况下过多的工厂类, 将相关的类的创建使用同一个工厂方法例子代码最近有个考了 200 多分的同学冒充了清华的录取通知书, 家里杀鸡宰牛之后发现是假的, 听说其父亲被气得进了医院, 血压都比自己二个的分数高…抽象工厂模式[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-dKMwLDAc-1602386021174)(/assets/2020082100.png)]先定义一个 Offer:[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传原创 2020-10-12 10:03:40 · 194 阅读 · 0 评论 -
工作 996?Template Method Pattern:我太难了
目的做一件事情遵循着一定的步骤, 但每一步的具体细节可能不同, 就像把东西放入冰箱需要三步, 冰箱门打开, 把东西放进去, 冰箱门关上, 区别只是把苹果放进去的时候一个手拿放进去, 把西瓜放进去需要二个手抬进去, 把大象放进去需要 … …(我也不知道需要啥啦). ,这时候可以把步骤这种不变的部分和每一步的具体细节这种经常变化的部分剥离开, 从而实现代码的可拓展性例子代码作为程序猿/媛, 我们都是 “工作 996, 生病 ICU”(https://996.icu/#/zh_CN), 还要一些同学都 “0原创 2020-10-12 10:03:24 · 150 阅读 · 0 评论 -
想要上天找仙女?Bridge Pattern 来搭桥
目的将二个变化的维度分离开, 简而言之就是双重策略模式模式例子代码在中国古代神话中, 有很多仙女下凡与凡人相恋的故事, 比如牛郎-织女, 董永-七仙女, 刘彦昌-三圣母等等, 他们之间都隔着一道银河, 我们假设牛郎想去七仙女和三圣母那串门, 这个牛郎又看过(策略模式), 他想到他以后可能还要访问别的仙女(这到底是不是我认识的牛郎,), 就策略模式又搭了二个鹊桥(泛型方式请看策略模式文章):public interface NiuLangVisitStrategy { String visit原创 2020-10-12 10:04:29 · 173 阅读 · 0 评论 -
还是母胎solo?不如用Builder Pattern 捏一个男/女朋友
Builder Pattern(建造者模式)目的减少构造函数的数量, 去除参数过多的构造函数, 参数过多会引起可读性和易用性下降例子代码假如我们要建造个女朋友(心疼自己, 别人的女朋友不都是国家给发么, 我的怎么还需要自己 new, 国家啥时候给我发到底)女朋友有很多属性, 年龄, 性别, (还要有性别, 心疼自己, 带不带物种呀, 删删删), 姓名等, 不同阶段我们可能知道不同的属性, 所以我们将女朋友类设计如下:初始实现@Getter@Setterpublic class Girl原创 2020-10-11 11:08:18 · 143 阅读 · 0 评论 -
乘风波浪的姐姐们那么多, 缓存模式(Caching Pattern)来介绍
目的缓存降低耗时接口的结果, 重复查询时候可以减少时间消耗例子代码最近 <乘风破浪的姐姐们> 开播, 我作为一名资深宅男, 肯定不会放过这个综艺, 当我们想要查询根据 id 获取每个姐姐的信息的时候, 可能会比较耗时, 而这些信息基本不会变, 这时候就是缓存模式出场了.缓存模式定义一个查询:public interface QueryAction<T, R> { T queryFromCache(String key); T query(R r);原创 2020-10-11 11:07:25 · 142 阅读 · 0 评论 -
到底是不是隔壁老王?责任链模式帮小头爸爸洗绿
目的在发送请求的类和最终处理的类之间进行解耦例子代码小伙伴们都看过 大头儿子小头爸爸 么(大手牵小手, 走路不怕滑~), 当初纯洁的我怎么也没想到小头爸爸的绿帽子这么鲜艳[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-xt17MqqA-1602385559394)(/assets/2019101901.png)]话说大家都这么说, 大头妈妈天天在家里生气, 小头爸爸内心也忍不住了, 于是要证明自己的清(bei)白(lv)[外链图片转存失败,源站可能有防盗链机制,建议原创 2020-10-11 11:06:34 · 302 阅读 · 2 评论 -
面对新型冠状病毒,看组合模式如何模拟消毒
目的对树形结构的中间节点和叶子节点对客户端保持一致的处理例子代码最近全国都在新型冠状病毒引起的肺炎的阴影之下, 从年前隐隐约约听说武汉有个人得了非典, 到截止写文章的这个时候, 根据@今日头条的数据来看, 目前全国确诊 2823 例, 死亡 81 例, 连我们这个 10086 线的城市都有确诊案例, 这里面应该还有很多农村或者欠发达地区的一个统计盲点, 局势是非常严峻了, 但是现在应该还没有能够治愈的药物, 这次我也是领悟到了, 平安健康就是最好的, 希望大家都能够平安健康.大家目前肯定是希望能够进原创 2020-10-11 11:05:40 · 176 阅读 · 0 评论 -
装饰器模式
目的在不改变原有代码的前提下为原来的方法增加新的能力例子代码我今天在朋友圈突然发现了大家会分享自己的 “剪映” 的照片, 不出所料, 又是字节跳动的 APP, 只要是娱乐方向 APP, 只有你想不到, 没有字节跳动没做的, 8 周年一鸣大佬又要提高员工的幸福度又要进军教育了, “让天下没有难办的教育” 马上就要成为目标了…我大概看了看视频, 剪映大概是个图片渲染还是个画图软件类似的, 今天很火的好像是个 “手拿花花”, 大概是这个样子:[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直原创 2020-10-11 11:04:47 · 94 阅读 · 0 评论 -
Dependency Injection Pattern(依赖注入模式)
目的使得一个类的行为由设置的属性类的行为不同而不同例子代码小时候大家都应该会丢三落四, 及时长大了也经常找不到东西放在哪里, 总是需要问老妈, 妈我袜子放哪了, 妈我鞋放哪了…我们定义一个我们人这个类, People.(一)People 里面我们可以 new 一个 Mother, 然后调用 mother 类的方法,(二)或者我们可以定义一个方法叫做 callMother(Mother mother) ,其中 Mather 类如下:public interface Mother { S原创 2020-10-11 11:03:56 · 235 阅读 · 0 评论 -
互联网人35岁送外卖?Dirty Flag Pattern 竟“助纣为虐”!
目的避免不必要的耗时的重复计算代码例子福报厂实现 P8 以下全员 35 以下, 菊花厂清理 35 岁以下员工, 各个大厂裁员, 招聘要求低于 35 岁等, 各种真真假假的新闻让我们这种互联网人如坐针毡, 危机感满满, 像我这种刚 18 岁就要担心 35 岁的日子了, 貌似每个天天坐在办公室的互联网人到了 35 岁只能都去送快递, 送外卖了(也不知道能不能应聘得上)比如这天公司的老板叫你每天给他统计以下公司的平均年龄, 来作为优(cai)化(yuan)的依据, 我们目前只有一个组织结构树和一个根据员工原创 2020-10-11 11:03:02 · 138 阅读 · 0 评论 -
Execute Around Pattern 环绕执行模式
目的在执行同一类方法之前 或/和 之后需要做一些相同的操作例子代码清明时节雨纷纷, 路上行人欲断魂.今天全国各地都一起哀悼在过去几个月中英勇牺牲的英雄们, 前一段日子公司组织了捐款, 主要是针对一线医护人员的捐助, 是有专门跟踪和公开用途, 虽然有些组织实在是不行, 我还是信得过公司的, 也就贡献了一份力量, 希望为在这场疫情中我们遮风挡雨的一线医护人员一点帮助.抗击疫情已经取得了阶段性胜利, 大家仍然要注意保护自己, 我们都需要勤洗手, 戴口罩, 每个人洗手的方式可能不一样, 这里我们需求是每个原创 2020-10-11 11:02:12 · 194 阅读 · 0 评论 -
谁的青春不军训? 教官用了Iterator Pattern都说好
目的不需要知道具体的数据存储方式对数据进行不同方式的遍历例子代码最近考答(so)题(suo) 获得了 10.24 元狗物券, 猛地想起抹茶妹妹不知道怎么样了, 兄弟告诉我 不努力就不是我兄弟 现在只要学习设计模式学的好, 女朋友就还在初中军训[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-UzMDvDiN-1602385220804)(/assets/2019110100.png)]比如我们有一个军训方队, 每天要点名, 这时候我们实现了如下代码:先定义一个学生类:原创 2020-10-11 11:01:14 · 109 阅读 · 0 评论 -
不能说的秘密?标记接口模式来帮忙
目的标记一个类拥有某个能力或者使得其与其他类区分开例子代码这世上男人的身高和女人的体重是不可以被大家知道的, 所以别人问的时候我们都需要进行加密/脱敏, 比如我一米八(吧)并没有到处说.[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-NJ2svPku-1602296383846)(/assets/2019120801.png)] [外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接原创 2020-10-11 10:59:52 · 167 阅读 · 0 评论 -
队友总抢好装备, 互斥模式(Mutex Pattern)来安慰
目的保护一个资源在同一时间只会有一个资源持有者访问/操作例子代码最近好久没玩吃鸡了, 手都生了, 每局都是第二名的我不想过度吹嘘的我刚(fu)枪(di)技能, 最近一局很气, 我带着队友刚到房区, 刚下车听到三个脚步声知道打不过, 开车就跑, 但是倒地的队友挡住了我的车, 导致一起落地成盒了, 有队友好烦呀[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-b8jDkveg-1602296325263)(/assets/2020053000.png)] [外链图片转存失败,原创 2020-10-10 10:19:31 · 206 阅读 · 0 评论 -
又催婚?别怪我亮出 Null Object Pattern
目的避免上层代码进行空指针异常检查和保持上层代码的可读性和简洁性例子代码今年你妈逼你结婚了么? 程序猿的单身, 每到情人节, 七夕节, 1024 程序猿节甚至本来是单身狗保护日的双十一, 我们都被无情的秀恩爱秀了一脸, 最可怕的是到了过年回家, 面对七大姑八大姨的质问, 一句大侄子处对象了么, 一句还没呢足以让你成为接下来半小时的重点照顾对象(是不是眼光高呀, 我们村有个叫兰兰的不错, 你是不是 gay 呀), 对于这种情况我只有以下三点要说: …父母这面更是花式催婚啦, 什么看奶粉广告(你看电视这原创 2020-10-10 10:18:34 · 129 阅读 · 0 评论 -
小黄车退押金?池对象模式(Object Pool Pattern)来吐槽
目的节省一组常用对象创建的耗时例子代码你的小黄车押金退了么? 共享经济这个词从小黄车和摩拜之争被大家所关注, 目前二家的创始人的境遇完全不同, 但辉煌时刻都是非常不一般的, 融资过亿, 街道到处都是二个车的影子, 而现在还存在着人们视野中的共享经济应该还有共享雨伞和共享充电宝了.[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-MBgYiM2Y-1602296227251)(/assets/2019122801.png)]简单来讲共享经济其实就是使用了对象池模式, 所以原创 2020-10-10 10:17:42 · 205 阅读 · 0 评论 -
及时获取一手信息,观察者模式来帮忙
目的保持对象之间的联动和最终一致例子代码疫情还没过去, 生活还要继续, 最近从村里来到了上海打工, 好慌呀, 一千米之内三个确诊小区, 最近的 700 米, 回想一开始疫情开始抢口罩没抢过人家, 抢连花清瘟也没抢过, 双黄连口服液一醒来就没了, 好奇呀, 这就是定时看新闻不能及时获取信息的结果, 所以这里我向大家推荐新闻的自动推送强制提醒模式 -> 观察者模式比如我们有个新闻热词的汇总搜索功能, 当新闻的热词更新的时候会发送给订阅他的人先定义观察者的通用接口(对应 java 中的 java.原创 2020-10-10 10:16:53 · 269 阅读 · 0 评论 -
想参加多人运动?并行流(ParallelStream)模式教你成为时间管理大师
目的提高程序运行效率, 减少响应时间或者增加吞吐量例子代码最近罗*祥, 福报厂P12 jf 引起了大家的关注, 二位都是因为私人生活问题, 搞的微博程序员天天加班加服务器, 让我等吃了一个又一个瓜, 真是犯了全天下男人都会犯的错, 我感觉我就不会犯这种错, 当然是因为我是个好男人主要是因为没钱, 没名, 身体也…行了行了, 说远了, 我们还是可以从他们身上学习到这个时间管理大法的, 从而可以有时间多参加 ‘多人运动’我们假设有这么一个 ‘太虚公子’ 这个一个坏男孩, 要和三位女孩一起玩(shui)原创 2020-10-10 10:16:06 · 22216 阅读 · 0 评论