<?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>Himmel &#187; aop</title>
	<atom:link href="http://lazing.ave7.net/tag/aop/feed/" rel="self" type="application/rss+xml" />
	<link>http://lazing.ave7.net</link>
	<description>时间很长；现在很短；距离很长；相遇很短</description>
	<lastBuildDate>Thu, 09 Sep 2010 17:55:45 +0000</lastBuildDate>
	<language>en</language>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
	<generator>http://wordpress.org/?v=3.0.1</generator>
		<item>
		<title>Spring 2.5 AOP Schema编程小解</title>
		<link>http://lazing.ave7.net/2008/spring-25-aop-schema-urinate-programming/</link>
		<comments>http://lazing.ave7.net/2008/spring-25-aop-schema-urinate-programming/#comments</comments>
		<pubDate>Fri, 22 Feb 2008 06:41:07 +0000</pubDate>
		<dc:creator>某L</dc:creator>
				<category><![CDATA[Tech Forge]]></category>
		<category><![CDATA[aop]]></category>
		<category><![CDATA[Java]]></category>
		<category><![CDATA[Spring]]></category>
		<category><![CDATA[xml]]></category>

		<guid isPermaLink="false">http://lazing.ave7.net/blog/?p=241</guid>
		<description><![CDATA[Parse error: syntax error, unexpected T_STRING in /opt/htdocs/blogs/lazing/wp-content/plugins/exec-php/includes/runtime.php(42) : eval()&#8217;d code on line 1 Maven need to act as Wikipedia Java Scripting in JDK6 JRuby Note: 简单就是美 使用XFire与Spring开发Web Services 从Twitter等看企业软件架构（一）]]></description>
			<content:encoded><![CDATA[<p>
<b>Parse error</b>:  syntax error, unexpected T_STRING in <b>/opt/htdocs/blogs/lazing/wp-content/plugins/exec-php/includes/runtime.php(42) : eval()&#8217;d code</b> on line <b>1</b></p>
<ul>
<li><a href="http://lazing.ave7.net/2007/swap-away/" rel="bookmark" title="2007/03/20">Swap Away</a></li>
<li><a href="http://lazing.ave7.net/2009/twitter-to-see-from-the-enterprise-software-architecture-such-as-a/" rel="bookmark" title="2009/06/28">从Twitter等看企业软件架构（一）</a></li>
<li><a href="http://lazing.ave7.net/2008/java-generating-word-documents-using-xml/" rel="bookmark" title="2008/03/01">Java：利用XML生成Word文档</a></li>
<li><a href="http://lazing.ave7.net/2008/talk-about-easymock/" rel="bookmark" title="2008/02/10">说一下EasyMock</a></li>
<li><a href="http://lazing.ave7.net/2007/dynamic-language-and-dsl/" rel="bookmark" title="2007/11/29">Dynamic Language and DSL</a></li>
</ul>
<p><!-- Random Posts took 12.893 ms --></p>
]]></content:encoded>
			<wfw:commentRss>http://lazing.ave7.net/2008/spring-25-aop-schema-urinate-programming/feed/</wfw:commentRss>
		<slash:comments>1</slash:comments>
		</item>
		<item>
		<title>Dynamic Language and DSL</title>
		<link>http://lazing.ave7.net/2007/dynamic-language-and-dsl/</link>
		<comments>http://lazing.ave7.net/2007/dynamic-language-and-dsl/#comments</comments>
		<pubDate>Thu, 29 Nov 2007 12:54:40 +0000</pubDate>
		<dc:creator>某L</dc:creator>
				<category><![CDATA[Tech Forge]]></category>
		<category><![CDATA[aop]]></category>
		<category><![CDATA[dsl]]></category>
		<category><![CDATA[Java]]></category>
		<category><![CDATA[ruby]]></category>
		<category><![CDATA[xml]]></category>
		<category><![CDATA[xsl]]></category>

		<guid isPermaLink="false">http://lazing.ave7.net/blog/?p=199</guid>
		<description><![CDATA[这是一篇技术评论，呃，请自行掠过 早上拜读了Martin Fowler老人家的BLOG Groovy or Ruby ，兴致勃勃的看这个时尚的家伙对动态语言的高谈阔论。下午就在InfoQ看到了对其新书的点评——Martin Fowler unveils details of his upcoming DSL book. 两样东西放到一起很有意思。动态语言与领域语言(Domain-Specific Language)。 MF的书中是这样介绍的。 如果我们把XSLT看成是专门格式化XML的语言，那么XSLT就是XML的DSL。 那么DSL有什么用呢？ 根据MF的论述 Domain-Specific Language DSL与通用语言相区别，是为特定目的而生的语言，它并不是什么新东西，历史几乎和计算机的历史一样长。 比如Windows的批处理文件，再比如HTML（某种意义上）。处理它们的程序和普通的应用程序不一样，这些程序并不知道这些语言具体描述了什么，却知道他们到最后大概是什么样子。但我们也不能把这些应用程序归结为系统程序，毕竟，你不能用这些动态语言写成任何一个通常意义上的程序。这些语言轻巧灵活，惹人喜爱，却长期处于没人在乎的地位。几乎没有任何一个大学开设JavaScript或者BAT的课程。然而，用它们开发的程序铺天盖地，甚至有些开发者都没有意识到他们在写程序。 我们到底有多少DSL，没有人说的清楚，甚至怎么界定都没有标准。然而这种工具的确越来越受重视。大型的软件通常都有自己的工具语言，比如SAP，比如PepleSoft，比如MathLib，比如SAS，掌握这些工具通常意味着熟练应用这些语言与相关的领域知识。而由于他们之间毫无联系，同种软件之间有着高昂的替换成本。变相垄断使得DSL由最初的简化用户操作变成了对抗新来者的武器。 标准化是由混乱走向秩序的利器。工业化也是软件行业一直追求的目标。让我们看看工业界是怎么做的，他们拥有流水线，有很好的设计，生产，销售流程。我们常常抱怨软件的变化，生产没有变化吗？现在工业可以高效的适应变化，依靠的就是对领域的深切理解，对规则的灵活掌握。 对标准的无尽追寻是业界走向成熟的重要标志。不妨设想，今后的某天，所有的财务软件都有统一的口径标准，统一的数据格式处理流程。集团化，高质量的软件生产和部署使我们更加有序的获取所需的功能。然而这一切，依靠的就是对DSL领域的入侵。Ruby的流行正式反映了这种入侵，当其追逐者不断的在各种平台上实现这门语言的时候，我们也看到了传统语言正积极的调整。Java向.net学习多语言支持。.net努力的靠近开源社区的标准。 我们说GOP，说AOP，无非就是想把领域问题(Domain Problem)从应用问题里面解离，我们需要成熟的软件产品，需要的是真正模块化的组件，而不是某个既成事实。被巨头们忽悠着团团转的我们，也只能等到他们被迫合作的时候，才能轻松一点。 Maven need to act as Wikipedia 教学贴：如何编写Maven2插件 新七街开发进度小结 080913 JUnit单元测试与集成测试指引 笔记：DSL之一 简介]]></description>
			<content:encoded><![CDATA[<blockquote><p>这是一篇技术评论，呃，请自行掠过</p></blockquote>
<p>早上拜读了Martin Fowler老人家的BLOG <a href="http://martinfowler.com/bliki/GroovyOrJRuby.html" class="broken_link">Groovy or Ruby</a> ，兴致勃勃的看这个时尚的家伙对动态语言的高谈阔论。下午就在InfoQ看到了对其新书的点评——<a href="http://www.infoq.com/news/2007/11/martin-fowler-dsl-book">Martin Fowler unveils details of his upcoming DSL book</a>. 两样东西放到一起很有意思。动态语言与领域语言(Domain-Specific Language)。</p>
<p>MF的书中是这样介绍的。</p>
<blockquote><p>如果我们把XSLT看成是专门格式化XML的语言，那么XSLT就是XML的DSL。</p></blockquote>
<p>那么DSL有什么用呢？</p>
<p>根据MF的论述 <a href="http://martinfowler.com/bliki/DomainSpecificLanguage.html">Domain-Specific Language</a></p>
<blockquote><p>DSL与通用语言相区别，是为特定目的而生的语言，它并不是什么新东西，历史几乎和计算机的历史一样长。</p></blockquote>
<p>比如Windows的批处理文件，再比如HTML（某种意义上）。处理它们的程序和普通的应用程序不一样，这些程序并不知道这些语言具体描述了什么，却知道他们到最后大概是什么样子。但我们也不能把这些应用程序归结为系统程序，毕竟，你不能用这些动态语言写成任何一个通常意义上的程序。这些语言轻巧灵活，惹人喜爱，却长期处于没人在乎的地位。几乎没有任何一个大学开设JavaScript或者BAT的课程。然而，用它们开发的程序铺天盖地，甚至有些开发者都没有意识到他们在写程序。</p>
<p>我们到底有多少DSL，没有人说的清楚，甚至怎么界定都没有标准。然而这种工具的确越来越受重视。大型的软件通常都有自己的工具语言，比如SAP，比如PepleSoft，比如MathLib，比如SAS，掌握这些工具通常意味着熟练应用这些语言与相关的领域知识。而由于他们之间毫无联系，同种软件之间有着高昂的替换成本。变相垄断使得DSL由最初的简化用户操作变成了对抗新来者的武器。</p>
<p>标准化是由混乱走向秩序的利器。工业化也是软件行业一直追求的目标。让我们看看工业界是怎么做的，他们拥有流水线，有很好的设计，生产，销售流程。我们常常抱怨软件的变化，生产没有变化吗？现在工业可以高效的适应变化，依靠的就是对领域的深切理解，对规则的灵活掌握。</p>
<p>对标准的无尽追寻是业界走向成熟的重要标志。不妨设想，今后的某天，所有的财务软件都有统一的口径标准，统一的数据格式处理流程。集团化，高质量的软件生产和部署使我们更加有序的获取所需的功能。然而这一切，依靠的就是对DSL领域的入侵。Ruby的流行正式反映了这种入侵，当其追逐者不断的在各种平台上实现这门语言的时候，我们也看到了传统语言正积极的调整。Java向.net学习多语言支持。.net努力的靠近开源社区的标准。</p>
<p>我们说GOP，说AOP，无非就是想把领域问题(Domain Problem)从应用问题里面解离，我们需要成熟的软件产品，需要的是真正模块化的组件，而不是某个既成事实。被巨头们忽悠着团团转的我们，也只能等到他们被迫合作的时候，才能轻松一点。
<ul>
<li><a href="http://lazing.ave7.net/2008/maven-need-to-act-as-wikipedia/" rel="bookmark" title="2008/05/23">Maven need to act as Wikipedia</a></li>
<li><a href="http://lazing.ave7.net/2009/teaching-paste-how-to-write-plug-ins-maven2/" rel="bookmark" title="2009/05/26">教学贴：如何编写Maven2插件</a></li>
<li><a href="http://lazing.ave7.net/2009/notes-dsl-bis-use-dsl/" rel="bookmark" title="2009/06/23">笔记：DSL之二 使用DSL</a></li>
<li><a href="http://lazing.ave7.net/2007/xfire-and-spring-development-of-the-use-of-web-services/" rel="bookmark" title="2007/12/29">使用XFire与Spring开发Web Services</a></li>
<li><a href="http://lazing.ave7.net/2008/spring-25-aop-schema-urinate-programming/" rel="bookmark" title="2008/02/22">Spring 2.5 AOP Schema编程小解</a></li>
</ul>
<p><!-- Random Posts took 11.864 ms --></p>
]]></content:encoded>
			<wfw:commentRss>http://lazing.ave7.net/2007/dynamic-language-and-dsl/feed/</wfw:commentRss>
		<slash:comments>4</slash:comments>
		</item>
	</channel>
</rss>
