拿下技术面上传简历

你接手一个函数 calc(order, user, flag),约 180 行,内部依次做:入参校验、会员等级折扣、优惠券抵扣、满减、税费计算、审计日志写入;flag=False 时跳过入参校验。全仓有 9 处调用,其中 2 处显式传 flag=False。要求在「不改变任何外部行为」的前提下提升可读性。请说出你的改造步骤、你如何验证行为没有变、以及你会拆到多细。

代码能力与调试排障现场编码3-5 年知识点 1 个

面试官在考什么

判断候选人是否把可读性当成一个可验证的工程动作(先锁定行为、再小步结构化),而不是当成主观的代码美化,并且能对布尔参数和调用点做出取舍判断。

代码可读性

回答框架 · 前两步

  1. 先补行为基线:以 9 个调用点和各类边界参数写特征测试/回归用例,锁定现有输入输出,再动手改
  2. 小步重构:提取函数 + 重命名,每一步跑测试;不顺手修业务逻辑(尤其是税费舍入、校验顺序这类会改变输出顺序的地方)

还有 3 条答案要点、 3 层追问、 5 个常见坑, 以及针对你简历的追问路径,在定制报告里。

上传简历,生成我的题库先看示例报告

同一能力域的其他题