0%

这篇文章将讨论接口:从鸭子类型的代表特征-动态协议,到使用接口更明确、能验证实现是否符合规定的抽象基类(Abstract Base Class,ABC)。抽象基类与描述符和元类一样,是用于构建框架的工具,一般都不需要自己编写抽象基类,因为很容易过度设计。

阅读全文 »

这篇文章主要介绍 Python 的面对对象惯用法,首先介绍对象与对象名称的区别,解释对象标识、值和别名等概念,以及垃圾回收、del 命令、如何通过弱引用记住对象,而无需对象本身存在。最后会介绍符合 Python 风格的对象。

阅读全文 »

函数装饰器用于在源码中标记函数,以某种方式增强函数的行为。这是一项强大的功能,若想彻底掌握它,首先必须理解闭包。除了在装饰器中有用处之外,闭包还是回调式异步编程和函数式编程风格的基础。

阅读全文 »

本篇文章是对林沛满老师的两部书籍《Wireshark 网络分析就这么简单》和《Wireshark 网络分析的艺术》的读书笔记。这两本书详实地记录了作者使用 Wireshark 来分析各类网络疑难杂症的经历。通过这些案例,作者介绍了许多使用 Wireshark 的小技巧,同时也向我们传授了其网络排障的一些宝贵经验。阅读这两本书时,让我回想起当时面试百度时面试官的一个问题:”客户端访问服务器慢,怎么排查?”。如果之前我阅读过这两本书,我想我可以回答地更详尽一些。

Wireshark 是解决网络问题的瑞士军刀,通过 Wireshark,我们可以清楚地看见网络中的每一个数据包(此刻请自行脑补你站在世界地图面前,清楚看见当前 Internet 上每一个数据包的流动)。

阅读全文 »

gRPC(google RPC)使用 Protocol Buffers 作为它的接口定义语言(Interface Definition Language,IDL)以及它的底层消息交换格式。通过 gRPC,client 应用程序可以直接调用位于不同机器上的 server 应用程序的接口,就好像 client 应用程序和 server 应用程序在同一个进程中一样。这篇文章介绍如何在 Python 中使用 gRPC。

阅读全文 »