<?xml version="1.0" encoding="utf-8"?><feed xmlns="http://www.w3.org/2005/Atom"><title type="text">博客园_邱俊的空间</title><subtitle type="text">Simple is beautiful.</subtitle><id>http://feed.cnblogs.com/blog/u/50469/rss</id><updated>2009-07-26T08:28:06Z</updated><author><name>abruzzi</name><uri>http://www.cnblogs.com/abruzzi/</uri></author><generator>CNBlogs BlogServer</generator><link rel="alternate" type="text/html" href="http://www.cnblogs.com/abruzzi/"/><link rel="self" type="application/atom+xml" href="http://feed.cnblogs.com/blog/u/50469/rss"/><entry><id>http://www.cnblogs.com/abruzzi/archive/2009/07/25/1531068.html</id><title type="text">基于总线的消息服务(BBMS)的设计与实现</title><summary type="text">前言异步事件的通知机制在比较有规模的软件设计中必然会有涉及，比如GUI程序中的事件监听器，应用程序模块之间的通信，以及分布式应用中的消息机制等。如果使用语言原生的对象注册通信，则耦合度不可避免的会增大，也就是说，当时间发生时，A要通知B，则A必须知道B的存在。耦合度的增大在一定程度上必然会影响灵活性。所以，另一种模式就是今天要说的总线模式(BUS Based),即所有的监听器将自己挂在总线上，这些...</summary><published>2009-07-25T14:19:00Z</published><updated>2009-07-25T14:19:00Z</updated><author><name>abruzzi</name><uri>http://www.cnblogs.com/abruzzi/</uri></author><link rel="alternate" href="http://www.cnblogs.com/abruzzi/archive/2009/07/25/1531068.html"/><link rel="alternate" type="text/html" href="http://www.cnblogs.com/abruzzi/archive/2009/07/25/1531068.html"/></entry><entry><id>http://www.cnblogs.com/abruzzi/archive/2009/06/21/1507942.html</id><title type="text">事件和监听器</title><summary type="text">前言事件监听器是经常可以遇到的一种设计模式，一般用在这样一种场景下：当模块的一部分A在完成后需要通知其他的软件模块B，而等待通知的模块B在事先不需要采用轮询的方式来查看另一个模块A是否通知自己。即，当某事件发生，则监听器立刻就知道了该事件。这种模式大量的应用在GUI设计中，比如按钮的点击，状态栏上状态的改变等等。接口的设计我们需要一个对事件(event)的抽象，同样需要一个对监听器(listene...</summary><published>2009-06-21T14:06:00Z</published><updated>2009-06-21T14:06:00Z</updated><author><name>abruzzi</name><uri>http://www.cnblogs.com/abruzzi/</uri></author><link rel="alternate" href="http://www.cnblogs.com/abruzzi/archive/2009/06/21/1507942.html"/><link rel="alternate" type="text/html" href="http://www.cnblogs.com/abruzzi/archive/2009/06/21/1507942.html"/></entry><entry><id>http://www.cnblogs.com/abruzzi/archive/2009/06/06/1497449.html</id><title type="text">有限自动机与建模</title><summary type="text">前言在学校学程序设计语言的时候，能接触到的所有例子没有一个跟现实世界是有关系的。大多是关注于语言的细节层次，根本没有模型的概念，而我认为，要真正的让别人理解模型是如何建立的，最好的方法是从一个实实在在的东西开始，逐步的建立一个与物理世界可以有对应关系的模型出来。那样，在以后的实践中，可以很轻易的对未知的对象进行数学建模。OO最大的特点并非继承，多态等概念，而是与物理世界建立对应的关系！选择有限自动...</summary><published>2009-06-06T02:48:00Z</published><updated>2009-06-06T02:48:00Z</updated><author><name>abruzzi</name><uri>http://www.cnblogs.com/abruzzi/</uri></author><link rel="alternate" href="http://www.cnblogs.com/abruzzi/archive/2009/06/06/1497449.html"/><link rel="alternate" type="text/html" href="http://www.cnblogs.com/abruzzi/archive/2009/06/06/1497449.html"/></entry><entry><id>http://www.cnblogs.com/abruzzi/archive/2009/05/25/1489229.html</id><title type="text">C和指针(续)</title><summary type="text">前言上一篇《C和指针》可能对关于C和指针的有些内容没有说透，下来写了一个链表的实现，当然，也是用C的函数指针来模拟OO的结构来做的。链表结构本身比较复杂(关于指针的使用方面)，所以这个例子可能更清晰一些。之所以选List这个例子来说，是因为大家在学校里肯定接触过这个简单数据结构，从一个比较熟悉的例子入手可能比较容易理解一些。接口定义可以先看看接口的定义，与Java或者C#类似：[代码]接口中定义所...</summary><published>2009-05-25T15:41:00Z</published><updated>2009-05-25T15:41:00Z</updated><author><name>abruzzi</name><uri>http://www.cnblogs.com/abruzzi/</uri></author><link rel="alternate" href="http://www.cnblogs.com/abruzzi/archive/2009/05/25/1489229.html"/><link rel="alternate" type="text/html" href="http://www.cnblogs.com/abruzzi/archive/2009/05/25/1489229.html"/></entry><entry><id>http://www.cnblogs.com/abruzzi/archive/2009/05/21/1486678.html</id><title type="text">C和指针</title><summary type="text">前言指针是C的灵魂，正是指针使得C存在了这么多年，而且将长期存在下去。事实上，我自己不用C语言写程序已经有一年了，工作中接触到的只有java,python和javascript。最近用C完成了一下类似于OO中的封装(即"类")的概念，顺便把指针复习了下，感觉有必要记一下。本文中的例子有这样两个概念：任务(Task)，执行器(Executor)。任务有名称(taskName)，并且可以执行(exec...</summary><published>2009-05-21T15:15:00Z</published><updated>2009-05-21T15:15:00Z</updated><author><name>abruzzi</name><uri>http://www.cnblogs.com/abruzzi/</uri></author><link rel="alternate" href="http://www.cnblogs.com/abruzzi/archive/2009/05/21/1486678.html"/><link rel="alternate" type="text/html" href="http://www.cnblogs.com/abruzzi/archive/2009/05/21/1486678.html"/></entry><entry><id>http://www.cnblogs.com/abruzzi/archive/2009/04/18/1438906.html</id><title type="text">函数式编程(javascirpt)</title><summary type="text">前言Javascript，有人称其为C+LISP,C只怕是尽人皆知，但是一直活跃在人工智能领域的另一个古老而优美的语言LISP，掌握的恐怕不是很多.这个倒不是因为这个语言太难或者用途不广泛，而是大多数人在接受计算机语言启蒙的时候都走的是图灵机模式，而LISP，做为一种函数式编程语言，是另一个体系：lambda演算体系.这个体系的运算能力跟图灵机的运算能力是相当的。所以Javascript本身是一种...</summary><published>2009-04-18T14:18:00Z</published><updated>2009-04-18T14:18:00Z</updated><author><name>abruzzi</name><uri>http://www.cnblogs.com/abruzzi/</uri></author><link rel="alternate" href="http://www.cnblogs.com/abruzzi/archive/2009/04/18/1438906.html"/><link rel="alternate" type="text/html" href="http://www.cnblogs.com/abruzzi/archive/2009/04/18/1438906.html"/></entry><entry><id>http://www.cnblogs.com/abruzzi/archive/2009/04/18/1438793.html</id><title type="text">C实现的Hash表</title><summary type="text">Hash表这种数据结构在java中是原生的一个集合对象，在实际中用途极广，主要有这么几个特点：访问速度快大小不受限制按键进行索引，没有重复对象用字符串(id:string)检索对象(object)今天整理以前在学校写的一些算法，翻出来一个hash表的实现，就贴出来，自己也温习温习。先看看头文件，也就是数据结构的定义，相当于java中的接口的概念：[代码]然后是具体实现：[代码]很简单，只有两个外部...</summary><published>2009-04-18T09:28:00Z</published><updated>2009-04-18T09:28:00Z</updated><author><name>abruzzi</name><uri>http://www.cnblogs.com/abruzzi/</uri></author><link rel="alternate" href="http://www.cnblogs.com/abruzzi/archive/2009/04/18/1438793.html"/><link rel="alternate" type="text/html" href="http://www.cnblogs.com/abruzzi/archive/2009/04/18/1438793.html"/></entry><entry><id>http://www.cnblogs.com/abruzzi/archive/2009/04/18/1438707.html</id><title type="text">脚本引擎的设计与实现(javacc) [一]</title><summary type="text">打算写一个系列，比较系统的介绍一下一个脚本引擎的设计和实现过程，本来打算使用lex/yacc来举例子，但是由于最近对java语言有了新的认识，故决定使用javacc这个工具来做，这个系列中就是以javacc中的一个比较复杂的例子来进行解说的。这篇文章是本系列的第一篇，主要说几个概念的定义，有了这些定义，后边就容易理解了。对一个语言的源文件进行解析，主要是做这样几件事：词法分析语法分析语义分析当然，...</summary><published>2009-04-18T06:42:00Z</published><updated>2009-04-18T06:42:00Z</updated><author><name>abruzzi</name><uri>http://www.cnblogs.com/abruzzi/</uri></author><link rel="alternate" href="http://www.cnblogs.com/abruzzi/archive/2009/04/18/1438707.html"/><link rel="alternate" type="text/html" href="http://www.cnblogs.com/abruzzi/archive/2009/04/18/1438707.html"/></entry><entry><id>http://www.cnblogs.com/abruzzi/archive/2008/12/30/1365577.html</id><title type="text">[导入]Java 一个线程池的示例</title><summary type="text">作者: abruzzi 链接：http://abruzzi.javaeye.com/blog/266335 发表时间: 2008年11月08日 声明：本文系JavaEye网站发布的原创博客文章，未经作者书面许可，严禁任何网站转载本文，否则必将追究法律责任！用途及用法网络请求通常有两种形式：第一种，请求不是很频繁，而且每次连接后会保持相当一段时间来读数据或者写数据，最后断开，如文件下载，网络流媒体等...</summary><published>2008-12-30T13:08:00Z</published><updated>2008-12-30T13:08:00Z</updated><author><name>abruzzi</name><uri>http://www.cnblogs.com/abruzzi/</uri></author><link rel="alternate" href="http://www.cnblogs.com/abruzzi/archive/2008/12/30/1365577.html"/><link rel="alternate" type="text/html" href="http://www.cnblogs.com/abruzzi/archive/2008/12/30/1365577.html"/></entry><entry><id>http://www.cnblogs.com/abruzzi/archive/2008/12/30/1365576.html</id><title type="text">[导入]事件监听器模式(一个简单的例子)</title><summary type="text">作者: abruzzi 链接：http://abruzzi.javaeye.com/blog/266027 发表时间: 2008年11月12日 声明：本文系JavaEye网站发布的原创博客文章，未经作者书面许可，严禁任何网站转载本文，否则必将追究法律责任！事件监听器模式(一个简单的例子)在GUI程序设计中，在设计时通常不会知道用户的动作什么时候会发生，如用户可能点击某一个按钮，也可能不点击，而且点...</summary><published>2008-12-30T13:08:00Z</published><updated>2008-12-30T13:08:00Z</updated><author><name>abruzzi</name><uri>http://www.cnblogs.com/abruzzi/</uri></author><link rel="alternate" href="http://www.cnblogs.com/abruzzi/archive/2008/12/30/1365576.html"/><link rel="alternate" type="text/html" href="http://www.cnblogs.com/abruzzi/archive/2008/12/30/1365576.html"/></entry></feed>
