代码

codeception (1)介绍

Codeception 全堆栈的 PHP 测试框架, 提供测试的方法多样, 灵活Codeception 简单来说, 分为以下几种测试1 Acceptance Tests 验收测试我们先设想这样一个场景:当技术人员开发完毕, 其客户, 产品经理, 或者是测试人员, 他们怎么确定产品的可用性? 一般情况下, 他们都是执行以下几个步骤进行测试:打开浏览器;输入 url;看到一些信

Code Complete — 代码改善

代码改善的目的是为了提高质量,这个质量不仅包括从用户角度出发的软件质量,也包括从开发者角度出发的代码质量。软件质量的普遍原理就是改善质量以降低开发成本。提高生产效率和改善质量的最佳途径就是减少花在这种代码返工上得时间,无论返工是由需求、设计改变还是调试引起的。提高质量的方式有协同构建、调试与测试、代码重构和调整等多种方式,本文记录了一些主要策略。协同构建协同开发实践往往能比

程序员启示录

最近因为项目需要在看一个开源项目的源码,这个开源项目据说在内部开发孵化了 6 年之久,前几年才开源出来。 我在看设计文档和源码中发现,它的高层设计的一致性是比较好的,但到了源码实现就显得凌乱了些。 既然是时间跨度如此长的项目,想必参与这个项目的程序员也不止一批人了,处于不同阶段的程序员都有可能参与,这样也能理解实现上的凌乱了。 看着这些有一定时间沉淀的代码,有些代码可能诞生

代码故事:汉德的救赎

我叫汉德(Handle),是一段程序代码,出生在日食之城埃地特(Editor)。我诞生于伟大而荣耀的瑟维斯家族(Service),我们家族的格言是:“瑟维斯永不倒下。(Services never crash down.)”。信仰我们家族的信仰,哦,不对,应该是所有代码家族的信仰都是普瑞格兰姆神祇。普瑞格兰姆是众神的统称,其中又细分为三类:科德尔(Coder),创造神。特斯

一个优秀的程序员应该拥有的素质

1、只做需要做的工作使用敏捷方法;全心全意做UX设计;沟通第一;编码也许不是解决问题的办法;过早的优化是一切罪恶的根源;选择最简单的解决方案。2、站在巨人的肩膀上使用开源框架;使用简洁语言(如HAML、Jade、Coffeescript);不要做重复的事情(不要重新发明轮子);利用包管理器来进行公共和私有代码分配;不要任凭巨头(如微软)的摆布而修复库中的一个Bug;不要让你

编程的艺术门槛

编程是门艺术,这个说法由来已久。最近在朱赟的公众号(滴答滴答)读到一篇文章《设计是门逻辑学,然后才是美学》,文中作者漂洋过海追寻艺术,老师却说:“设计不是艺术!”。如果设计都不是艺术,那么编程还能是艺术么?艺术那么艺术到底是什么?我一下懵了,发现从来没有想过这个问题,只好求助于 Google。Wikipedia 上的定义是:「艺术是具有智能思考能力的动物(目前其实只有人类吧

Chrome 浏览器的 source-map 功能

webpack 非常火,它提供的 HMR(hot module replacement) 功能非常棒,修改代码无需刷新页面。那么在 webpack 出现之前,有什么好的方法呢。作为前端开发,Chrome 应该是大家最喜欢的浏览器之一,调试代码非常方便。这篇文章主要介绍下,Chrome 浏览器自带的 source-map 功能。如果你的项目已经用 webpack 了,那就不太

什么是「设计模式」?

很多人应该听说过设计模式(Design pattern),又或多或少的看过或用过设计模式,但是实际用在开发过程中总有点心有余而力不足的感觉。那肯定是对设计模式的理解有少许偏差或者不够深入。先不谈某种具体的模式,先来看看什么是设计模式?从概论结合实际场景分析什么是设计模式?设计模式是一套代码设计「经验的总结」。项目中「合理的」运用设计模式可以「巧妙的解决很多问题」。经验的总结

程序员与工匠精神的思考

代码是用来阅读和执行的。但首先是用来阅读的。你的代码被改动得越频繁越越有价值,无论是被你自己还是被别人修改。如果你的代码一直没有被人修改,说明你写的代码没有价值。程序员按照职责不同可以分为很多种:应用开发者(Application developer) 和系统开发者(System developer)。应用开发者离用户和需求更近,更像一个工匠(此工匠不是那种单纯为了炫技而追

如何用 Gitlab 做团队内的 Code Review

基于分支的代码 Review新建 Issue (无论是 bug 还是 feature), 描述背景或问题,本地创建分支 issue# 123 (123是 issue 的 ID), 围绕关联 issue 进行 program -> commit -> push,新建 Merge Request 从 issue# 123 到 master, 并指派给项目 Owner (或合适