D 语言的模块化、开发效率、可读性以及其它一些特性使其非常适合用于协同软件的开发。D 编程语言是一种静态类型的通用编程语言,它具有和 C 语言类似的语法,能够编译为本地代码。许多理由使得它很适合用于开源软件开发,下面讲到的是其中一些理由。模块化能力在大多数情况下,当你有一个好的想法,你可以完全按照你
系统可以持续运行 5 年、10 年甚至 20 年或者更多年。但是,特定的代码行的生命,即使是经过设计,通常要短得多:当你通过各种方式来迭代寻求解决方案时,它会有几个月、几天甚至几分钟的生命。一些代码比其他代码重要通过研究代码如何随时间变化,Michael Feathers 确定了一个代码库的冥曲线。
通过使用 GitHub 的 拉取请求 Pull Request 正确地进行代码审核,把时间更多的花在构建上,而在修复上少用点时间。如果你不是每天编写代码,你可能不知道软件开发人员日常面临的一些问题。代码中的安全漏洞导致应用程序崩溃的代码被称作 “技术债务” 和之后需要重写的代码在某处你所不知道地方的
测试覆盖 ( Testing coverage ) ,指测试系统覆盖被测试系统的程度,一项给定测试或一组测试对某个给定系统或构件的所有指定测试用例进行处理所达到的程度。 如果在写代码的人仅为可运行而编码,那么在后边会出现一系列的连锁反应,任何没有经过真构思之后书写的代码,都会带来巨大的维护成本吧。昨
我刚写了一篇关于 Jupyter Notebooks 的文章,它是一个有趣的交互式写 Python 代码的方式。这让我想起我最近学习了 Glitch,这个我同样喜爱!我构建了一个小的程序来用于关闭转发 twitter。因此有了这篇文章!Glitch 是一个简单的构建 Javascript web 程
搜索代码库是开发者每天都要做的事情。从修改 bug 到学习新代码,或者查看如何调用某个 API,能快速在代码库中导航的能力都是一大助力。幸运的是,我们有专门的工具来搜索代码。pss 就是其中一个工具,让我们来看看如何安装和使用它吧。什么是 pss?pss 是一个帮你在源代码文件中进行搜索的命令行工具
在每一个程序员、项目管理员、团队领导的一生中,这都会至少发生一次。原来的程序员早已离职去度假了,给你留下了一坨几百万行屎一样的、勉强支撑公司运行的代码和(如果有的话)跟代码驴头不对马嘴的文档。你的任务:带领团队摆脱这个混乱的局面。当你的第一反应(逃命)过去之后,你开始去熟悉这个项目。公司的管理层都在
你是否担心工作中自动化将代替人?可能是对的,但是这并不是件坏事。这是一个很正常的担心:DevOps 最终会让你失业?毕竟,DevOps 意味着开发人员做运营,对吗?DevOps 是自动化的。如果我的工作都自动化了,我去做什么?实行持续分发和容器化意味着运营已经过时了吗?对于 DevOps 来说,所有
用管理虚拟机和容器的工具 Vagrant 清理你的开发环境和依赖。如果你和我一样,你可能在某一个地方有一个“沙盒”,你可以在那里进行你正在做的任何项目。随着时间的推移,沙盒会变得杂乱无章,充斥着各种想法、工具链元素、你不使用的代码模块,以及其他你不需要的东西。当你完成某件事情时,这会使你的部署变得复
Ohcount 是一个简单的命令行工具,可用于分析源代码并打印代码的总行数。它不仅仅是代码行计数器,还可以在含有大量代码的目录中检测流行的开源许可证,例如 GPL。此外,Ohcount 还可以检测针对特定编程 API(例如 KDE 或 Win32)的代码。在编写本指南时,Ohcount 目前支持 7
在本文中,我们的目的是让你了解如何设置属于自己的Git服务器。Git 是由 Linux Torvalds 开发的一个版本控制系统,现如今正在被全世界大量开发者使用。许多公司喜欢使用基于 Git 版本控制的 GitHub 代码托管。根据报道,GitHub 是现如今全世界最大的代码托管网站。GitHub
对大多数开发者来说,与 RxJS 的初次接触是通过库的形式,就像 Angular。一些函数会返回 流 stream ,要使用它们就得把注意力放在操作符上。有些时候,混用响应式和非响应式代码似乎很有用。然后大家就开始热衷流的创造。不论是在编写异步代码或者是数据处理时,流都是一个不错的方案。RxJS 提
检查你的代码的质量,通过这些外部库使其更易维护。可读性很重要。— Python 之禅 The Zen of Python ,Tim Peters随着软件项目进入“维护模式”,对可读性和编码标准的要求很容易落空(甚至从一开始就没有建立过那些标准)。然而,在代码库中保持一致的代码风格和测试标准能够显著减
开源就是丢一些代码到 GitHub 上。了解一下它是什么,以及不是什么?最简单的来说,开源编程就是编写一些大家可以随意取用、修改的代码。但你肯定听过关于 Go 语言的那个老笑话,说 Go 语言“简单到看一眼就可以明白规则,但需要一辈子去学会运用它”。其实写开源代码也是这样的。往 GitHub、Bit
开源软件的迅速普及带来了对健全安全实践的需求。虽然目前开源依然发展势头较好,并被广大的厂商所采用,然而最近由 Black Duck 和 Synopsys 发布的 2018 开源安全与风险评估报告指出了一些存在的风险,并重点阐述了对于健全安全措施的需求。这份报告的分析资料素材来自经过脱敏后的 1100
作为一个开发人员,你可能需要不时地向你的领导或者同事分享你目前的工作与代码开发进展,抑或你的领导想对代码进行全方位的分析。这时,你就需要用到一些代码统计的工具,我知道其中一个是 Ohcount。今天,我遇到了另一个程序,cloc。你可以用 cloc 很容易地统计多种语言的源代码行数。它还可以计算空行
为开源项目作贡献最好的方式是为它减少代码,我们应致力于写出让新手程序员无需注释就容易理解的代码,让维护者也无需花费太多精力就能着手维护。在学生时代,我们会更多地用复杂巧妙的技术去挑战新的难题。首先我们会学习循环,然后是函数啊,类啊,等等。当我们到达一定高的程度,能用更高级的技术写更长的程序,我们会因
通过不断分析代码以了解潜在的质量问题,开源的 SonarQube 项目支持了 DevOps 的“尽早发布和经常发布” 的思维模式。越来越多的组织正在实施 DevOps 以便在通过中间开发和测试环境以后更快更好的将新代码引入到生产环境。虽然版本控制、持续集成和部署以及自动化测试都属于 DevOps 的
让一名非工程师来解释为什么你不必成为一位开发者或运维就能爱上 DevOps。我从未做过开发或运维的工作 —— 那怎么我在写一篇关于 DevOps 的文章?我一直都对计算机和技术有兴趣。我还对社群、心理学以及帮助他人充满热情。当我第一次听到 DevOps 时,这个概念激起了我的兴趣,因为它看起来融合了
OK03 课程基于 OK02 课程来构建,它教你在汇编中如何使用函数让代码可复用和可读性更好。假设你已经有了 课程 2:OK02 的操作系统,我们将以它为基础。1、可复用的代码到目前为止,我们所写的代码都是以我们希望发生的事为顺序来输入的。对于非常小的程序来说,这种做法很好,但是如果我们以这种方式去