美文网首页
Python知识图谱

Python知识图谱

作者: 大眼铅笔 | 来源:发表于2019-04-03 11:36 被阅读0次
    Python从初级到高级.jpg

    Python 2.3开始使用至今,整理历年经验所得,知识图谱,希望有助于学习Python的同学。

    写了二十万行左右的Python代码,是Python让我得以在帝都安身立命。

    技术选型

    当时选择Python引入到项目团队中来,考察了当时可以接触到的几乎所有的编程语言,比如C, C++, Java, Perl, PHP, Delphi, Pascal, 甚至研究能不能使用 Masm 写出来一套满足项目需要的基础框架出来。

    项目需要大量的数据处理,需要应对高频的新需求,需要跨平台迁移到不同的Linux或AIX上面运行。

    提出了著名的3C原则, C Complete,能不能覆盖绝大部分的问题域, C Cost,成本,既包含开发成本也包括运维成本,也包含迭代成本,C Change,快速应对变化。

    基于上述3C原则,特别最后一个C,我决定选择了Python

    选择Python的其他原因

    1. Google把Python作为公司层面的第三门编程语言,和C、Java并列(大厂背书)
    2. 当时非常流行的BitTorrent下载软件使用Python开发(成功实践)
    3. 可以参考BitTorrent源代码(可以学习)

    知识来源

    日后的开发经历中,的确多多从BitTorrent源代码中受益。当时可以学习的资料非常用有限,中文资料稀缺到几乎可以说没有。

    当时三个知识来源

    1. Python官方,教父写的早期文档和各种PEP
    2. Google
    3. BitTorrent源代码

    方法论

    第一个版本开发出来,部署上线,即取得非常惊艳的效果,效率比其他语言开发的史前版本高出1个数量级,功能和处理逻辑复杂于史前版本,但是效率依旧高出一个数量级。

    第二年开始重构,这个时候我已经非常熟悉Python的语言特性,也观摩过若干个知名开源项目的源代码。在重构中引入单元测试。

    这段学习让我总结出来的方法论如下

    1. 选择合适的工具可以大幅度降低研发成本和确保交付品质
    2. 识别不同的知识来源,善用之
    3. 选择恰当的重构或优化时间点,避免早期重构和过度优化

    获奖感言

    BTW

    1. 感谢Python 之父 Guido van Rossum
    2. 把单元测试技术介绍给我的哥们,名字叫黄冬,后来担任优酷土豆的CTO。

    相关文章

      网友评论

          本文标题:Python知识图谱

          本文链接:https://www.haomeiwen.com/subject/fipabqtx.html