编写高质量代码改善程序的157个建议:使用Dynamic来简化反射的实现
版权声明
我们非常重视原创文章,为尊重知识产权并避免潜在的版权问题,我们在此提供文章的摘要供您初步了解。如果您想要查阅更为详尽的内容,访问作者的公众号页面获取完整文章。
熊泽有话说
扫码关注公众号
扫码阅读
手机扫码阅读
概述
《编写高质量代码改善C#程序的157个建议》中,第15条建议提倡使用dynamic简化反射的使用,并强调这种做法的性能是有条件的。作者在实践中发现这与个人习惯有所区别,但并非绝对正确或错误。
案例
通过比较正常反射、dynamic反射和优化后的反射在不同循环次数下的性能,发现正常的反射和优化后的反射性能较好,而dynamic在执行少量循环时性能较差。但在高次数循环中,dynamic表现出了性能优势并简化了反射的使用。
总结
反射在性能上有损耗,正常反射和dynamic反射都应尽量避免。如果需要使用反射,应根据性能和复杂度的需求选择合适的方法。优化后的反射性能最佳,而dynamic反射在循环次数增多时性能改善明显,但仅在特定条件下优势明显。
正文资料
本文总结自《编写高质量代码改善C#程序的157个建议》一书,详情可参见原文链接。
157个建议目录一览表
书籍内容涵盖语言篇、架构篇和编码规范及习惯三部分,包括但不限于字符串操作、数据类型、集合与LINQ、泛型、资源管理、异常处理、多线程与并行编程、成员设计、类型设计、安全性设计、命名规范、代码整洁和开发行为等多个方面的建议。
参考文献
《编写高质量代码改善C#程序的157个建议》作者陆敏技。
熊泽有话说
熊泽有话说
扫码关注公众号
还在用多套工具管项目?
一个平台搞定产品、项目、质量与效能,告别整合之苦,实现全流程闭环。
查看方案
熊泽有话说的其他文章
新司机的致胜法宝,使用ApexSql Log2018快速恢复数据库被删除的数据
解决误操作数据数据库delete、update、insert还原数据
10分钟系列:NetCore3.1+EFCore三步快速完成数据库交互
10分钟系列:NetCore3.1+EFCore三步快速完成数据库交互
只会Excel想做图表可视化,让数据动起来?可以,快来围观啦(附大量模板下载)
321套可视化图表(在Excel里面实现数据可视化)
ASP .Net Core 中间件的使用(一):搭建静态文件服务器/访问指定文件
ASP .Net Core 中间件的使用(一):搭建静态文件服务器/访问指定文件,快速上手开发。
可视化查询(sp_helptext)——快速查询包含指定字符串的存储过程(附源码)
在一堆存储过程中快速查询出包含指定字符串的存储过程,便于修改和查看。
加入社区微信群
与行业大咖零距离交流学习
PMO实践白皮书
白皮书上线
白皮书上线