软件工程资料汇编

     

写作是软件工程师重要的超能 - Gergely Orosz

1286 2

Google8号员工和现在的工程高级副总裁UrsHölzle明确 .

高质量的软件是否能赚回成本? - Martin Fowler

1814 2 5K

软件开发项目中的一个常见争论是:该不该花时间提高软件质量,还是把时间专注于不断发布更有价值的新功能。通常,倡导把时间用于提供新功能的交付派别会赢得这场讨论胜.

权威解读什么是技术负债? - martinfowler.com

1480 2 3K

软件系统是容易的积聚一些累赘 cruft   : 内部质量不高,导致其比预想更难进行修改和进一步扩展系统。技术债务是沃德坎宁安.

吐槽“技术债务” - morethancoding

2118 1

如果你在软件行业工作一段时间,你最终会听到 .

从1100多个项目中吸取的教训:为什么软件项目需要英雄?

671

“英雄”项目是20%的开发者提供80%或更多贡献的项目。很多项目被放弃,因为这些项目失败源于沟通的瓶颈,但是,关于这个问题的实证证据很少,此外,最近的研究表.

Facebook开源Aroma: 通过机器学习向程序员推荐代码模板

3082 4 2K

为了简化和加快编写会对许多系统产生影响的代码的过程,工程师经常需要一种方法来查找其他人如何编写代码来处理类似的任务。我们创建了Aroma,一种代码到代码的搜.

对编程技术的热情反而会使我们的工作更糟 · 哲学黑客

1652 2 4K

这是来自一篇生产实践的经验分享,程序员对技术热情,而不是对业务理解的热情会误导企业软件方向,导致很多挫折和失败,技术不是越新越先进越好,而应该匹配业务领域:.

编程之道(1987) - Geoffrey James翻译

1021 1 14K

”The Tao Of Programming编程之道“作者是Nigel Tao,他是Go团队中的主要人物之一,点击标题见原文 .

谈谈Bug引起的复杂性“Bug-O” — Overreacted

1099 6K

在编写对性能敏感的代码时,最好记住它的算法复杂性。它通常用 .

DevOps与敏捷异同 - DZone DevOps

1417 12K

敏捷和DevOps可能看起来像是不同的行为,但如果你看看他们的目标,你会发现它们非常相似。看看Agile和DevOps提供的价值。也就是说,看看DevOps.

如何有效地提升开发团队的水平? - bravenewgeek

1430 3 3K

客户经常会问的一个问题是:如何有效地提升开发团队的水平?你如何让一组从未编写过Python的工程师使其成为高效的Python开发人员?你如何让从未构建过分布.

什么是软件咨询?

5882 1

商业词典有 .

建立快速响应软件开发的四个关键 - Andy Hunt

1348 4K

这是成功的现代软件开发策略的四个基本部分。 无可挑剔,可靠,自动化的构建和部署系统 有效,低摩擦的协作 .

学习软件开发时我面临的两大挑战 - Kinyanjui Wangonya

747

我在学校学习计算机科学。专门从事软件方面的工作。毕业后,我觉得我知道的很多。我在课堂上做了几个项目,还有一些副项目,所以编码对我来说并不是什么新鲜事。现在我.

逃避方法论的监狱 - Ivar Jacobson

963 1 12K
50多年来,全世界都在开发软件。软件几乎改变了我们生活的方方面面,所以我们离不开它。因此,软件业一直非常成功。我们可以选择快乐并继续做我们正在做的事情。 .

使用Mob编程开发的经验教训 - Jasmin Fluri

1969 2K

我一直想在一个真实的项目中进行Mob编程,直到在一年前的一个为期三天的黑客马拉松中进行了实验 - 它的表现非常出色。几周前,我终于有机会与我的工程团队一起开.

DDD游击队 - yannick grenzinger

1364 2 3K
2018年6月26日,我很幸运地被DDD巴黎团队邀请与一些DDD明星同台演讲,如 .

个人独立工作时的良好工程实践

1092 1 4K

大多数开发人员都是团队的一员。然而,在我们职业生涯的某些阶段,我们必须(或者我们必须)独自工作。虽然大部分产品开发涉及能够管理或与团队的其他成员合作,但在单.

体面编码之文件 格式化和依赖管理

688 2K

根据惯例对文件实现良好命名。请参阅 .

体面编码之异常日志和测试处理

905 4K

在方法接口的域中抛出异常。这可以避免破坏抽象或应用程序层。例如,DAO不应抛出HTTP异常,也不应传播JDBC异常。可以捕获异常并将其包装在更合适的位置以便.

体面编码之命名规则

907 2K

体面编码就是编写更好代码的简明指南,这是一份指南/清单,可帮助人们提高编码和代码审查。 计算机科学中只有两件事:缓.

没有银弹!

1530 4K

没有一个尺寸的裤子适合所有人穿,没有银弹,没有一个解决方案适合所有场景。本文概述了各种软件方法学。 为什么软件方法学都不同? 软件方法论主要是为.

科学软件十条简单编程原则

1702 1 6K

科学,尤其是生物学,越来越依赖软件工具来实现研究。但是,如果您是生物学家,则可能未接受过软件开发最佳实践方面的培训。由于缺乏培训,科学软件通常只有极少甚至不.

为什么糟糕的软件架构反而容易卖出去?

1 1018 2

本文作者作为很多年的资深顾问,看到太多公司和组织发生增长放缓,甚至是停滞和萎缩,主要因为他们在一开始时选择了错误的软件承包商。是错误的无法维护的软件架构制约.

DDD悖论:DDD是不是银弹?

1775 2

在关于DDD的每本书和每次会议中,我都听到“DDD不是银弹”。我可能是唯一一个反思的人。因此我可能会错过一些东西。 不过,自从我开始学习DDD以来,我.

工程经理也编码?

429

作为一名工程经理,我发现代码审查code review不仅有助于确保整个代码库的质量,还因为它具有知识共享性质。我更多地将代码审查视为一种对于代码库更改的广.

计算机科学哲学(斯坦福大学哲学百科全书)

6427 4 2K

主要是关于计算机科学到底是数学还是工程还是科学的争论,摘要部分重点如下: 计算机科学的语言分为两种:程序规范设计语言如Java和广义语言如UML,它们.

为什么我们无法避免复杂?

1007 2K

是因为我们无意识崇拜复杂吗? 本文来自 .

代码样式的另类风格!开眼

1490 1 18K
有许多优秀,整洁的代码风格指南。这些标准包括缩进,空格,行长度,命名约定等。一些著名的例子是: .

Kent Beck的test && commit || revert 敏捷协作方法

966 1 2K

Kent Beck在Facebook七年期间,目睹Facebook团队从700人扩展到5000多人,如果100,000名工程师如何在同一系统上工作? Face.