今日要闻!读C#代码整洁之道笔记05_使用工具改善代码和单元测试
2023-03-24 09:07:49来源:博客园
1.高品质的代码
1.1.性能(Performance)
1.1.1.只执行需要的操作,而且执行迅速
(资料图片仅供参考)
1.1.2.不会使系统陷入停顿
1.2.可用性(Availability)
1.2.1.持续在所需的性能水平上保持可用
1.2.2.Topic1
1.3.安全性(Security)
1.3.1.正确验证输入
1.3.2.防止无效的数据格式或超范围的无效数据
1.3.3.防止恶意攻击代码
1.3.4.身份验证
1.3.5.鉴权操作
1.3.6.具备容错性
1.4.可伸缩性(Scalability)
- 1.4.1.安全地处理指数级增长的用户数目,而不会令系统停顿
1.5.可维护性(Maintainability)
1.5.1.修复缺陷并添加新功能的难易程度
1.5.2.低耦合高内聚
1.6.可访问性(Accessibility)
1.6.1.能力受限的成员也能够根据自己的需要轻松地修改和使用软件
1.6.2.高对比度的用户界面
1.6.3.针对阅读困难者和盲人添加的旁白
1.7.可部署性(Deployability)
1.7.1.针对软件的用户
1.7.1.1.独立用户
1.7.1.2.远程访问的用户
1.7.1.3.局域网用户
1.7.2.软件都应当易于部署而不会出现任何问题
1.8.可扩展性(Extensibility)
- 1.8.1.添加新功能以进行扩展的容易程度
1.9.简记为PASSMADE
2.代码度量
2.1.关注软件的复杂性与可维护性
2.2.维护性指标
2.2.1.应用程序生命周期管理的重要组成部分
2.2.1.1.(Application Lifecycle Management,ALM)
2.2.2.20及以上的分数颜色级别为绿色
2.2.2.1.良好的维护性
2.2.3.10分到19分的分数颜色级别为黄色
2.2.3.1.中等维护性
2.2.4.小于10分的分数颜色级别为红色
2.2.4.1.难以维护
2.3.圈复杂度
- 2.3.1.路径越多,软件就越复杂
2.4.继承深度
2.4.1.相互继承类的数量的度量值
2.4.2.理想的继承深度为1
2.5.类耦合度
2.5.1.类的代码耦合度决定了类之间的耦合级别
2.5.2.基于接口编程
2.6.面向对象编程编程范式的影响
- 2.6.1.(Object-Oriented Programming,OOP)
2.7.代码行数
- 2.7.1.源代码行(包括空行)的完整统计数目
2.8.可执行代码行数
- 2.8.1.可执行代码中操作的数量
2.9.Visual Studio 自带
3.工具
3.1.使用快速操作
- 3.1.1.VS自带
3.2.JetBrains dotTrace
3.3.JetBrains ReSharper
3.4.JetBrains dotPeek
- 3.4.1.免费
3.5.JetBrains dotCover
3.6.JetBrains dotMemory
3.7.JetBrains 全家桶
3.8.Telerik JustDecompile
- 3.8.1.开源
4.单元测试
4.1.TDD绝对是提升程序能力的一个必要之选
- 4.1.1.Test-Driven Development
4.2.行为驱动开发(Behavior-Driven Development,BDD)
- 4.2.1.BDD是由TDD演进而来的一种软件开发方法。
4.3.软件越关键,就越需要重视单元测试技术(例如TDD和BDD)的使用
4.4.在代码开发阶段,程序员应该始终测试自己的代码
4.5.只有在代码完成并准备进入产品环境的前提下,“程序员永远不应该测试自己的代码”才是正确的
4.6.正确的规划和设计实质上会加快编码速度,尤其在考虑维护和扩展的情况下
4.6.1.凡事预则立,不预则废。
4.6.2.越早考虑谋划、考虑谋划越全面,后期应对变化越从容
4.7.单元测试不应当依赖在它之前运行的其他测试
4.8.单元测试最好在毫秒时间内完成
5.无法容忍缺陷的软件
5.1.处理私人和商业投资的金融系统
5.2.医疗设备
5.3.交通管理和导航系统的运输信号系统
5.4.空间飞行系统
5.5.武器系统
6.删除冗余
6.1.无用代码
- 6.1.1.冗余又没有调用者的代码
6.2.“噪声”注释
- 6.2.1.程序员都会为这些注释所扰
6.3.冗余测试
7.测试工具
7.1.MSTest
7.2.NUnit
7.3.测试框架
- 7.3.1.NUnit比MSTest提供了更加细粒度的测试方法和更好的性能
7.4.Moq
7.5.Rhino Mocks
7.6.测试替身框架
- 7.6.1.Moq比Rhion Mock更加易于学习和使用
7.7.SpecFlow
- 7.7.1.BDD框架
关键词:
责任编辑:hnmd003
精彩推送
- 今日要闻!读C#代码整洁之道笔记05_使用工具改善代码和单元测试
- 天天速读:山西省召开煤炭增产保供动员部署会议
- 天天即时看!雪球产品关注度升温 私募激辩潜在风险
- 今日快讯:中国四大运动鞋服品牌 去年营收实现逆势增长
- 成为更好的“他”
- 重庆哪些银行可以办二手房双预告“带押过户”?来看这个机构清单
- 环球短讯!“别想投资赚大钱”!曾1个月涨价200万 如今1m2跌去2万 大厂搬家致房价下跌?
- 汕头纺织服装硕果累累 产业发展踏“春”提速
- 每日视点!聚焦重点行业“急需紧缺” 开展大规模职业技能培训
- 焦点日报:承平高速施工进展过半
- 热点评!积极响应审慎合理定价等倡议 券商规范开展发行承销业务在行动
- 环球讯息:借鉴国际经验完善养老服务体系
- 天天热门:安庆特产有哪些特产
- 环球快报:产业资本、政府引导基金频频联手布局新兴赛道
- 世界通讯!问鼎中原的意思_问鼎什么意思
- 前沿资讯!耳前瘘管发炎的原因_耳前瘘管发炎如何消肿
- 天天热门:人民金融·创新药指数涨0.91%|国产疫苗进入mRNA时代 肿瘤治疗还有多远?
- 世界热议:成都优化购房资格预审码管理 赋予3个月有效期并滚动更新
- 环球热议:绿色家电最高补1千!上海促消费15条 延续新能源车补贴
- 四部门:开展农村能源革命试点县建设
- 全球速看:瀛和律所董冬冬:不良资产行业法治化是金融发展的必由之路
- 每日热门:全球锂盐龙头雅保拟以13亿美元在美建锂加工厂 供货特斯拉
- “2023非遗品牌大会”聚焦培育推广非遗品牌
- 全球热议:未来手机充满电只需5分钟 手机品牌密集发布快充技术
- 2023房地产开发企业综合实力TOP500测评成果发布
- 新消息丨高德地图回应与口碑合并 本地生活赛道竞争加剧
- 飞行员电子执照实现全球互认
- 市场监管总局发布《牙膏监督管理办法》
- 工信部:着力稳住汽车、消费电子等大宗消费 巩固新能源汽车、光伏等优势产业领先地位
- 【全球热闻】重磅!这家智能出行公司拟落地郑州 中豫新能源汽车基金、海马汽车等10亿元入股
- 天天资讯:中国工程院院士谢在库:实现碳中和的基本路径是推进用能结构变革
- 发现拔尖人才|2023年中学生英才计划扩围:1700名尖子生提前起飞 驶向何处
- 泰达股份(000652.SZ):子公司中标正安县生活垃圾焚烧发电项目
- 【天天报资讯】北京土拍惊现42家房企抢一宗地 房企投拓风格高度趋同
- 世界今亮点!牙膏监管新规公布 自2023年12月1日起实施
- 天天报道:英雄联盟小龙有什么用?英雄联盟小龙Buff效果一览
- 2022英格兰vs伊朗历史比分 英格兰vs伊朗比分预测
- 元宇宙旗舰店、工厂合伙人……看服装业如何向“新”而行
- 短讯!澳门1月至2月接待旅客近300万人次 酒店平均入住率74%
- 韩国首尔有望今年内开通自动驾驶夜间公交
- 海澜集团旗下瀚银支付再现董事长变更 公司遭中止牌照续展 曾被举报为跑分平台相关商户提供支付通道
- 最新资讯:清风论金:美联储暗示加息即将结束,黄金仍谨慎追多1985下看
- 每日视点!国家卫星海洋应用中心发布三大自主海洋卫星融合产品
- 上海全年促消费活动安排来了 将举办6个主题消费季和第四届“五五购物节”
- 环球热文:猪价低迷为何龙头猪企却加速出栏?未来猪价要靠消费支持
- 当前热文:中国新能源汽车压铸产业高质量发展峰会将于3月27日举行
- 世界热头条丨10658880_10658830
- 成都高新区发放超千万汽车消费补贴!
- 焦点精选!上海自贸区保税区域:高新技术企业已达161家
- 环球即时看!大型医用设备目录再调整 CT、MR等设备将加速下沉基层医院
- 机构:3月1-20日十城二手住宅成交超7万套,预计全月创新高
- 世界即时看!海南今年计划筹集保障性租赁住房3455套(间)
- 全球焦点!房屋公共维修基金什么时候缴纳
- 【新要闻】奥司他韦应急挂网!甘肃、河南多地发布短缺药需求清单
- 环球观天下!万泰基金恢复,积极助力会员单位参与国际交流
- 天天观速讯丨工信部:1-2月份通信业电信业务收入累计完成2803亿元,同比增长7.9%
- 环球关注:上游观察|出海!出海!“重庆造”新能源汽车驶向世界
- 全球观焦点:胡润全球富豪榜公布:马斯克退居第二,钟睒睒蝉联中国首富
- 工信部:固定宽带接入用户稳步增加,千兆用户突破亿级规模
- 焦点热议:热门展一票难求!各地延续“博物馆热” 排队观展成常态
- 环球今亮点!江西省发布冰雹橙色预警
- 【全球快播报】港媒:泰国亿万富豪谢国民将在香港设立家族办公室
- 《天然气管道掺氢输送及终端利用可行性研究》成果发布会召开
- 爱美莱内衣怎么样?爱美莱内衣好穿吗?
- 中国银行安徽省分行金融市场部副总经理王世斌接受监察调查
- 女演员被困卫生间近4小时 北京丽思卡尔顿酒店回应:调查未发现安全隐患
- 中国-太平洋岛国菌草技术示范中心启用
- 潘达喊你关注野生大熊猫保护,发起万人助养大熊猫计划,一起助力养熊猫!
- 天天热头条丨在转继承纠纷中应注意的问题有哪些
- 环球观点:日本中央硝子将量产钠离子电池电解液,计划主要向中企供应
- 加快油气开发与新能源融合发展,中国出台首个行动方案
- 全球短讯!超300家上市公司发布年报 新能源公司业绩亮眼
- 世界热点!美加召回部分雀巢品牌婴儿配方奶粉 海关总署发布消费提示
- 环球资讯:产学研合作新模式深度赋能高端制造
- 焦点讯息:广发证券:建材行业核心公司业绩将有韧性复苏
- 快消息!3月23日重点数据和大事件前瞻
- 云计算工程技术人员:上“云”用“数”的护航者
- 观点:东风雪铁龙C6“21万的车12万抢” 神龙汽车如何做到降价不降质?
- 世界热推荐:国家能源局:大力推动油气勘探开发与新能源融合发展
- 滚动:Oxi Fresh Carpet Cleaning与Waterorg合作帮助家庭获得安全用水
- 今亮点!当日快讯:顺德农商银行与碧桂园服务签订战略合作协议
- 今年成都将力争新增国家专精特新“小巨人”企业50户以上
- 买不起房就买黄金?有人一枚金币涨800元!有人脱手8斤黄金 瞬间变现174万!金店挤爆了
- 天天关注:认购规模突破千亿 新能源REITs何以火爆
- 【天天速看料】废旧纺织品开启再生资源产业新空间
- 重塑年轻化营销价值链,菜鸟驿站聚合新生代流量池
- 世界水日 | 嘉士伯中国7年省下1000个游泳池用水
- 新消费日报 | 青城山都江堰景区拟冲击A股上市 国内赴泰国机票价格已逐步降低
- 今日热文:小米与vivo、OPPO达成合作 支持三方应用数据迁移
- 世界快讯:首列新能源汽车铁海联运班列从果园港发车
- 全国水利工程供水能力超过8900亿立方米
- 全国政协委员吴楠:建议“防”“检”并举 加强队列研究与居民体检全链条管理
- 五仁是哪五种
- 快报:上海出台细则 保障智能网联汽车无人驾驶有法可依
- 全球视讯!哪吒汽车创始人方运舟:未来新能源汽车是一个移动能源载体
- 热点!生态环境部收紧碳配额方案 新增“借碳政策”或豁免配额4000万吨
- 萨尔茨堡应有尽有酒店_关于萨尔茨堡应有尽有酒店的简介
- 环球热头条丨能源局:加大油气勘探开发与新能源融合发展技术创新攻关力度
- 【天天播资讯】上海市普陀区委书记姜冬冬:三大重点功能区蓄势待发 愿与徽商聚力前行
- 能源局:大力推动油气勘探开发与新能源融合发展 积极扩大油气企业开发利用绿电规模