笔记
文章平均质量分 81
唐家文
喜欢系统架构、开发流程的研究。
展开
-
敏捷开发的真实体现
现在大部分企业都说自己是【敏捷开发】,站在管理者的角度可能敏捷代表加快软件交付的速度,站在开发者的角度可能敏捷代表一堆执行的方法和规则,更有不少人(心里)认为敏捷是逼迫开发者老实点的方法。无论怎样,各个企业都执行着或多或少的敏捷开发中的元素:迭代,每天站会,复盘等等。形式是有的,但是总觉得哪里不对了,就是没达到敏捷应该有的效果。最近看了一个Dave Farley的一个有关敏捷的YouTube视频,当中指出了一个敏捷开发的几个核心内容:开发软件是一个不可重复的工作:一个需求和另一个需求的开发内容、场景和原创 2021-07-19 17:55:20 · 258 阅读 · 0 评论 -
初探网页应用的自动化测试:Cucumber + Selenium
前言测试同学一般在测试网页应用的时候,都会按着既定的用例描述自行操作一遍,来验证输出结果是否符合预期,这相信也是大部分公司招聘测试员的工作范围之一。这种作业模式,在上线频率不高的前提下,还是可以满足要求的。完整执行一次回归测试,覆盖系统所有功能,实际上也是比较耗费时间的。自动化测试固然可以解决测试效率问题,...原创 2021-03-11 14:20:39 · 847 阅读 · 3 评论 -
依赖关系分析是开发者必须经过的一道坎
依赖关系是什么依赖关系是用来描述一个事情发生的必要条件。如:吃饱才有力气干活。那么干活依赖吃饱这个条件。要表达干活依赖吃饱,通常我们会用一个箭头链接吃饱和干活,如下图:#mermaid-svg-l3iF11rPbbnishmX .label{font-family:'trebuchet ms', verdana, arial;font-family:var(--mermaid-font-family);fill:#333;color:#333}#mermaid-svg-l3iF11rPbbnishmX原创 2021-02-08 18:48:49 · 1193 阅读 · 0 评论 -
没有这些能力能做好程序员吗?
经常想的一个问题,在我审核代码的时候,一般程序员都或多或少的犯了一些毛病,而这些毛病的根本原因是因为缺少了某些能力导致的,下面我做了一个初步的总结。识别识别包含几个概念: discover,identify,naming。首先你需要在混沌中发现有用的东西,明确识别它,并赋予它一个准确的名字,以区分开不同的概念。识别能力是下面其他能力的开始点。归类当你能在混沌中识别到很多不同的东西以后,你需要把东西归类(classify),作初步简化。什么东西应该放在一起,什么东西绝对不能放在一起,就好像垃圾分类。实原创 2020-09-19 10:49:29 · 274 阅读 · 0 评论 -
程序员的等级
程序员的等级大致可以分为以下几种:* 要手把手的教着来做事(实习生)* 给他准确和完整的指示,才能把事做好(初级程序员)* 给他模糊甚至遗漏了的指示,他能把事做好(高级程序员)* 给他原则性指导,他就把事做好(系统分析员,架构师)* 只说好目标,不给他任何指导,他也会把事情做好(技术合伙人)* 自己找目标,并做好事情(创业者)...原创 2019-12-19 14:04:09 · 249 阅读 · 0 评论