摘要: 最终产品代码中对错误的处理方式要比“垃圾进,垃圾出”复杂得多。 防御式编程技术可以让错误更容易发现、更容易修改,并减少错误对产品代码的破坏。 断言可以帮助人迟早发现错误,尤其是在大型系统和高可靠性的系统中,以及快速变化的代码中。 关于如何处理错误输入的决策是一项关键的错误处理决策,也是一项关键的高层 阅读全文
posted @ 2016-12-06 09:13 逸风净天 阅读(117) 评论(0) 推荐(0) 编辑
摘要: 基本上Linux最主要的文件系统为Ext2,该文件系统内的信息主要有: superblock:记录此文件系统的整体信息,包括inode/block的总量、使用量、剩余量,以及文件系统的格式与相关信息等。 inode:记录文件的属性,一个文件占用一个inode,同时记录此文件的数据所在的block号码 阅读全文
posted @ 2016-11-22 09:16 逸风净天 阅读(147) 评论(0) 推荐(0) 编辑
摘要: 对象。对象包括特性和方法。特性只是作为对象的一部分的变量,方法则是存储在对象内的函数。(绑定)方法和其他函数的区别在于方法总是将对象作为自己的第一个参数,这个参数一般称为self。 类。类代表对象的集合(或一类对象),每个对象(实例)都有一个类。类的主要任务是定义它的实例会用到的方法。 多态。多态是 阅读全文
posted @ 2016-11-18 09:19 逸风净天 阅读(101) 评论(0) 推荐(0) 编辑
摘要: 创建子程序最主要的目的是提高程序的可管理性,当然也有其他一些好的理由。其中,节省代码空间只是一个次要原因;提高可读性、可靠性和可修改性等原因都要更重要一些。 有时候,把一些简单的操作写成独立的子程序也非常有价值。 子程序可以按照其内聚性分为很多类,而你应该让大多数子程序具有功能上的内聚性,这是最佳的 阅读全文
posted @ 2016-11-18 09:11 逸风净天 阅读(159) 评论(0) 推荐(0) 编辑
摘要: 绝对路径“一定由根目录/写起”;相对路径“不是由/写起”。 特殊目录有.,..,-,~,~account,需要注意。 与目录相关的命令有cd,mkdir,rmdir,pwd(print working directory)等重要命令。 rmdir仅能删除空目录,要删除非空目录需使用“rm -r”命令 阅读全文
posted @ 2016-11-18 09:05 逸风净天 阅读(165) 评论(0) 推荐(0) 编辑
摘要: 抽象。抽象是隐藏多余细节的艺术。定义处理细节的函数可以让程序更抽象。 函数定义。函数使用def语句定义。它们是由语句组成的块,可以从“外部世界”获取值(参数),也可以返回一个或者多个值作为运算的结果。 参数。函数从参数中得到需要的信息,也就是函数调用时设定的变量。Python中有两类参数:位置参数和 阅读全文
posted @ 2016-11-09 09:07 逸风净天 阅读(118) 评论(0) 推荐(0) 编辑
摘要: 类的接口应提供一致的抽象。很多问题都是由于违背该原则而引起的。 类的接口应隐藏一些信息--如某个系统接口、某项设计决策、或一些实现细节。 包含往往比继承更为可取--除非你要对“是一个/is a”的关系建模。 继承是一种有用的工具,但它却会增加复杂度,这有违于软件的首要技术使命--管理复杂度。 类是管 阅读全文
posted @ 2016-11-06 19:10 逸风净天 阅读(111) 评论(0) 推荐(0) 编辑
摘要: Linux的每个文件中,依据权限分为用户、用户组与其他人三种身份。 用户组最有用的功能之一,就是当你在团队开发资源的时候,且每个账号都可以有多个用户组的支持。 利用ls -l显示的文件属性中,第一个字段是文件的权限,共有10位,第一位是文件类型,接下来三个为一组共三组,为用户、用户组、其他人的权限, 阅读全文
posted @ 2016-11-06 19:06 逸风净天 阅读(137) 评论(0) 推荐(0) 编辑
摘要: 打印。print语句可以用来打印由逗号隔开的多个值。如果语句以逗号结尾,后面的print语句会在同一行内继续打印。 导入。有些时候,你不喜欢你想导入的函数名--还有可能由于其他原因使用了这个函数名。可以使用import...as...语句进行函数的局部重命名。 赋值。通过序列解包和链式赋值功能,多个 阅读全文
posted @ 2016-11-06 18:52 逸风净天 阅读(286) 评论(0) 推荐(0) 编辑
摘要: 软件的首要技术使命就是管理复杂度。以简单性作为努力目标的设计方案对此最有帮助。 简单性可以通过两种方式来获取:一是减少在同一时间所关注的本质性复杂度的量,二是避免生成不必要的偶然的复杂度。 设计是一种启发式的过程。固执于某一种单一方法会损害创新能力,从而损害你的程序。 好的设计都是迭代的。你尝试设计 阅读全文
posted @ 2016-11-05 11:58 逸风净天 阅读(112) 评论(0) 推荐(0) 编辑