摘要:
我个人最早接触敏捷是在上大学时,在《程序员》杂志上看到一本书——《解析极限编程》——的推介。当时我只是“幼稚”的从字面意思去理解:极限编程就是一种新式的编程方法(其实这么说也没错,对了一半)。 工作后,非常幸运,所在团队的 leader 对敏捷开发推崇备至。在技术层面,单元测试、结对编程是我们在工作 阅读全文
摘要:
设计模式是研发工程师们耳熟能详软件设计方法论之一,对于设计高内聚低耦合的软件系统大有裨益。 在软件设计以外的领域,也大量存在着各种各样的“模式”,譬如“模式”这个词就来源于建筑界——“每个模式都描述了一个在我们的环境中不断出现的问题,然后描述了该问题的解决方案的核心,通过这种方式,我们可以无数次地重 阅读全文
摘要:
Agile Software Development: Principles, Patterns and Practice (C# Edition) Source Code 这本书的经典性无需多言 书中含有大量代码示例,虽然是C#代码,但C#语言本身的表达力是很不错的,所以不管是JavaScript 阅读全文
摘要:
首发于笔者的微信公众号:技术心流FollowFlows 原文地址:Stripe Engineering Blog 各工程团队常面临一项共同挑战:重新设计数据模型以支持清晰准确的抽象和更复杂的功能。这意味着,在生产环境中,需要迁移数以百万计的活跃数据对象,并且重构上千行代码。 用户期望 Stripe 阅读全文
摘要:
其实就一句话: Each event can have multiple listeners, but a listener can't listen to more than a single event. If you want a class listening to many events, 阅读全文
摘要:
环境: 开发环境: 1. Mac OS 10.12.5 2. 微信Web开发者工具 v0.18.182200 测试环境: 1. iPhone 7 2. iOS 10.3.2 3. 微信 6.5.9 问题现象: 开发小程序过程中,需要将一个日期字符串——例如 var dateString = '201 阅读全文
摘要:
本人翻译的一篇文章,首发于伯乐在线。【补充信息】HipHop for PHP是一系列PHP脚本语言的程式码转换器的集合,它包含HPHPc、HPHPi、HPHPd以及HHVM,这四个脚本引擎各有所不同,但是他们共用相同的执行时期(Runtime)及工具集(Toolset)。HipHop是由Facebook所建立,他们用它来节省服务器的资源。HipHop 由C++和C语言所编写,发布时代码量已高达60万行,它以自由软件发布,采用PHP许可证3.01版。(摘自维基百科)2013年11月4日开始,HHVM团队进行了为期三周的“性能与兼容性封闭开发”。此次封闭开发于11月22日正式结束。总体来看,封闭开 阅读全文
摘要:
《卓有成效的管理者》通篇表达出这样一种观点:“管理有效性”的关键,不在于有效地“管理别人”,而在于有效地管理自己;不在于“如何管理他人”,而在于“如何管理自己”。我推荐这本书的理由:1. 书中阐述了“管理即有效管理自己”的观念。它是本书的基调,决定了书中介绍的方法适用于每一位希望自我管理的人,而不仅仅是拥有职位的管理者。2. 书中重点描述如何做才是“卓有成效的”,强调实践,所述方法“接地气”,有较好的操作性。3.“管理即有效管理自己”的观点透露着强烈的自省精神与责任精神。这两种精神正是我们这个弥漫着浓烈“官本位”气息的社会所严重缺乏的。《卓》书中列出欲成为卓有成效的管理者需具备的五大思想:1. 阅读全文
摘要:
原文地址:http://www.phabricator.com/docs/phabricator/article/Audit_User_Guide.html概览Phabricator支持两种代码审查工作流:“review”(提交前审查)和 “audit”(提交后审查)。这篇文档概述了通过Audit工具实现提交后审查流程。Audit如何工作使用审核工具允许提交和部署代码,而无需等待代码审查结果,虽然最终还是会进行代码审查。Audit工具主要跟踪两件事:代码提交(Commits),以及它们的审核状态(譬如“未经审核(Not Audited)”、“认可(Approved)”、“引发担忧(Concer 阅读全文
摘要:
调试应该是开发人员除编码以外最常进行的工作了。有时,开发人员们花在调试上的时间跟编码的时间一样长甚至更甚。 计算机经典图书《The Pragmatic Programmer:From Journeyman to Master》(《开发人员修炼之道——从小工到专家》)专门开辟一个节来讲述调试,并将这项技能归入“基本工具”一章中,足见调试的基础性和重要性。以下便是对这本书调试一节的读书笔记以及一些读后感。 调试的目的是为了解决“bug”。书中首先介绍了“bug”的起源——在早期,一位计算机操作者在检查为何机器未按期望运转时,发现有一只bug(虫子)——蛾子——钻入了计算机的继电器并把自... 阅读全文