欢迎光临澳大利亚新华书店网 [登录 | 免费注册]

    • Python高效编程实践指南(编码测试与集成)/Python开发从入门到精通系列
      • 作者:编者:杨勇//杨杭之|责编:李晓波//王海霞
      • 出版社:机械工业
      • ISBN:9787111756750
      • 出版日期:2024/07/01
      • 页数:217
    • 售价:35.6
  • 内容大纲

        本书先简单介绍了搭建开发环境的相关知识,然后以一个规范的Python项目的文件布局总揽全局,按照编码、单元测试、代码管理、集成测试、撰写技术文档、发布安装包的次序,逐一剖析Python开发中所涉及的规范和工具。书中介绍了基于语义的版本管理、依赖解析、构建打包、代码风格、API文档格式等规范。通过不同开发工具(服务)之间的对比,向读者介绍了poetry、MkDocs、tox、Flake8、Black、Git、GitHub CI、Codecov、GitHubPages、pre-commit hooks等符合最佳实践的开发工具和服务。随书附赠本书案例源码,获取方式见封底。
        本书在讲解上本着知其然,更要知其所以然的求知态度,力求讲清楚技术的来龙去脉。任何Python爱好者都适合阅读此书,且本书更是Python初学者实现向专业开发人员蝶变的推荐书籍,使用本书介绍的最佳实践,可以构建出与优秀开源项目媲美的框架代码,并获得与专业开发者协同工作的能力。
  • 作者介绍

        杨勇,毕业于华中科技大学计算机专业,获硕士学位。从事软件开发和量化交易研究超二十年。曾服务于趋势科技(中国)、IBM、Oracle、百纳(海豚浏览器),先后担任高级软件研发经理、研发副总裁。精通多种开发语言与云计算架构设计。在Oracle期间,领导团队与电信巨头Verizon合作开发在线视频点播系统;在百纳期间,带领团队实现年营收过亿。现从事量化投研系统研发,研发的大富翁(Zillionare)投研系统具有高性能、容纳海量数据、完全基于Python设计、软件开发流程和质量管控领先等特点。个人媒体号“量化风云”在全网拥有超过7万名量化人粉丝。
  • 目录

    序一
    序二
    前言
    第1章  为什么要学Python
    第2章  构建高效的开发环境
      2.1  选择哪一种操作系统
        2.1.1  Windows下的Linux环境
        2.1.2  Docker方案
        2.1.3  虚拟机方案
        2.1.4  小结
      2.2  集成开发环境
        2.2.1  使用哪一个IDE:VS Code或PyCharm
        2.2.2  VS Code及扩展
      2.3  其他开发环境
        2.3.1  Jupyter Notebook
        2.3.2  Spyder
    第3章  构建Python虚拟环境
      3.1  依赖地狱
      3.2  使用虚拟环境逃出依赖地狱
      3.3  Python包安装工具pip
      3.4  配置VS Code中的解释器
    第4章  项目布局和项目生成向导
      4.1  标准项目布局
        4.1.1  一般性文档
        4.1.2  帮助文档
        4.1.3  API文档
        4.1.4  工程构建配置文件
        4.1.5  代码目录
        4.1.6  单元测试文件目录
        4.1.7  Makefile
        4.1.8  相关工具的配置文件
        4.1.9  tox配置文件
        4.1.10  CI配置文件
        4.1.11  code coverage配置文件
      4.2  项目生成向导
        4.2.1  Cookiecutter
        4.2.2  Python Project Wizard
      4.3  如何使用 Python Project Wizard
        4.3.1  安装Python Project Wizard(PPW)
        4.3.2  生成项目框架
        4.3.3  安装pre-commit hooks
        4.3.4  安装开发依赖
        4.3.5  创建GitHub Repo
        4.3.6  进行发布测试
        4.3.7  设置GitHub CI
        4.3.8  设置Codecov
        4.3.9  设置GitHub Pages
        4.3.10  GitHub自动化脚本
        4.3.11  PPW生成的文件列表
    第5章  poetry:让项目管理轻松一些

      5.1  Semantic Versioning
      5.2  poetry:简洁清晰的项目管理工具
        5.2.1  版本管理
        5.2.2  依赖管理
        5.2.3  虚拟运行时
        5.2.4  构建发行包
        5.2.5  其他重要的poetry命令
    第6章  实现高效的Python编码
      6.1  AI赋能的代码编写
        6.1.1  GitHub Copilot
        6.1.2  Tabnine
      6.2  Type Hint
      6.3  PEP 8:Python代码风格指南
      6.4  lint工具
        6.4.1  Flake
        6.4.2  mypy
      6.5  Formatter工具
      6.6  pre-commit hooks
    第7章  单元测试
      7.1  测试代码的组织
      7.2  Pytest
        7.2.1  测试用例的组装
        7.2.2  Pytest 断言
        7.2.3  Pytest fixture
      7.3  魔法一样的mock
        7.3.1  基础概念与基本使用
        7.3.2  特殊场合下的mock
      7.4  Coverage:衡量测试的覆盖率
      7.5  发布覆盖率报告
      7.6  使用tox实现矩阵化测试
        7.6.1  什么是tox
        7.6.2  tox的工作原理
        7.6.3  如何配置tox
    第8章  版本控制—基于Git和GitHub
      8.1  版本控制的意义
      8.2  版本管理工具Git
        8.2.1  创建Git仓库
        8.2.2  建立与远程仓库的关联:git remote
        8.2.3  保存更改:add、commit、stash等
        8.2.4  与他人同步变更:git push和git pull
        8.2.5  Git标签
      8.3  分支管理
        8.3.1  功能分支
        8.3.2  发布分支
        8.3.3  热修复分支
      8.4  高级Git操作
        8.4.1  分支合并和三路归并
        8.4.2  变基
        8.4.3  分支比较:git diff
        8.4.4  reset与checkout

        8.4.5  gutter change
      8.5  案例:如何追踪代码变化
      8.6  GitHub和GitHub CLI
        8.6.1  安装GitHub CLI
        8.6.2  GitHub CLI的主要命令
        8.6.3  GitHub CLI应用举例
    第9章  持续集成
      9.1  盘点CI软件和在线服务
      9.2  GitHub Actions
        9.2.1  GitHub Actions的架构和概念
        9.2.2  工作流语法概述
      9.3  第三方应用和Actions
        9.3.1  GitHub Pages部署
        9.3.2  构建和发布Docker镜像
        9.3.3  在GitHub上进行发布
        9.3.4  制订发布日志草案
        9.3.5  通知消息
        9.3.6  Giscus
      9.4  通过GitHub CI发布Python库
    第10章  撰写技术文档
      10.1  技术文档的组成
      10.2  两种主要的文档格式
      10.3  rst文档格式
        10.3.1  章节标题(section)
        10.3.2  列表(list)
        10.3.3  表格
        10.3.4  图片
        10.3.5  代码块
        10.3.6  警示文本
      10.4  Markdown文档
        10.4.1  章节标题
        10.4.2  列表
        10.4.3  表格
        10.4.4  插入链接
        10.4.5  插入图片
        10.4.6  代码块
        10.4.7  警示文本
        10.4.8  其他语法
      10.5  两种主要的构建工具
      10.6  使用Sphinx构建文档
        10.6.1  初始化文档结构
        10.6.2  文件重定向
        10.6.3  主控文档和工具链
        10.6.4  生成API文档
        10.6.5  docstring的样式
        10.6.6  混合使用Markdown
      10.7  使用MkDocs构建文档
        10.7.1  配置MkDocs
        10.7.2  更换主题
        10.7.3  文件重定向

        10.7.4  页面引用
        10.7.5  API文档和mkdocstrings
        10.7.6  多版本发布
      10.8  在线托管文档
        10.8.1  RTD
        10.8.2  GitHub Pages
      10.9  结论:究竟选择哪一种技术
    第11章  发布应用
      11.1  以Python库的方式打包和分发
        11.1.1  打包和分发流程
        11.1.2  TestPyPI和PyPI
        11.1.3  pip:Python包管理工具
      11.2  应用程序分发
        11.2.1  桌面应用程序
        11.2.2  移动应用程序
        11.2.3  基于云的应用部署