[代码优化] assert 断言可能的问题, 以及 argList 调用方法优化, RedisConfig 的注释与代码不一致问题 - #705
Merged
Conversation
断言不适合用于参数验证,因为断言可以在JVM中的运行时被禁用,这意味着错误的操作设置将完全消除预期的检查。此外,失败的断言会抛出断言错误,而不是抛出某种类型的异常。抛出错误完全超出了正常程序中预期的捕获/抛出行为的正常范围。使用 if 代替 断言, 并抛出 IllegalArgumentException 更可控
1. 注释写的是 默认两小时, 但是代码写的是 6 小时, 所以应指定哪一个 ? 2. 当没有出现碰撞时, 固定的 3个 kv 对, size 达到 3 个, 如果方法参数不为空, 则会触发 HashMap 扩容, 影响性能 3 + params.length > (2^2 * 0.75 = 3) 2. 仍然引用的是 apache 的方法, 为了去除歧义, 应使用全类名指定 如果方法返回值包含 null, 则加上 @nullable 注解, 代码更易读
传给 replaceAll 的参数不是正则表达式, replaceAll 和 replace 效果是一样的, 且 replaceAll 由于会调用 ava.util.regex.Pattern.compile()方法, 导致性能消耗更大
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
LogServiceImpl.java
RedisConfig.java
3 仍然引用的是 apache 的方法, 为了去除歧义, 应使用全类名指定
如果方法返回值包含 null, 则加上 @nullable 注解, 代码更易读
LimitAspect.java
传给 replaceAll 的参数不是正则表达式, replaceAll 和 replace 效果是一样的, 且 replaceAll 由于会调用 ava.util.regex.Pattern.compile()方法, 导致性能消耗更大, 故修改为 replace() 更好