软件开发
-
扩展一个 GraphQL 网站
我通常会抽象地总结我为他人所做的工作(出于显而易见的原因),但是我被允许公开谈论一个网站:Vocal 。我去年为它做了一些 SRE 工作。实际上早在 2 月份,我就在&n…
-
如何打包你的 Python 代码
使用 setuptools 来向用户交付 Python 代码。 你花了几周的时间来完善你的代码。你已经对它进行了测试,并把它发送给一些亲近的开发者朋友以保证质量。你已经将所有的源代…
-
扩展一个 GraphQL 网站
我通常会抽象地总结我为他人所做的工作(出于显而易见的原因),但是我被允许公开谈论一个网站:Vocal 。我去年为它做了一些 SRE 工作。实际上早在 2 月份,我就在&n…
-
什么是行为驱动的 Python?
使用 Python behave 框架的行为驱动开发模式可以帮助你的团队更好的协作和测试自动化。 您是否听说过行为驱动开发behavior-driven development(B…
-
如何在 Ubuntu 上安装 pip
pip 是一个命令行工具,允许你安装 Python 编写的软件包。 学习如何在 Ubuntu 上安装 pip 以及如何使用它来安装 Python 应用程序。 有许多方法可以在 Ub…
-
你没听说过的 Go 语言惊人优点
在这篇文章中,我将讨论为什么你需要尝试一下 Go 语言,以及应该从哪里学起。 Go 语言是可能是最近几年里你经常听人说起的编程语言。尽管它在 2009 年已经发布了,但它最近才开始…
-
差异文件(diff)和补丁文件(patch)简介
这篇文章介绍差异文件diff和补丁文件patch,以及它们如何在开源项目中使用的例子。 如果你曾有机会在一个使用分布式开发模型的大型代码库上工作过,你就应该听说过类似下面的话,&l…
-
用 Ansible 实现网络自动化
了解 Ansible 的功能,这是一个无代理的、可扩展的配置管理系统。 网络自动化 随着 IT 行业的技术变化,从服务器虚拟化到公有云和私有云,以及自服务能力、容器化应用、平台即服…
-
如何在 Linux Shell 编程中定义和使用函数
函数是一段可复用的代码。我们通常把重复的代码放进函数中并且在不同的地方去调用它。库是函数的集合。我们可以在库中定义经常使用的函数,这样其它脚本便可以不再重复代码而使用这些函数。 本…
-
包管理器的进化
包管理器在 Linux 软件管理中扮演了重要角色。这里对一些主要的包管理器进行了对比。 今天,每个可计算设备都会使用某种软件来完成预定的任务。在软件开发的上古时期,为了找出软件中的…