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

代码审查:从 ArrayList 说线程安全

).collect(toList()); 就能很好的解决,确实如此,当时代码审查时意识到这里有线程安全问题,然后我就有点思维定势,只想着用解决线程安全问题的方式去处理,没有换个角度想到这种更好的写法。...---- 本文从代码审查过程中发现的一个 ArrayList 相关的「线程安全」问题出发,来剖析和理解线程安全。...,很显然这已经是属于线程不安全的情况了。...我提出代码审查的修改意见后,小伙伴将文首代码里的 List resultList = new ArrayList(); 修改为了 List resultList =...对应的,我们在做代码审查的过程中,也要对涉及到多线程使用的场景时刻绷着一根弦,在代码合入前把好关,将隐患拒之门外。 参考 线程安全——维基百科

95220

618、双十一促销活动监控怎样做

618要来了,小伙伴是不是都在忙着加班,备战活动呢?特别是活动监控,每次活动领导都一次次催监控数据,搞得人紧张兮兮。 那么,到底活动监控该怎么做呢?就拿上个月我司刚做过的一个小活动举个例子吧。...这个活动是一个很简单的全民派福利活动。从5月10日开始到5月31日,用户登录APP后可以领一张优惠券,优惠券在5月内都有效,满400减80呢。 活动好简单呀!...因此可以参照之前的活动数据,看看每日参与分布。 找到4月份类似的活动为参考。当时有80万人参加,在4月12日到4月30日,活动参与数据如下表所示。...虽然5月份活动时间和4月份不一样,但活动形式是一样的,这样就能参考4月份走势。仿照4月份走势,做5月的目标拆解如下: image.png 用同样的方法,可以拆解用券人数目标。...很有可能是这个活动本身设计的不好。比如就有小哥哥说:4月份活动效果好,是因为领的是满100减20。

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

    Java源码安全审查

    最近业务需要出一份Java Web应用源码安全审查报告, 对比了市面上数种工具及其分析结果, 基于结果总结了一份规则库. 本文目录结构如下:  ?...代码卫士 360出品, 名声似乎不太好, 误报比较多, 不过结果也有一定的参考价值. 如果代码在码云的话, 点服务一栏, 可以在线扫描码云库里的源码, 本地代码要去官网申请试用. ? 扫描结果 ?...*"的字符串,那么该段代码将会在执行其他指定命令的同时执行这条删除命令。  修复方式     (1)程序对非受信的用户输入数据进行净化,删除不安全的字符。     ...如下面代码片段中的SQL语句用于查询与指定标识符相匹配的清单。...不安全的FTP协议 代码中使用SFTP替代FTP 1 Channel channel = session.openChannel("sftp"); 2 channel.connect

    3K20

    vivo全球商城时光机 - 大型促销活动保障利器

    一、背景 官网商城在双11、双12等大促期间运营同学会精心设计许多给到用户福利的促销活动,当促销活动花样越来越多后就会涉及到很多的运营配置工作(如指定活动有效期,指定活动启停状态,指定活动参与商品等等)...在前序的促销系列文章我们介绍了计价中心的建设,计价中心统一收口了所有的优惠价的计算能力,因此我们只要让计价中心能提供「提前」的能力即可。...如果需体验大促期间整个官网商城的所有氛围,可能涉及改动的点较为多,比如大促宣传活动页面、专属聚合类商品页面,简化版的只关注整个购物下单流程。 整个穿越过程是否需要真的要真实创建订单?...显然为了各个业务系统能尽可能减少代码变动,获取「当前时间」适合做到一个公共模块中,各个业务系统依赖这个公共模块自动具备能获取所期待的「当前时间」。...(如果是其他接口调用方式的,也建议采用类似原理的处理方式) 下面我们就看下时光机模块中一些核心的代码实现:(当前业务系统作为消费方时执行的过滤器) 当前业务系统作为消费方时执行的过滤器 /** * 当前业务系统作为消费方时执行的过滤器

    4.8K20

    代码审查那些事儿

    代码审查那些事儿 定义 代码审查(英语:Code review)是指对计算机源代码系统化地审查,常用软件同行评审的方式进行,其目的是在找出及修正在软件开发初期未发现的错误,提升软件质量及开发者的技术。...代码审查常以不同的形式进行,例如结对编程、非正式的看过整个代码,或是正式的软件检查 from wiki 大概流程 时间: 最好每天或每周3 下班前1个小时 主持: 会议室,由leader主持...内容: 组内每人调400行代码的主逻辑出来查看 每人简述完毕后,QA环节 挑取有效的建议,标注到upsource的代码审查系统 清单 审查内容 代码安全代码性能 代码注释 单元测试...代码优化 格式化 分类 封装方法 注意 代码审查应该是日常工作 审查内容不要过多,关注主逻辑,行数不要超过400行 代码审查过程要保持心态平和,每个人都是值得尊重的 补充 upsource...是jetbrain公司出的一个团队协作的代码审查系统,可以配合idea实时显示评论.安装时免费的,但是团队的成员账号不能超过5个.如果超过则需要给钱买授权;免费的适合小组内的代码审查.目前在用,感觉还行

    73620

    vivo全球商城时光机 - 大型促销活动保障利器

    一、背景 官网商城在双11、双12等大促期间运营同学会精心设计许多给到用户福利的促销活动,当促销活动花样越来越多后就会涉及到很多的运营配置工作(如指定活动有效期,指定活动启停状态,指定活动参与商品等等)...在前序的促销系列文章我们介绍了[计价中心的建设],计价中心统一收口了所有的优惠价的计算能力,因此我们只要让计价中心能提供「提前」的能力即可。...如果需体验大促期间整个官网商城的所有氛围,可能涉及改动的点较为多,比如大促宣传活动页面、专属聚合类商品页面,简化版的只关注整个购物下单流程。 整个穿越过程是否需要真的要真实创建订单?...显然为了各个业务系统能尽可能减少代码变动,获取「当前时间」适合做到一个公共模块中,各个业务系统依赖这个公共模块自动具备能获取所期待的「当前时间」。...(如果是其他接口调用方式的,也建议采用类似原理的处理方式) 下面我们就看下时光机模块中一些核心的代码实现:(当前业务系统作为消费方时执行的过滤器) 当前业务系统作为消费方时执行的过滤器 /** * 当前业务系统作为消费方时执行的过滤器

    4.7K20

    花钱办活动效果不明?零售企业应该这样量化促销活动成效

    问题:费时费力的花钱举办了一场打折优惠促销活动,可是零售商家如何知道活动办得好不好?...面对打折、满减、优惠券、代金券、大抽奖、储值卡等等形形色色的促销形式,商家该怎样评判每次促销活动的成功与否、收益如何呢? 今天我们用3个典型的活动分析场景,拆解活动效果量化的数据分析思路。...分别针对单个活动成果、活动前后销售影响、投入产出收益,再现零售企业促销活动的基本分析框架。 1、活动业绩 活动业绩主要用于单个活动的成果监控/复盘。围绕着目标达成情况,考量活动是否满足业务预期。...根据基础等式:销售额=客单价*销售量,促销活动的核心目标基本围绕着客单价和销售量。...假设当月不举办促销活动,正常的销量和价格带来的收益(一般为销售额或者利润)为A1,举办该促销活动的收益为A2。

    6.3K10

    面试作业之浅析京东促销活动核心模型 - DDD

    每天都会发布相关的促销活动,来勾起消费者的购物欲望;每逢佳节还会进行大量的让利惠民,来促进全民狂欢。...因为大家都对电商这个大领域很熟悉了,所以我划分出一个促销中心/子域来支撑订单核心域的促销活动,也就不用解释了。...由于每个促销手段都有自己的促销规则,所以使用设计模式中的策略模式来封装这个变化点。 梳理业务场景 从京东帮助中心了解到,所有的促销活动都是在买家下单时,进行递减相应商品金额的。...买家在下单时,会对订单进行相应促销活动的验证,因此促销聚合根需要提供一个验证促销手段的规则。...现在我们就用这些工具来驱动设计我们的促销子域。UML图如下: 到目前为止,我们已经完成了领域驱动领域模型设计,接下来就是领域模型驱动代码实现,请听下回分解。

    3.4K30

    代码审查工具StyleCop

    代码审查”或是“代码评审”(Code Review),这是一个流程,当开发人员写好代码后,需要让别人来review一下他的代码,这是一种有效发现BUG的方法。...由此,我们可以审查代码的风格、逻辑、思路……,找出问题,以及改进代码。因为这是代码刚刚出炉的时候,所以,这也是代码重构,代码调整,代码修改的最佳时候。...长时间以来,Code Review需要有一些有效的工具来支持,这样我们就可以更容易,更有效率地来进行代码审查工作。...StyleCop是代码规范检查工具(Code Review 工具),它不仅仅检查代码格式,而是编码规范,包括命名和注释等。StyleCop可以帮助你更容易地进行这项活动。...它会根据预定义的C#代码格式的最佳实践,对我们的源代码进行检查,并给出不符合编码风格的错误提示。

    1.8K50

    提高代码质量之代码审查

    所以代码审查(Code Review)就像是把玩鉴赏手工艺品一样,通过审查代码来体会编码者的思维逻辑,同时相互学习取长补短。代码审查是提高个人和团队的代码质量的一个很有用的方法。...个人对自己的代码可以进行代码审查,因为今天的你已经不是昨天的你,你可以站在不同的角度和不同的层次来审查自己过去的代码。子曰:温故而知新。所以对于自己的代码应该定期做Code Review。...相比之下团队的代码审查就不是那么容易实施了。但是代码审查在团队中能体现出更大的促进作用。...如果是个人或者小团队,不想开源自己的代码的话,也可以利用Bitbucket来建立私有库托管代码和进行代码审查。 总之 XXXX是一把双刃剑,代码审查也是如此。...进行代码审查对于组织者的能力要求比较高,要多思考和调整,激发大家一起来做好代码审查,发挥其最有益的效用。

    1.1K10

    # 代码风格审查工具Cpplint

    代码风格审查工具Cpplint 它山之石,可以攻玉。...--《诗经·小雅·鹤鸣》 1,简介 Cpplint是一个Python脚本,作为一款开源免费的代码静态检测工具,Google也使用它作为自己的C++代码检测工具,也就是说,只要你想代码遵从Google...C++代码规范,那么Cpplint将会提供很好的代码静态检测支持。...Cpplint只是一个代码风格检测工具,其并不对代码逻辑、语法错误等进行检查。 2,安装 Cpplint在Window下可以如下几种方式使用 2.1运行命令行检测 使用命令即可对代码文件进行检测。...屏蔽代码不被检查 假设代码中有些部分不希望被检查,或者觉得是cpplint产生的误报。仅仅须要在对应代码行尾加入凝视”// NOLINT”就可以,cpplint就会跳过这些行。

    5.1K40

    如何编写代码审查文档

    最近功能开发完毕需要做代码审查,发现国内很多公司不强制要求编写代码审查文档,很多人并不会认真思考代码审查文档需要包括哪些内容,大概该怎么写。...我的看法是,虽然一般公司不要求写代码审查文档,但是最好自己能够准备一个,方便线下代码审查时不遗漏重点,跟踪代码审查的修改情况等。 本文简单给出一个简单的参考。...问题和改进意见收集表:准备一张表格,可以在代码审查时记录代码审查人员提出的问题和给的改进意见,并跟踪自己的修改情况等。...2.2、代码审查清单 给出代码的仓库地址和代码的分支,项目代码相当于 Master 的diff 链接等。...三、总结 其实准备代码审查文档并没有浪费很多时间,线下代码审查时自己能够非常清楚自己代码的重点,就可以避免遗漏要点,审查效果会更好。

    95630

    前端代码审查清单

    前端代码审查清单是一个保证前端代码质量的审查清单。当我们在开发写代码的时候,总会各种各样的问题,自测的时候由于太熟悉自己的代码逻辑往往测试不够充分,无法发现问题。...前端代码审查清单就是为了解决这个问题!清单存放了一些常见的问题,当我们开发完成之后,对照清单思考一下这些问题在代码中是否遇到或者妥善处理,从而提高代码质量。...前端 前端安全 所有的用户可以在页面中输入信息的地方,是否做了防 XSS 以及特殊字符的过滤处理? 与后端接口交互,获取信息使用 GET 方式,传送信息使用 POST 方式。...代码质量 你的代码是否遵循团队要求的代码规范? 是否有冗余代码没有注释掉或者删掉?例如:删除或者注释 console.log 避免低端 IE 报错等。 关键功能是否还有优化的空间?...贡献 由于本人才疏学浅,部分场景没有覆盖,欢迎大家补充更多审查点,提高前端代码质量!

    74220

    Jenkins+SonarQube代码审查

    Jenkins+SonarQube代码审查 引言 安装PostgreSQL 安装SonarQube 实现代码审查 概述 Jenkins安装SonarQube Scanner插件 安装SonarQube...Scanner Jenkins配置Sonar Server 非流水线项目添加SonarQube代码审查 流水线项目添加SonarQube代码审查 ---- 引言 SonarQube是一个用于管理代码质量的开放平台...cd /usr/local/sonarqube-8.6.0/extensions/plugins ---- 生成令牌(需要将生成的令牌复制下来): ---- 实现代码审查 概述 Jenkins安装...- Jenkins配置Sonar Server Manage Jenkins->Configure System->SonarQube servers: ---- 非流水线项目添加SonarQube代码审查...system encoding sonar.sourceEncoding=UTF-8 sonar.java.binaries=**target/classes ---- 流水线项目添加SonarQube代码审查

    1.2K11

    活动促销必备|双十一你守护 Ta,天御守护你

    年少时,课程比较少,与几个室友,看到优惠就点击,看到促销就抢购,遇到双十一还找人代替抢购,只需花10-20元不等就可以请专业刷单代抢成功抢到价值上百元的东西,不到五分之一的价格,很是划算(当然随着这个行业的壮大...,也有被骗的时候:)) 由几百到几百万 那个时候不懂商家的业务安全,不知电商行业老板、O2O行业老板、P2P行业老板、游戏行业老板、支付行业老板们的苦水,天真的以为既然是优惠就是商家愿意花这个成本在促销上的...针对电商、O2O、P2P、游戏、支付等行业在促销活动中恶意刷取优惠福利这样一种“薅羊毛”行为的团队,我们叫做“羊毛党”。一不小心,企业就会蒙受像上述截图那些案例里的经济损失。 “羊毛党”获益图示 ?...不要低估任何一个“羊毛党”团队的作战力 因为对他们来说,成本太低廉了 传统厂商在制定防刷安全策略时,主要采用IP限制、帐号限制、验证码等方式,下表为厂商的部分安全策略与黑产对抗策略的比较: ?...天御已经为客户面临的十几种恶意场景提供了安全的服务保证,使得客户的优惠最终能够触达用户。 来不及了,快上车 双十一在即 入门、基础、增强三个版本 你需要哪个护驾?

    9.2K40

    代码审查拯救世界?

    代码审查是指阅读代码来检查源代码与编码标准的符合性以及代码质量的活动。现在,越来越多的团队倡导要进行代码审查活动,而本文作者通过一幅漫画,来诠释其对代码审查的理解,观点可能不符合大家的常规心理。...通过代码审查解决? 我想问的主要问题: 代码审查期间真的会发现问题或bug吗?...➤静态代码分析 这样的bug在我的代码中根本不会发生,因为我们在整个项目中都启用了静态代码分析。例如FindBugs这款软件,它会立即揪出这种bug。...代码审查会发现这个bug吗?对还是不对呢? 人类擅长推理、思考、富有创造性、并且发现错误,但语法编译对人类来说是一件可怕的事情。...在代码审查期间,你可能仅仅发现一些拼写或基础错误(typo)但并未真正发现bug。难道第二双眼睛就可以发现了吗?

    96760

    前端代码审查清单

    前端代码审查清单是一个保证前端代码质量的审查清单。当我们在开发写代码的时候,总会各种各样的问题,自测的时候由于太熟悉自己的代码逻辑往往测试不够充分,无法发现问题。...前端代码审查清单就是为了解决这个问题!清单存放了一些常见的问题,当我们开发完成之后,对照清单思考一下这些问题在代码中是否遇到或者妥善处理,从而提高代码质量。...前端 前端安全 所有的用户可以在页面中输入信息的地方,是否做了防 XSS 以及特殊字符的过滤处理? 与后端接口交互,获取信息使用 GET 方式,传送信息使用 POST 方式。...代码里获取 window.location 相关属性的地方,是否对里面的 XSS 字符做了过滤处理? 前端性能 JS 代码是否尽量放在底部?CSS 代码是否尽量放在了顶部?...代码质量 你的代码是否遵循团队要求的代码规范? 是否有冗余代码没有注释掉或者删掉?例如:删除或者注释 console.log 避免低端 IE 报错等。 关键功能是否还有优化的空间?

    1.2K00
    领券