- 博客(306)
- 资源 (13)
- 收藏
- 关注
原创 【Git流程最佳实践】 开发较大功能时应使用project branch
在开发跨越新特性的时候会从主branch(master/trunk/develop)创建而来的一个git branch。经常会以feature/<特性名>命名在开发较大功能的时候会由几个程序员组成一个子项目小组。此时可以为这个子项目建立一个较大的开发branch。这个branch可以跨越sprint。改子项目开发人员的提交先提交到该project branch上,到一定时间点,把由project branch合并(merge)到主分支上。project branch可以以。
2025-03-21 15:28:23
933
原创 【方法论】自行车棚效应
琐事法则,也被称为自行车棚效应。以下是来自维基页面的引用:琐事法则是C·诺斯科特·帕金森于1957年提出的观点,认为组织中的人们通常会对琐碎问题给予过多的关注。帕金森举了一个虚构委员会的例子,该委员会的任务是批准核电站的设计方案,但他们将大部分时间花在讨论相对较小但容易理解的问题上,比如选择用于员工自行车棚的材料,而忽视了更重要且更加复杂的任务——核电站本身的设计方案。该法则已被应用于软件开发和其他活动中。
2025-03-06 03:53:38
207
原创 【Copilot极限实践日记】DAY 2: 使用Copilot/ChatGPT解决项目编译问题
今天是极限实践Copilot第二天,我尝试了分别使用ChatGPT和Copilot来解决项目构建问题。理论上,Copilot使用了GPT-4o模型,ChatGPT使用了4o,他们的结果理应是一样的,但是实际上是怎么样?我们来看看
2025-03-04 11:47:23
1060
原创 【Copilot极限实践日记】DAY 1: 使用Copilot实践不写一行代码快速生成unit test
一次尝试只用对话来让Copilot写测试用的尝试
2025-03-01 15:57:26
618
原创 在Vue.js中应该避免的三件事
尽量避免使用行内事件代码(inline script)这是一个行内事件代码 的例子<div @click="alert('hello world'); doSomething();" />这种代码虽然第一次写起来很简单,但是很容易出bug。这样做有两个缺点。VS Code 无法检查行内事件代码的错误VS Code没有办法帮你检查模板中的行内事件代码,所以请尽量不要写行内事件代码。你可能会觉得有些代码很简单,你可以直接看出有没有错误。但实际上,大多数时间我们都看不出一些简单的错误。比如
2023-02-20 03:23:02
443
原创 Jest单元测试最佳实践1:使用eslint-plugin-jest规范测试代码
项目中的荒草地我们经常只关注业务代码的代码质量,而忽略了测试用例的代码质量。这让单元测试代码狂野生长。从而导致单元测试代码往往不起作用。这也是有些程序员认为单元测试代码没什么用。所以我会分享我在项目中发现的jest单元测试最佳实践。从代码风格开始让我们从测试代码的风格开始吧。我们一般都会用eslint来规范业务代码。你是否尝试过使用eslint来规范单元测试代码呢?试试看 eslint-plugin-jest 吧。这是这个项目的页面https://www.npmjs.com/package/eslin
2021-04-28 12:42:02
1706
1
原创 如何解决测试动态加载vue组件的时候浅加载shallowMount不能用的问题
动态import带来的问题如果你在使用Vue的时候同时使用了动态加载,比如有两个组件Parent和Child。Parent会动态加载Child。Parent组件内容<template> <div> Parent <Child /> </div></template><script>export default { components: { Child: () => im
2020-05-13 15:52:30
2113
1
原创 调试javascript/nodejs单元测试的方法
本文会说明如何调试javascript 或者 nodejs的方法。该方法不局限于开发工具,你可以使用atom或者vscode。也不局限于测试框架,你可以使用vue-test-utils, mocha, jest等等。步骤在要调试的代码处加debugger 打开Chrome(谷歌浏览器),并在地址栏输入 chrome://inspect ,选择 Open dedicated DevToo...
2019-12-27 03:46:49
986
原创 《HBase不睡觉书》
《HBase不睡觉书》京东购买链接:https://item.jd.com/12280151.html亚马逊购买链接:https://www.amazon.cn/dp/B078X66CTS当当购买链接:http://product.dangdang.com/25216089.html...
2018-12-26 17:06:45
1686
原创 Vue 不睡觉教程3 - 来点实在的:自动计算剩余时间的任务列表
名字灵感来自我的书《HBase不睡觉书》 意为让你看了也不会想睡觉的教程 :)目标前两课教的是入门和文件结构。都没有什么实在的东西。这次我们要来点实在的。我们要做出一个待办列表。这个待办列表有以下特点:可以自动从文本中抽取出这件事情的开始时间 可以显示当前距离这件事情的开始时间还有多久,比如:23:40 回家 (还有 6 小时 36 分 15 秒) 如果当前时间已经超过了计划时间,...
2018-10-04 09:48:46
4327
9
原创 虚拟浏览器 JSDOM 学习笔记
这篇文章只是个人学习笔记,所以结构不清,信息不全,建议阅读原版项目手册。 JSDOM 是用nodejs实现的用于测试的虚拟浏览器。基本例子const dom = new JSDOM(``, { url: "https://example.org/", referrer: "https://example.com/", contentType: "text/html",...
2018-09-24 15:15:33
3533
原创 Vue 不睡觉教程2 - 洋气的文件结构
名字灵感来自我的书《HBase不睡觉书》 意为让你看了也不会想睡觉的教程 :)目标我们这节课的目标在于通过改造上一课的例子来学习vue的文件结构Let's do it环境参数vue版本:2.5.16开始改造我们要开始改造上一节那个极土的例子,让它看起来洋气一点。很多教程上来把webpack跟vue绑在一起教,让很多原本不懂webpack的人以为webpack是vue的组成部分,或者是必不可少的部分...
2018-06-30 11:21:42
7179
7
原创 Vue 不睡觉教程1-从最土开始
环境参数vue版本:2.5.16安装虽然vue有很多种安装方式,但是最酷的是使用vue-cli方式安装。方法如下:安装vue-cli首先确保npm版本大于3.0:$ npm -v6.0.0如果低于3.0请升级npmnpm i -g npm全局装vue-clinpm i -g @vue/cli插曲:我第一次安装 vue/cli的时候,npm不断提示 ERR! write after endroot...
2018-06-21 08:22:19
22061
3
原创 Laravel Broadcasting广播机制(Redis + socket.io)-学习实例
借助Laravel Broadcasting你可以使用上时下很热的Websocket技术。
2018-05-26 08:42:32
17845
33
原创 计算机历史博物馆观后感:阿达·洛芙莱斯生平9(完结)
December 10, 2015, marks the 200th anniversary of the birth of Ada, Countess of Lovelace(1815-1852), a remarkable person who was charming, temperamental, inquisitive, and intelligent.2015年11月10号是阿达·洛...
2018-04-30 02:03:55
1674
翻译 计算机历史博物馆观后感:阿达·洛芙莱斯生平8
"Where is it gone?"Charles Babbage and Ada Lovelace exchanged many letters as she worked on the details of her paper, translating an article by Luigi Menabrea, and adding "notes" that were three times...
2018-04-11 15:17:56
1415
翻译 计算机历史博物馆观后感:阿达·洛芙莱斯生平7
"The Analytical Engine has no pretensions whatever to originate anything. It can do whatever we know how to order it to perform."分析引擎算不上是完全原创的东西。它可以做任何我们命令它去执行的事情。"The thinking machine"In 1833 Lady By...
2018-04-06 16:07:40
912
翻译 计算机历史博物馆观后感:阿达·洛芙莱斯生平6
Calculus of the nervous systemAlthough suffering increasing ill-health, Ada Lovelace maintained her interest in mathematics and science. Her idea that she might use mathematics to understand the nervo...
2018-03-25 09:21:08
965
翻译 计算机历史博物馆观后感:阿达·洛芙莱斯生平5
"A new, a vast, and a powerful language is developed for the future use of analysis, in which to wield its truths so that these may become of more speedy and accurate practical application for the pur...
2018-03-17 07:38:07
1710
翻译 计算机历史博物馆观后感:阿达·洛芙莱斯生平4
TranscriptionToday I have been flying particularly well and I think you ['would' crossed out] will really say I have much improved in that exercise. My wings are going on prosperously but do not expec...
2018-03-09 06:30:00
786
翻译 计算机历史博物馆观后感:阿达·洛芙莱斯生平3
"Is thy face like thy mother's, my fair child?"Lord Byron saw his daughter Ada for the last time in January 1816 when she was only one month old. In April he agreed to a formal separation from his wif...
2018-03-03 09:12:47
724
翻译 计算机历史博物馆观后感:阿达·洛芙莱斯生平2
A flying horseAda was an imaginative child. Her education fostered her interest in mathematics and science and she became fascinated by all things mechanical. Throughout 1828 her letters to her mother...
2018-03-01 16:24:33
947
翻译 计算机历史博物馆观后感:阿达·洛芙莱斯生平1
参观完坐落于硅谷的计算机历史博物馆后,很受触动。阿达·洛芙莱斯,拜伦之女,是世界上第一个程序员。"The more I study, the more insatiable do I feel my genius for it to be"“我学习的越多,我的才智就越贪婪”阿达之母:Annabella Byron的画像阿达小时候的画像Early notes on geography and ari...
2018-02-28 09:45:38
2146
翻译 如何在Centos7下升级Apache至最新版本
原文:https://crosp.net/blog/administration/install-latest-apache-server-centos-7/Apache是使用最广泛的应用部署软件。并且它也是所有服务器的必要组成部分。安装最新版本的apache意味着拥有更多最新的功能和修复了已知的BUG。介绍在这篇教程里面,我将会介绍在Centos7下安装最新版Apache的几个简单步骤。默认情况...
2018-02-20 07:16:10
13614
3
原创 监控/触发text input变化的事件大全,总有一个会命中
监控/触发text input变化的事件大全,总有一个会命中如果是要绑定text input的变化:elem.bind("propertychange change click keyup input paste", function(event){...})如果是要触发text input的变化:.trigger("propertychange").trigger("change").tri
2017-11-08 04:55:51
636
原创 当python找不到pip的时候
今天用python来安装oracle的驱动的时候出现如下错误» python -m pip install cx_Oracle --upgrade/usr/bin/python: No module named pip解决方案异常的简单:python -m ensurepip
2017-11-05 07:45:31
6938
1
原创 Underscore.js API 学习笔记
Collections_.first 可以挑选出数组中第一个元素,比[0]更可读_.reduce可以将整个数组合并成一个数字,第三个参数是初始值,如果没有就采用数组的第一个数字作为初始值var sum = _.reduce([1, 2, 3], function(memo, num){ return memo + num; }, 0);=> 6_.reduceRight 是 _.reduce的从右
2017-07-16 09:24:43
743
原创 用 Browserify 替换 require.js
我一直不喜欢require.js的AMD风格,没事就增加代码层级。刚开始我花了很多时间去理解这种风格。直到我偶然发现了Browserify,他可以用更扁平化的风格来写代码,这就是我理想中的简洁的代码结构。
2016-10-05 05:23:47
2105
翻译 如何在centos6.x 下建立swap文件
原文出处https://www.digitalocean.com/community/tutorials/how-to-add-swap-on-centos-6Check for Swap Space检查Swap空间Before we proceed to set up a swap file, we need to check if any swap files have been enable
2016-08-28 03:08:11
1840
原创 git 下如何把另外一个分支的某个文件改动merge 合并到这个分支,而不是把整个分支merge过来
git 下如何把另外一个分支的某个文件改动merge 合并到这个分支,而不是把整个分支merge过来假设在分支A上改动了一个文件 f ,想把 f 合并到 B上,而不是把整个 A merge 到 B 上这时候使用以下命令:先切换到B上git checkout B然后再使用checkout 的 参数 --patch git checkout --patch A f中间会给出文件的内容然后说 not
2016-08-24 01:59:02
12948
原创 Git 如何快速的丢弃/抛弃/回滚本地的所有未stage的改动
有时候会看到git上有很多莫名其妙的 unstage的改动,可以确定不是自己做的,而且是可以丢弃的。可以使用把他们都隐藏 stash 起来,然后把stash区域清空掉git stash save --keep-index把垃圾桶直接倒掉git stash drop有人会问为什么不用git reset --hard因为git reset 会把连index 就是你已经加到index里面准备提交的改动都
2016-08-24 01:50:56
6321
翻译 xpath如何通过class来定位元素
xpath中没有提供对class的原生查找方法。但是我在stackoverflow上看到了一个很有才的回答。现翻译如下原帖链接(不管你能不能看到,总之原帖都是要贴的,要看到请自带天梯):http://stackoverflow.com/questions/1604471/how-can-i-find-an-element-by-css-class-with-xpathThis selector s
2016-08-11 06:35:36
18260
翻译 Linux下查看进程占用内存的最好方式
今天看到stackoverflow上关于linux下如何查看某个进程占用的内存是多少的回答,觉得非常棒,不过是全英文的,很多人可能看不懂,所以我翻译一下翻译自http://stackoverflow.com/questions/3853655/in-linux-how-to-tell-how-much-memory-processes-are-using查看进程占用的内存的方式可能比你想象中的要复
2016-08-09 06:44:53
8670
转载 如何在 Git 里撤销(几乎)任何操作
本文由 伯乐在线 - 老码农 翻译。未经许可,禁止转载!英文出处:GitHub 官博文章。欢迎加入翻译组。任何版本控制系统的一个最有的用特性就是“撤销 (undo)”你的错误操作的能力。在 Git 里,“撤销” 蕴含了不少略有差别的功能。当你进行一次新的提交的时候,Git 会保存你代码库在那个特定时间点的快照;之后,你可以利用 Git 返回到你的项目的一个早期版本。在本篇博文里,我会讲解某些你需要
2016-07-13 06:20:55
1812
原创 更换git默认冲突编辑器的方法
适用人群如果你用的是命令行界面来操作git,比如cygwin, babun之类的如果你是window用户那么你就需要更换一下git默认的冲突管理工具,git默认是vimdiff,这个工具是针对linux用户的,对于我们window用户来说不友好。目前最好的工具是perforce(一个版本管理工具,可能你们都没听说过,一般都是svn,cvs之类的,这个的确小众)自带的p4merge.先转perfor
2016-06-28 08:32:53
5102
原创 调试nodejs的方法(node-inspector)
node-inspector调试nodejs可以使用 node-inspector该项目的主页是https://github.com/node-inspector/node-inspector具体的用法全局安装 node-inspectornpm install -g node-inspector然后用 node-debug 来运行你的nodejs 文件node-debug app.js它会自动打
2016-06-25 09:59:08
4014
原创 有趣的Ruby-学习笔记7
RubyGems用Ruby一定会用到 RubyGems, RubyGems是Ruby下的包管理器,用过maven的人都知道包管理器的重要性。安装首先反问 RubyGems 官网 https://rubygems.org/pages/download此处我用本机的cygwin来演示如何安装
2016-03-03 14:59:04
1946
原创 有趣的Ruby-学习笔记5
Ruby字符串单引号字符串单引号字符串没什么好说的,跟别的语言没什么区别双引号字符串在双引号字符串里面可以使用#{}来表达计算式的值,比如x, y = 12, 36puts "x + y 的值为 #{ x + y }" 如果你就是想同时用单引号和双引号,Ruby还提供 %Q 和 %q 来引导的字符串变量, %q 使用的是单引号规则, %Q 使用的是双引号规则比如 desc1 = %Q{Ruby
2016-02-29 17:42:24
1658
phoenix-3.2.2-bin.tar.gz
2015-02-12
zend debugger toolbar for chrome
2013-08-16
ZendDebugger-5.2.10 for php 5.2.x
2013-08-16
VE-runtime-1.2.3_jem.zip
2008-04-25
GEF-runtime-3.2.zip
2008-04-25
emf-sdo-runtime-2.2.0.zip
2008-04-25
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人