【译】《Clean C#》
本文是《Clean C#》一书译文的序言,阅读译文请移步至:《Clean C#》译文。
《Clean C#》的副标题是Readable,Maintainable,Pleasurable,本书旨在提供一些编写具有良好可读性与可维护性代码的建议。虽然书名中带有C#字眼,但书中提供的经验绝不仅限于C#,也可用于其他语言。
书中内容涉及到:命名方式、异常处理、代码基本设计原则、单元测试及代码排版等多个方面内容。
该译文不是对原著进行一字一句的翻译,而是根据自己的理解,对原著的语言进行了重新编排以便更符合汉语表述习惯。此外,还对书中内容进行了一定程度的修订(增、删及内容顺序的调整),如,在每个章节的结尾会加入一段总结,文末也可能会添加一些扩展阅读文章链接。
书中的示例代码,如果命名空间名称以Dirty结尾,表示是这段代码是待优化代码;而命名空间名称以Clean结尾,则表示这段代码已按照书中的观点进行优化。
namespace CleanCSharp.Errors.Dirty
{
// 待优化
} namespace CleanCSharp.Errors.Clean
{
// 已优化
}
由于本人水平有限,译文中难免有错误之处,望各位多多指教。
本书的翻译未经作者授权,仅作学习用途,转载务必保留原书及作者信息。原书封面及作者信息如下:


雪飞鸿 · 写于2018-10-22
【译】《Clean C#》的更多相关文章
- 译《Time, Clocks, and the Ordering of Events in a Distributed System》
Motivation <Time, Clocks, and the Ordering of Events in a Distributed System>大概是在分布式领域被引用的最多的一 ...
- Note: Time clocks and the ordering of events in a distributed system
http://research.microsoft.com/en-us/um/people/lamport/pubs/time-clocks.pdf 分布式系统的时钟同步是一个非常困难的问题,this ...
- Time, Clocks, and the Ordering of Events in a Distributed System
作者:Leslie Lamport(非常厉害的老头了) 在使用消息进行通信的分布式系统中,使用物理时钟对不同process进行时间同步与事件排序是非常困难的.一是因为不同process的时钟有差异,另 ...
- 【SaltStack官方版】—— Events&Reactor系统—EVENT SYSTEM
Events&Reactor系统 EVENT SYSTEM The Salt Event System is used to fire off events enabling third pa ...
- Method and apparatus for providing total and partial store ordering for a memory in multi-processor system
An improved memory model and implementation is disclosed. The memory model includes a Total Store Or ...
- mysqldump: Couldn't execute 'show events': Cannot proceed because system tables used by Event Schedu
最近将老版本的mysql 实例倒入 percona 5.5.30,使用的是线上的全备,结果将mysql 库下的表也倒入了,这下可悲剧了,备份报错. 没办法,将mysql库下的数据倒出来,清空,再倒入p ...
- Paxos Made Simple(译)
The Paxos algorithm, when presented in plain English, is very simple. 我叫Leslie Lamport,我最屌. 1. 简介 用于 ...
- Paxos Made Simple
Paxos一致性算法——分布式系统中的经典算法,论文本身也有一段有趣的故事.一致性问题是分布式系统的根本问题之一,在论文中,作者一步步的加强最初一致性问题(2.1节提出的问题)的约束条件,最终导出了一 ...
- 《Paxos Made Simple》翻译
1 Introduction 可能是因为之前的描述对大多数读者来说太过Greek了,Paxos作为一种实现容错的分布式系统的算法被认为是难以理解的.但事实上,它可能是最简单,最显而易见的分布式算法了. ...
- 分布式系统(Distributed System)资料
这个资料关于分布式系统资料,作者写的太好了.拿过来以备用 网址:https://github.com/ty4z2008/Qix/blob/master/ds.md 希望转载的朋友,你可以不用联系我.但 ...
随机推荐
- QT汇总
1.QT介绍及其在Linux下的安装 2.windows下安装QT并与visual studio 2017搭建开发环境 参考资料: QT官网资料 QT实战一二三 Qt资料大全 <Qt 实战一二三 ...
- Android中屏幕保持唤醒
1.锁的类型 PowerManager中各种锁的类型对CPU .屏幕.键盘的影响: PARTIAL_WAKE_LOCK : 保持CPU 运转,屏幕和键盘灯有可能是关闭的. SCREEN_DIM_WAK ...
- 二进制安装mysql5.7
1.创建用户和组 groupadd mysql useradd -r -g mysql mysql 2.上传二进制包至/usr/local下解压并改名为mysql tar zxvf mysql-5.7 ...
- MFC中线程相关知识
MFC中把线程分为两种类型,UI线程和工作者线程. MFC中启动一个线程的最好方法是调用AfxBeginThread,有两个版本,一个用于启动Ui线程,另外一个用于启动工作者线程.在MFC程序中,只有 ...
- Java垃圾回收概览
GC要解决三个主要的问题: 哪些内存需要回收? 什么时候回收? 如何回收? 哪些内存需要回收? 最简单的是引用计数(reference count),缺陷是无法解决循环引用.于是更快点的算法是可达性分 ...
- ThreadLocal类的简单使用
1.概述变量值的共享可以使用public 是static 变量的形式,所有的线程都使用同一个public static 变量. 如实现线程内的共享变量,jdk提供了ThreadLocal来解决这个问题 ...
- Android X 相关汇总
一.说明 官方原文如下: We hope the division between android.* and androidx.* makes it more obvious which APIs ...
- Python中list的删除del&remove小区别
del删除时候指定下标,remove必须指定具体的值
- Mybatis优缺点
优点:SQL写在XML中,便于统一管理和优化 提供映射标签,支持对象和数据库的orm字段关系映射 可以对SQL进行优化 缺点: SQL工作量大 mybagtis移植姓不好 不支持级联
- ubuntu双网卡配置,实现内网外网同时访问!
我们假定内网IP为:10.35.0.58,内网网关为:10.35.0.254:外网IP为222.76.250.4,外网网关为:222.76.250.1.其中局域名网需要连接:10.35.0.X,10. ...