避免“垃圾进,垃圾出”
在编写程序的时候,要避免“垃圾进,垃圾出”,解决的办法是:
1、垃圾不准进
2、垃圾进来,给出提示信息,并且设置一个合适的默认值。
结合实际项目谈谈。在项目中,需要解析一个数据文件,这个数据文件是程序自动生成的。人工修改数据文件,设置无效或者错误的信息,这种情况太多,比如属性长度设置为string,或者负数。在解析数据文件的时候,对每一个属性的每一种错误情况,都要进行考虑,并且给出详细的错误说明,很难做到。就算做到了,也是很差劲的设计。因为,程序中充斥着大量这样的代码:判断有效性,给出错误提示,这样就掩盖了真正要做的重要事情。
也就是说,垃圾进来,给出提示信息,不合适。那么怎么办呢?对于这种情况,人工修改数据文件后,数据文件就属于垃圾数据了。
可以这样处理,在生成这个数据文件的时候,采用一个算法根据文件的内容生成一个校验码。在解析数据文件的时候,采用同样的算法,根据数据文件的内容,再次计算校验码。如果校验码不一致,说明数据文件被人修改了。当然,存在这种可能性,数据文件修改了,但是生成的校验码还是一样。但是,在不知道生成校验码算法的前提下,出现这种情况,概率微乎其微。
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· AI与.NET技术实操系列:向量存储与相似性搜索在 .NET 中的实现
· 基于Microsoft.Extensions.AI核心库实现RAG应用
· Linux系列:如何用heaptrack跟踪.NET程序的非托管内存泄露
· 开发者必知的日志记录最佳实践
· SQL Server 2025 AI相关能力初探
· winform 绘制太阳,地球,月球 运作规律
· 震惊!C++程序真的从main开始吗?99%的程序员都答错了
· AI与.NET技术实操系列(五):向量存储与相似性搜索在 .NET 中的实现
· 超详细:普通电脑也行Windows部署deepseek R1训练数据并当服务器共享给他人
· 【硬核科普】Trae如何「偷看」你的代码?零基础破解AI编程运行原理