程序员职场:3 大原则让你的编程之路越走越顺,新手来了解一下( 三 )
鉴于此 , 编程的世界里 , 从输入到输出同样需要处处设防 , 步步为营 。
1、对输入的不信任
(1)对空指针的检查
不只是输入 , 只有是使用到指针的地方 , 都应该先判断指针是否为NULL , 而内存释放后 , 应当将指针设置为NULL 。
【真实案例】:注册系统某段逻辑 , 正常使用情况下 , 都有对指针做检查 , 在某个错误分支 , 打印日志时 , 没检查就使用了该字符串;结果可正常运行 , 但当访问某个依赖模块超时走到改分支 , 触发bug , 导致coredump 。
(2)对数据长度的检查
使用字符串或某段buf , 特别是memcpy/strcpy时 , 需要尽量对数据长度做下检查和截断 。
【真实案例】:接手oauth系统后运行数月表现良好 , 突然有一天 , 发生了coredump , 经查 , 是某个业务不按规定请求包中填写了超长长度 , 导致memcpy时发生段错误 , 根本原因 , 还是没有做好长度检查 。
推荐阅读
- 网游|颠覆你认知的网游土豪,程序员加班为他改游戏,还送专属服务器
- 网易|永劫无间诡异宕机事件:网易机房过热,程序员竟然祭出了干冰?
- 魔兽世界怀旧服|魔兽怀旧服:P2越来越少人顶价?学聪明了,顶价的2条原则!
- 95后|职场Qian规则:成人的游戏世界,本来就很残酷
- 坦克大战|FC游戏埋藏了三十年的秘密,《坦克大战》隐藏着一封程序员的血书
- 梦幻西游|梦幻西游:程序员修复显示BUG用力过猛,现在武器亮的有点晃眼
- 原神|原神:这才是最值得氪金的角色,为了它打破原则,人生第一次!
- 绝地求生|绝地求生:B站BPC亚洲杯 4AM永远上演职场
- 塞尔达传说|Switch下载超200万,程序员才3人,这游戏真能比塞尔达还好玩?
- 程序员|公司新招程序员,入职2天看了下电脑配置,2天后果断辞职