文章来源于网络收集而来,版权归原创者所有,如有侵权请及时联系!
按需重塑接口
程序中很多代码在那里只是为了支持其他代码——例如,为函数设置输入或者对输出做后期处理。这些“粘附”代码常常和程序的实际逻辑没有任何关系。这种传统的代码是抽取到独立函数的最好机会。
例如,假设你有一个Python字典,包含敏感的用户信息,如{"username":"……","password":"……"},你需要把这些信息放入一个URL中。因为它很敏感,所以你决定要对字典先加密,这会用到一个Cipher类。
但是Cipher期望的输入是字节串,不是字典。而且Cipher返回一个字节串,但我们需要的是对于URL安全的东西。Cipher还需要几个额外的参数,使用起来还有些麻烦。
开始以为很简单的任务变成了一大堆粘附代码:
尽管我们要解决的问题是把用户的信息编码成URL,这段代码的主体只是在“把Python对象编码成对URL友好的字符串”。把子问题抽取出来并不难:
然后得到的程序中执行“真正”逻辑的代码很简单:
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论