课程的主体内容,到此就结束了。
并非真的有一个使用场景,需要我们去构建 DNS 的服务器,本质目的,是从这么硬核的技术逻辑出发,去碰触 Python。
很多环节,都是相互关联的,我们在 《IP 归属地与二分法》中也特别强调这些环节的关联性,基本上起点确定了,那么一定能走到终点。
本课程的最终目的,就是希望赋予你以这样的能力,或者说这样的信心。
如果要完成一个真正意义上的 DNS 服务器,并融入到自己的某个产品中作为一个基础服务,直接目的应该不是从技术出发,而是从 用户体验 的角度出发。而且,你会继续遇到其它的细节问题,比如除了 A 记录之外其它的记录类型如何处理、比如如何处理日志的记录、比如如何部署 等等。
就说 部署 吧,在 《FirstWeb》 中,已经提供了一个部署的方式,虽然通过工具被简化了流程,但它的本质逻辑还是在那里的,通过 supervisor 这个工具。因为《FirstWeb》是《全端》的基础课程,那个时候可以不用深入了解,但是 Python 入门后就要去完成自己的产品了,总是要面对 部署
的,那么一个关键字 supervisor
就足以让你解决所有的问题了。
虽然,这个过程仍然是充满艰辛的。但是,终点就在那里,往前走就能到,这已经是毋庸置疑的了。
虽然 举例子
本身挺糟糕的,因为它很容易让人偏离事实。但,还是举个例子吧。
跑步机,这是一个工具,非常沉,有 100 多斤的,也有 200 来斤的,甚至更重的,这些数字看起来不大,但跑步机的外包装体积一般是很大的,可以想见搬运它的难度。
把它搬到一个地方安置,本身也占了不小的面积。真是一个又大又重的工具。
我们都知道,老老实实使用这个工具,一定会让你的身体更健康 (除非特定的身体限制或者滥用之外)。但是,坚持
是一件困难的事情,所以,跑步机 还有一个别称,叫 晾衣架
。
另外有意思的是,面对这个 笨重 的工具,你会去学习如何使用它吗?『学习』这个词其实不恰当,因为你只是会去翻一下说明书,而且是跳着翻的,并且说明书一般很薄。
希望上面这个例子,会带来一点点的启发。
Python 也只是一种工具而已! 工具最大的使命,是用,不是学。