编写高质量代码改善程序的157个建议:使用Dynamic来简化反射的实现
版权声明
我们非常重视原创文章,为尊重知识产权并避免潜在的版权问题,我们在此提供文章的摘要供您初步了解。如果您想要查阅更为详尽的内容,访问作者的公众号页面获取完整文章。
熊泽有话说
扫码关注公众号
扫码阅读
手机扫码阅读
概述
《编写高质量代码改善C#程序的157个建议》中,第15条建议提倡使用dynamic简化反射的使用,并强调这种做法的性能是有条件的。作者在实践中发现这与个人习惯有所区别,但并非绝对正确或错误。
案例
通过比较正常反射、dynamic反射和优化后的反射在不同循环次数下的性能,发现正常的反射和优化后的反射性能较好,而dynamic在执行少量循环时性能较差。但在高次数循环中,dynamic表现出了性能优势并简化了反射的使用。
总结
反射在性能上有损耗,正常反射和dynamic反射都应尽量避免。如果需要使用反射,应根据性能和复杂度的需求选择合适的方法。优化后的反射性能最佳,而dynamic反射在循环次数增多时性能改善明显,但仅在特定条件下优势明显。
正文资料
本文总结自《编写高质量代码改善C#程序的157个建议》一书,详情可参见原文链接。
157个建议目录一览表
书籍内容涵盖语言篇、架构篇和编码规范及习惯三部分,包括但不限于字符串操作、数据类型、集合与LINQ、泛型、资源管理、异常处理、多线程与并行编程、成员设计、类型设计、安全性设计、命名规范、代码整洁和开发行为等多个方面的建议。
参考文献
《编写高质量代码改善C#程序的157个建议》作者陆敏技。
熊泽有话说
熊泽有话说
扫码关注公众号
解读C#编程中最容易忽略7种编写习惯!
上一篇
没有了
下一篇
还在用多套工具管项目?
一个平台搞定产品、项目、质量与效能,告别整合之苦,实现全流程闭环。
查看方案
熊泽有话说的其他文章
SqlServer游标的创建与使用
介绍游标在SqlServer中的简单使用
简单操作:10分钟实现在kubernetes(k8s)里面部署服务器集群并访问项目(docker三)
docker和k8s的恩怨情仇:10分钟实现在kubernetes(k8s)里面部署服务器集群并访问项目。
基础夯实:基础数据结构与算法(二)
数据结构研究的内容:就是如何按一定的逻辑结构,把数据组织起来,并选择适当的存储表示方法把逻辑结构组织好的数据存储到计算机的存储器里。\x0a\x0a算法研究的目的是为了更有效的处理数据,提高数据运算效率。数据的运算是定义在数据的逻辑结构上,但运算
NoSql非关系型数据库之MongoDB应用(一):安装MongoDB服务
NoSql非关系型数据库之MongoDB应用(一):安装MongoDB服务
ASP.NET Core 中间件的使用(二):依赖注入的使用
ASP.NET Core中依赖注入的使用
加入社区微信群
与行业大咖零距离交流学习
PMO实践白皮书
白皮书上线
白皮书上线