【9-2:代码规范】

算法级思想

代码规范(java)

  1. 方法参数必须一致,不要出现自动装箱拆箱操作
  2. SimpleDateFormat是线程不安全的
  3. 使用equals注意空指针
  4. 异常日志
    • 事务场景中如果出现异常被捕时注意回滚
    • 不要再finally中使用return方法
    • 应用中不可直接使用日志系统:log4j
  5. 单元测试
  • 好的单元测试必须遵守 AIR 原则
    • 单元测试在线上运行时,感觉像空气(AIR)一样并不但在测试质量的保障上,却是非常关键的,好的特点。
    • 单元测试宏观上来说,具有自动化、独立性、可重复执行
  • 单元测试应该是全自动执行的,并且非交互式的
    • 输出结果需要人工检查的测试不是一个好的单元测试。
    • 单元测试中不准使用 system.out来进行人肉验证,必须使用 assert 来验证。
  • 单元测试是可重复执行的,不能受外界影响
  1. 数据隐私信息应该做脱敏处理
  2. 用户请求传入的任何参数都必须做有效性验证
    • page size 过大导致内存溢出
    • 恶意 order by 导致数据库慢查询
    • 缓存击穿
    • 服务器端请求伪造(SSRF)
    • 任意重定向SQL注入,shel注入,反序列化注入·正则输入源串拒绝服务 ReDoS
相关推荐
深圳老胡1 小时前
STM32 工程在 VSCode 中用 AI 搭建软件骨架架构:从零到可运行的分层实践
笔记·stm32·单片机·代码规范
深圳老胡2 小时前
STM32 工程在 VS Code 中的编译与调试:AI 辅助工具实战指南
笔记·stm32·单片机·代码规范
这个DBA有点耶18 小时前
索引建了查询却更慢——优化器选错索引与Index Merge的隐藏代价
数据库·架构·代码规范
深圳老胡18 小时前
STM32CubeMX 2 与 STM32CubeMX 的主要区别
笔记·stm32·单片机·代码规范
深圳老胡1 天前
STM32C5A3ZG开发板:基于STM32CubeMX与VSCode的按键检测与LED闪烁实战
笔记·stm32·单片机·代码规范
深圳老胡1 天前
STM32C5 应用阶段开发难点解析:从选型到量产的实战经验
笔记·stm32·单片机·代码规范
这个DBA有点耶2 天前
Redo Log循环写与checkpoint推进:长事务阻塞下的Checkpoint风暴完整链路
数据库·mysql·代码规范
深圳老胡2 天前
STM32C5A3ZG开发板网络接口配置流程详解
笔记·stm32·单片机·代码规范
深圳老胡2 天前
STM32C5A3ZG 开发板调试笔记:USB 复用 ST-Link 与工程生成警告说明
笔记·stm32·单片机·代码规范
这个DBA有点耶3 天前
innodb_autoinc_lock_mode的三种模式:批量插入时自增锁的持有逻辑与调优
数据库·架构·代码规范