读书笔记 - The Hitchhiker's Guide to Python

网址

http://docs.python-guide.org/en/latest/

1. 项目需要一个好的结构

https://www.kennethreitz.org/essays/repository-structure-and-python
https://github.com/kennethreitz/samplemod

2. 组织糟糕的项目的一些标志(Some signs of a poorly structured project include):

2.1 多重和混乱的循环依赖(Multiple and messy circular dependencies)

furn.py

class Table():

    def isdoneby():
        pass

class Chair():

    def isdoneby():
        pass

workers.py

class Carpenter():
   def whatdo():
        pass

如果table.isdoneby()依赖import Carapenter才能执行;相反地,carpenter.whatdo()又要依赖import Table和Chiar。如果一开始就import,出现循环引入。
一个能解决问题但是不好的技巧是在方法或者函数里import。

2.2 隐藏的耦合(Hidden coupling)

如果Table内部的改变都使Carpenter的某些test cases不通过,那么Table和Carpenter的耦合性过大,Table的内部改变影响到Carpenter。

2.3 重度使用全局变量、状态、上下文(Heavy usage of global state or context)

2.4 面条代码(Spaghetti code)和馄饨代码(Ravioli code)

https://blog.csdn.net/godsme_yuan/article/details/6594013
面条代码:冗长,控制结构复杂(例如充满if,for),混乱而难以理解的代码。本人觉得,在编辑器里这些代码有非常多的guidelines垂下来,非常形象的”面条“。
馄饨代码:程序由许多小的,松散耦合的部分(方法,类,包等)组成。没有遵循高内聚,低耦合。书中举了个例子:如果你不知道什么时候用必须用FurnitureTable,AssetTable和TableNew,那么这些代码就是混沌代码一块一块的,很松散。

猜你喜欢

转载自www.cnblogs.com/allen2333/p/9132683.html