- 博客(18)
- 收藏
- 关注
写在2010年最后一晚,我的工作总结
在这将近两年的工作里,发生了太多的事情,有了太多的收获和惊喜。一直想将他们付诸笔下却没有这个动力或者时间来实现,今天选择在 2010年的最后一个夜晚。北京的冬天外面挂着凛冽的寒风,而屋内,一瓶啤酒,坐在电脑旁,我决定静下心来好好的记录和分享我在这两年中的收获和喜悦。 Ok,废话少说,let's talk. 1.走上工作 08年底,那时我大四,在国内一所一流的大学读计...
2010-12-31 23:58:00 77
2010年最后一天发布needtab.com第一版
我是一个吉他爱好者,乐器爱好者都面临找谱的问题。有一天我为了自己找谱方便,就写了一个简单的互联网上的曲谱数据挖掘程序。后来一想,其实这方面资源还是很匮乏,各大吉他谱内容网站各自为阵,缺乏统一的资源整合。大家要搜索吉他谱的话,有时需要到很多地方来搜索,而且搜索结果还很不专业。于是萌生一个念头,来做一个专业的吉他谱搜索,这是我业余时间做了一个小的曲谱搜索DEMO。现在功能还很初级,欢迎大家提各种建议。...
2010-12-31 21:45:00 64
原创 系统设计随笔 —— 阻塞关系
<br />在设计函数调用过程中,如何来很好的描述一个复杂的调用阻塞关系呢?<br /> <br />有很多方法,<br /> <br />请看如下图(取自google图片搜索)<br /> <br /><br /><br />图1是一个类似于函数调用流程,图2是一个时序图。<br /> <br />我的建议是两者结合描述,代码级别的使用调用关系示意图,而系统间通信使用时序图。<br /> <br />大家觉得呢?<br /> <br />
2010-12-21 17:30:00 747 1
系统设计随笔 —— 阻塞关系
在设计函数调用过程中,如何来很好的描述一个复杂的调用阻塞关系呢? 有很多方法, 请看如下图(取自google图片搜索) 图1是一个类似于函数调用流程,图2是一个时序图。 我的建议是两者结合描述,代码级别的使用调用关系示意图,而系统间通信使用时序图。 大家觉得呢? ...
2010-12-21 17:30:00 46
原创 API设计随笔
<br />今天看到CSDN上有一篇google的首席JAVA架构师访谈,主要谈到软件开发过程中的API设计。<br /> <br />总结之,有如下观点:<br /> <br />1。 关于测试API:在实现API之前编写它的测试用例。 <br />2。 不用API写代码,就不可能看出API有什么问题。<br />3。 API设计有一条基本原则:疑则不用。 <br />4。 你对API越来越有信心,代码也就越写越长。<br /> <br />结合到最近我做的系统设计中的API设计,颇有体会。<br />
2010-12-16 12:58:00 975
API设计随笔
今天看到CSDN上有一篇google的首席JAVA架构师访谈,主要谈到软件开发过程中的API设计。 总结之,有如下观点: 1。 关于测试API:在实现API之前编写它的测试用例。 2。 不用API写代码,就不可能看出API有什么问题。 3。 API设计有一条基本原则:疑则不用。 4。 你对API越来越有信心,代码也就越写越长。 结合到最近我做的系统设计中的API设计,颇...
2010-12-16 12:58:00 60
原创 家里来了个新成员阿布
<br />本贴与技术无关,CODER也是需要生活情调的。<br /> <br />家里来了个新成员:阿布<br /> <br />下面上靓照<br /> <br />
2010-12-15 14:18:00 1386
原创 C#一个singleton的通用实现
<br /> <br /> public class Singleton<T> where T : new() { public static T Instance { get { return SingletonCreator.instance; } } class SingletonCreator { internal sta
2010-12-09 23:53:00 3267 1
C#一个singleton的通用实现
public class Singleton<T> where T : new() { public static T Instance { get { return SingletonCreator.instance; } } class Si...
2010-12-09 23:53:00 73
原创 系统设计经验谈(四)
<br /><br />1. 基础模型尽量符合通用(不一定是简单)的原则,这样才能建筑起强大的上层建筑。如果基于该模型构建上层建筑过程很复杂,考虑设计中间层。<br /> <br />所以在设计底层的时候应该是想一个尽量简单的规则,能够衍生出各种复杂的上层。就像数学里,公理尽量简单明了,可以严谨的用于论证复杂的上层情况,如果上层应用很复杂,再归纳出定理。<br /> <br />2. 在访问临界区不是特别频繁的情况下,进程间互斥锁可以只用规范一个命名。<br /> <br />使用一个锁来锁住整个临界区,实
2010-12-08 13:02:00 867
系统设计经验谈(四)
1. 基础模型尽量符合通用(不一定是简单)的原则,这样才能建筑起强大的上层建筑。如果基于该模型构建上层建筑过程很复杂,考虑设计中间层。 所以在设计底层的时候应该是想一个尽量简单的规则,能够衍生出各种复杂的上层。就像数学里,公理尽量简单明了,可以严谨的用于论证复杂的上层情况,如果上层应用很复杂,再归纳出定理。 2. 在访问临界区不是特别频繁的情况下,进程间互斥锁可以只用规范一个命名...
2010-12-08 13:02:00 76
原创 曲谱搜索进展 及 python的轻量级爬虫框架
<br />最近开始正式整我的吉他谱搜索引擎,搭了一个很轻量级但是个人觉得比较好用的爬虫框架,以及一个非常简单的搜索页面。<br /> <br />另外花了一点钱将域名注册了下来,可以试试 http://www.needtab.com<br /> <br />现在上面放的是这个最简单的版本,接下来将在功能上及美工方面逐步细化。并在短期内推广上线。<br /> <br /> <br />这里不过多的讨论曲谱搜索引擎了,我将我写的轻量级爬虫框架开源到了网上,希望能对需要的人有所参考帮助。<br /> <br /
2010-12-07 14:21:00 2504 1
曲谱搜索进展 及 python的轻量级爬虫框架
最近开始正式整我的吉他谱搜索引擎,搭了一个很轻量级但是个人觉得比较好用的爬虫框架,以及一个非常简单的搜索页面。 另外花了一点钱将域名注册了下来,可以试试 http://www.needtab.com 现在上面放的是这个最简单的版本,接下来将在功能上及美工方面逐步细化。并在短期内推广上线。 这里不过多的讨论曲谱搜索引擎了,我将我写的轻量级爬虫框架开源到了网上,希望能对需要的人有...
2010-12-07 14:21:00 99
原创 系统设计经验谈(三)
<br /> <br />2010-12-1<br />1. 抽象的模块划分图是示意图,在系统设计中应该有配套具体的模块关系图对其进行解释。<br />2. 环形调用关系的出现有时是不可避免的。尽量不要出现。<br /> <br />2010-12-2<br />1. 在复杂调用系统中,应该明确同步阻塞关系。<br />2. 在Interpreter模式中,若需要崩溃恢复,不能使用冻结脚本虚拟机并恢复的原理,因为运行环境很可能变化了。而应该是缓存住之前耗时操作,重新执行。<br />3. 在设计版本升级流程
2010-12-02 10:28:00 1210
系统设计经验谈(三)
2010-12-1 1. 抽象的模块划分图是示意图,在系统设计中应该有配套具体的模块关系图对其进行解释。 2. 环形调用关系的出现有时是不可避免的。尽量不要出现。 2010-12-2 1. 在复杂调用系统中,应该明确同步阻塞关系。 2. 在Interpreter模式中,若需要崩溃恢复,不能使用冻结脚本虚拟机并恢复的原理,因为运行环境很可能变化了。而应该是缓存住之前耗时操作,重新执...
2010-12-02 10:28:00 86
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人