UNIX环境中的全栈Python高级编程
Advanced Full-Stack Python Programming in the UNIX Environment
写作目的
作为复杂软件系统的设计者与优美代码的创造者, 优秀的全栈工程师不仅需要熟悉工具(包括但不限于: 操作系统, 编程语言, 框架, 协议, 开源库)的使用方法,还需要深入理解这些工具的内部运行机制。全栈的基础就是扎实的计算机专业知识,全栈的灵魂就是丰富的编程与系统设计经验,因此本书从基础入手,再通过实际工程项目提升读者的设计经验与代码能力。本书的创作原则就是实用性,因此不会有复杂的理论包装与迷惑性的语言表达,如果你喜欢倒立倒写红黑树或者研究如何设计ARM芯片,那么本书显然不适合你。
面向人群
- 本书面向有一定编程基础的人群,需要读者熟悉
C
语言和Python
的基本使用方法,并且熟悉常用的数据结构。 - 本书前半部分侧重于计算机基础知识的讲解,为了加深理解,中间会穿插一些
shell/C/Python
练习题。 - 本书中间部分首先介绍如何针对应用场景选择使用不同类型的数据库(
MySQL
、MongoDB
和Redis
),然后介绍Python
的高级语法知识与特性,最后通过实际项目案例讲解网络框架Django
和Flask
的使用方法。 - 由于后半部分涉及到使用统计机器学习方法进行数据分析,因此需要读者熟练掌握概率论与数理统计的相关知识,而为了方便地获取大量数据,我们会先介绍分布式爬虫框架的使用方法。
- 本书的最后会讲解深度学习方法在计算机视觉领域的应用,编程过程中会大量使用矩阵和向量运算来优化算法的执行效率,因此会介绍
numpy
的高级使用方法,以及CUDA
编程方法. 这部分需要读者熟练掌握线性代数的相关知识,并具有一定的英文文献阅读能力。
全书包括以下内容
- 结合源码剖析
Bash Shell
运行机制 - 深入理解
Linux
内核 - 计算机网络基础知识
- 数据库基础知识
Python
高级编程WEB
框架- 分布式爬虫框架
- 数据分析与可视化
- 深度计算机视觉
编译本书
获得Markdown
格式源文件:
> git clone git@github.com:1996scarlet/python-apue.git
编译为静态页面:
> gitbook install
> gitbook build <SUMMARY.md所在路径> <目标路径>