https://www.joelonsoftware.com/2002/11/11/the-law-of-leaky-abstractions/
虽然抽象可以节省我们的工作时间,但它并不减少必须投入的学习时间。
尽管我们拥有更高级的编程工具和更精细的抽象方法,成为一名熟练的程序员的难度却在不断增加。
TCP 试图提供一个完全的抽象,掩盖底层不可靠的网络;然而,有时网络的实际问题(网线断了)会穿透这层抽象,使你感受到那些抽象无法完全遮蔽的问题。这只是我称之为“抽象泄漏法则”的众多示例之一:
> 所有复杂的抽象,都在某种程度上存在漏洞。
又例如:大型二维数组的横向/纵向遍历,某些缓慢的SQL查询
虽然抽象可以节省我们的工作时间,但它并不减少必须投入的学习时间。
尽管我们拥有更高级的编程工具和更精细的抽象方法,成为一名熟练的程序员的难度却在不断增加。
TCP 试图提供一个完全的抽象,掩盖底层不可靠的网络;然而,有时网络的实际问题(网线断了)会穿透这层抽象,使你感受到那些抽象无法完全遮蔽的问题。这只是我称之为“抽象泄漏法则”的众多示例之一:
> 所有复杂的抽象,都在某种程度上存在漏洞。
又例如:大型二维数组的横向/纵向遍历,某些缓慢的SQL查询