江湖有言:”动态一时爽,重构火葬场“,更有人戏言:”动态一时爽,一直动态一直爽😂“
- 动态语言大部分错误只有在程序运行的时候才能发现,编译过程中只能发现简单的语法错误
- 这些问题在大型项目上显得更为突出,所以遵循代码规范,Code Review就显得尤为重要了
为了重构时,少掉些头发,在开发的时候就得注意了
1、语法层面规范代码:PEP484 提供了类型提示(Type Hint),在定义函数时,可以指定返回值类型,参数类型
- 定义一个函数接受任何类型:
def my_sum(num):
return 1 + num
my_sum(1)
my_sum('name')
程序运行前,不会有任何提示,尽管我们知道int和str不能相加
在Python 3.5中,用Type Hint 写法如下
def my_sum(num: int) ->int:
return 1+num
上面就是静态的写法,多了:int
和 -> str
,前者用来说明参数的类型,后者指函数的返回值类型,在写代码时,IDE也会有提醒
2、另一个就是编写测试了,如果重构前和从重构后,测试都可以完美运行,那基本就ok了
单元测试用到的框架是自带的unittest
-
1、这个框架用起来还是很简单的,测试语句一般都是比较简单,因为太复杂,本身可能就有bug
-
2、框架提供两个方法,分别在开始测试前执行和在测试后执行:
setUp
和tearDown
-
3、基本使用断言方法的返回值。
-
4、常用方法就贴个图吧。高级用法 后续再补吧
网友评论