<?xml version="1.0" encoding="UTF-8"?>
<rss version="2.0"
	xmlns:content="http://purl.org/rss/1.0/modules/content/"
	xmlns:wfw="http://wellformedweb.org/CommentAPI/"
	xmlns:dc="http://purl.org/dc/elements/1.1/"
	xmlns:atom="http://www.w3.org/2005/Atom"
	xmlns:sy="http://purl.org/rss/1.0/modules/syndication/"
	xmlns:slash="http://purl.org/rss/1.0/modules/slash/"
	>

<channel>
	<title>Erlang-China &#187; event_based</title>
	<atom:link href="http://erlang-china.org/tag/event_based/feed" rel="self" type="application/rss+xml" />
	<link>http://erlang-china.org</link>
	<description>erlang 中文社区</description>
	<lastBuildDate>Tue, 13 Jul 2010 02:53:29 +0000</lastBuildDate>
	<language>en</language>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
	<generator>http://wordpress.org/?v=3.0</generator>
		<item>
		<title>推荐阅读《Event-based programming: taking events to the limit》</title>
		<link>http://erlang-china.org/misc/book-event_based_programming.html</link>
		<comments>http://erlang-china.org/misc/book-event_based_programming.html#comments</comments>
		<pubDate>Wed, 01 Jul 2009 05:17:02 +0000</pubDate>
		<dc:creator>jackyz</dc:creator>
				<category><![CDATA[misc]]></category>
		<category><![CDATA[Book]]></category>
		<category><![CDATA[event_based]]></category>

		<guid isPermaLink="false">http://erlang-china.org/?p=555</guid>
		<description><![CDATA[软件开发的奥义就是：分而治之。 代码世界从来都是一个充斥着耦合的世界，在这个世界里有着各种各样的耦合：静态耦合，动态耦合，类型耦合，逻辑耦合，空间耦合，时间耦合……。可以说，通常而言，一个良好的软件开发，最重要的一个步骤就是使用各种各样的工具来解耦目标系统，使其变成更小，更简单，更易于理解，更便于测试，更……的逻辑单元。完成这一阶段之后，剩下来的，差不多就都是体力活了。 然而，需要强调的一点是，我们要追求的绝对不是一个没有耦合的系统(我很怀疑，可能存在这样的系统么？)。实际上，一些耦合正是业务逻辑的表达，无法去除。我的意思是，或许我们致力于去除的，只是一部分“实现层面的耦合”。话说到这个分上，已经有点 “as simple as possible but not simpler” 的味道，赶紧打住了。 为了解耦系统，我们发展出了种种工具：接口、代理、设计模式……。在所有这些解耦工具之中，最为强悍的恐怕就是消息系统，它的解耦效果，不仅仅体现在概念维度上(接口的使用者和实现者)，而且也体现在空间维度上(分布式消息)时间维度上(异步消息)。关于这一点，我这里推荐的这本书，讲得比较清楚。 我们很幸运 Apress 在 2006 年推出的《Event-based programming: taking events to the limit》现在已经可以在 Google Book 上全文读到。而相应的豆瓣页面也正等着大家去丰富。 这里需要强调的一点是：解耦从来都是有代价的，更为彻底的解耦通常就意味着更难把握。对于广大 Erlangor 来说，这本书中的代码和实例，可能不是那么有参考价值，但我们使用的语言正是完全建立在“基于消息编程的架构”之上的，多读一点参考资料，至少是第一章，当然也是很有必要的。 感谢 Jeffry Zhao 在 Twitter 上的投递。]]></description>
		<wfw:commentRss>http://erlang-china.org/misc/book-event_based_programming.html/feed</wfw:commentRss>
		<slash:comments>3</slash:comments>
		</item>
	</channel>
</rss>
