前面很多人说得很好了,只做点补充
如果你是新手,前面说的那些绝大部份都跟你没有关系,
因为你不具备相应的必要能力。
某些 case hard code 好,
但是你可能没有办法正确判断倒底是不是那些 case,
某些 case 不要 hard code 好,
但是如果不幸你一直在很适合 hard code 的环境一直 hard code,
突然要你不要 hard code 你可能也写不好。
还是最简单直接的,查查 best practice,多读几本书,
不影响工作的原则下找机会多练,把自己的能力练起来才是真的。
到有一天不论是要 hard code 或好好写 code 都能做好时,
再参考那些意见会比较有帮助。
而别人说的问题或缺点也不要照单全收,可以多查多想怎么克服,
例如上面有提到 "你重构大家花时间陪你重测",这的确是个问题,
不过用 "refactor test long time" 这破英文喂狗他会吐给你
https://softwareengineering.stackexchange.com/q/103385
或许可以解决这类问题
总结
前面很多人说得很好,大神在板上,高手在民间
但是,新手不用想那么多,先专心练功实在