<?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>王辉的博客</title>
	<atom:link href="http://www.hui-wang.info/feed/" rel="self" type="application/rss+xml" />
	<link>http://www.hui-wang.info</link>
	<description>少则得，多则惑</description>
	<lastBuildDate>Sun, 08 Jan 2012 18:29:42 +0000</lastBuildDate>
	<language>en</language>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
	<generator>http://wordpress.org/?v=3.3.1</generator>
		<item>
		<title>平常工作都干啥</title>
		<link>http://www.hui-wang.info/2012/01/08/%e5%b9%b3%e5%b8%b8%e5%b7%a5%e4%bd%9c%e9%83%bd%e5%b9%b2%e5%95%a5/</link>
		<comments>http://www.hui-wang.info/2012/01/08/%e5%b9%b3%e5%b8%b8%e5%b7%a5%e4%bd%9c%e9%83%bd%e5%b9%b2%e5%95%a5/#comments</comments>
		<pubDate>Sun, 08 Jan 2012 15:35:53 +0000</pubDate>
		<dc:creator>王辉</dc:creator>
				<category><![CDATA[其它]]></category>
		<category><![CDATA[工作]]></category>
		<category><![CDATA[法国]]></category>
		<category><![CDATA[通俗]]></category>

		<guid isPermaLink="false">http://www.hui-wang.info/?p=2689</guid>
		<description><![CDATA[“你在法国做什么？”，亲朋好友，每每会这样问起。我的回答总是很简练，我是搞计算机的。说实在的，这说了给没说一样，搞计算机，那面大了去了。其实，我也不是故意这样的，毕竟隔行如隔山，你描述的有头有尾的，别人未必感兴趣呀。今儿个，写写平常工作都干啥，希望给有意的朋友，做个更加细致的解释。 我是一个程序员，富丽堂皇的说，叫软件工程师，通俗易懂的讲，是编程的。至于编什么程，在正常发工资的情况下，老板说了算。 老板是卖金融软件的。这个软件有点大，能做不少事。其中有一个，是让电脑屏幕上能实时的显示，金融市场上的数据，比如美元对欧元的汇率，股票的价格等等。如何把这些数据搬到屏幕上，并且让他们一闪一闪的实时刷新，就是我所在的小分队的主要任务。 经过前辈们的努力，这个功能是实现了，但随着时代的发展，客户的要求越来越高，他们嫌数据更新的有点慢。所以现在又有新的任务了，要把数据运的再快点。这个时候，刚刚毕业的我，被招进来了。 要想富，少生孩子多种树。这句话告诉我们，只生孩子不种树，是会阻碍经济快速发展的。软件数据运的太慢，与孩子和树是没关系的，找到它的瓶颈所在，便是我平常工作中所面临的问题。怎么听起来，有点像搞计划生育的？]]></description>
			<content:encoded><![CDATA[<p>“你在法国做什么？”，亲朋好友，每每会这样问起。我的回答总是很简练，我是搞计算机的。说实在的，这说了给没说一样，搞计算机，那面大了去了。其实，我也不是故意这样的，毕竟隔行如隔山，你描述的有头有尾的，别人未必感兴趣呀。今儿个，写写平常工作都干啥，希望给有意的朋友，做个更加细致的解释。</p>
<p>我是一个程序员，富丽堂皇的说，叫软件工程师，通俗易懂的讲，是编程的。至于编什么程，在正常发工资的情况下，老板说了算。<span id="more-2689"></span></p>
<p>老板是卖金融软件的。这个软件有点大，能做不少事。其中有一个，是让电脑屏幕上能实时的显示，金融市场上的数据，比如美元对欧元的汇率，股票的价格等等。如何把这些数据搬到屏幕上，并且让他们一闪一闪的实时刷新，就是我所在的小分队的主要任务。</p>
<p>经过前辈们的努力，这个功能是实现了，但随着时代的发展，客户的要求越来越高，他们嫌数据更新的有点慢。所以现在又有新的任务了，要把数据运的再快点。这个时候，刚刚毕业的我，被招进来了。</p>
<p>要想富，少生孩子多种树。这句话告诉我们，只生孩子不种树，是会阻碍经济快速发展的。软件数据运的太慢，与孩子和树是没关系的，找到它的瓶颈所在，便是我平常工作中所面临的问题。怎么听起来，有点像搞计划生育的？</p>
]]></content:encoded>
			<wfw:commentRss>http://www.hui-wang.info/2012/01/08/%e5%b9%b3%e5%b8%b8%e5%b7%a5%e4%bd%9c%e9%83%bd%e5%b9%b2%e5%95%a5/feed/</wfw:commentRss>
		<slash:comments>11</slash:comments>
		</item>
		<item>
		<title>Java的枚举和接口</title>
		<link>http://www.hui-wang.info/2012/01/08/java-enum-and-polymorphism/</link>
		<comments>http://www.hui-wang.info/2012/01/08/java-enum-and-polymorphism/#comments</comments>
		<pubDate>Sun, 08 Jan 2012 14:01:37 +0000</pubDate>
		<dc:creator>王辉</dc:creator>
				<category><![CDATA[其它]]></category>
		<category><![CDATA[java]]></category>
		<category><![CDATA[多态]]></category>
		<category><![CDATA[枚举]]></category>
		<category><![CDATA[设计]]></category>

		<guid isPermaLink="false">http://www.hui-wang.info/?p=2675</guid>
		<description><![CDATA[Java中的枚举，不仅可以用来列举常量，而且可以实现接口。这第二点很重要，它使得枚举类型具备了多态的特性。但它又有一定的缺陷，特别是遇到枚不胜举的时候。 对于每一个新加入的枚举元素，他都必须实现接口中的所有方法。即便是在一个不大的接口的情形下，当元素数量增加到一定程度的时候，源文件就会变得相当巨大。虽然所有枚举元素，都是在实现同一类方法，但毕竟细节不同，所以把他们列在一起，影响阅读的欢乐性。除此之外，每次增加新的枚举元素，都要对此枚举文件进行修改，不符合开闭原则。 为了克服这个缺陷，我们可以尝试着，把不同的枚举元素放到不同的文件中，单独成型，并对接口进行实现。如此以来，新加的元素，就写在新的文件里，小而清晰，各自独立。 可这样的作法，有得必有失，那就是失去了，枚举类型中能获取所有类型那个静态函数，values()。 其实补救的方法还是有的，那就是创建一个新类，在里面手动添加新加入的元素，然后通过它进行索引。开闭原则遵守的再好，还是一定要找个切入口的，但口越小越好。 示例在此。看你能不能发现那个小口。]]></description>
			<content:encoded><![CDATA[<p>Java中的枚举，不仅可以用来列举常量，而且可以实现接口。这第二点很重要，它使得枚举类型具备了多态的特性。但它又有一定的缺陷，特别是遇到枚不胜举的时候。</p>
<p>对于每一个新加入的枚举元素，他都必须实现接口中的所有方法。即便是在一个不大的接口的情形下，当元素数量增加到一定程度的时候，源文件就会变得相当巨大。虽然所有枚举元素，都是在实现同一类方法，但毕竟细节不同，所以把他们列在一起，影响阅读的欢乐性。除此之外，每次增加新的枚举元素，都要对此枚举文件进行修改，不符合开闭原则。<span id="more-2675"></span></p>
<p>为了克服这个缺陷，我们可以尝试着，把不同的枚举元素放到不同的文件中，单独成型，并对接口进行实现。如此以来，新加的元素，就写在新的文件里，小而清晰，各自独立。</p>
<p>可这样的作法，有得必有失，那就是失去了，枚举类型中能获取所有类型那个静态函数，values()。</p>
<p>其实补救的方法还是有的，那就是创建一个新类，在里面手动添加新加入的元素，然后通过它进行索引。开闭原则遵守的再好，还是一定要找个切入口的，但口越小越好。</p>
<p>示例<a href="https://gist.github.com/1578420" target="_blank">在此</a>。看你能不能发现那个小口。</p>
]]></content:encoded>
			<wfw:commentRss>http://www.hui-wang.info/2012/01/08/java-enum-and-polymorphism/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>之后的平静</title>
		<link>http://www.hui-wang.info/2011/12/24/zhi-hou-de-ping-jing/</link>
		<comments>http://www.hui-wang.info/2011/12/24/zhi-hou-de-ping-jing/#comments</comments>
		<pubDate>Sat, 24 Dec 2011 22:27:22 +0000</pubDate>
		<dc:creator>王辉</dc:creator>
				<category><![CDATA[其它]]></category>
		<category><![CDATA[学习]]></category>
		<category><![CDATA[平静]]></category>
		<category><![CDATA[生活]]></category>

		<guid isPermaLink="false">http://www.hui-wang.info/?p=2671</guid>
		<description><![CDATA[工作恢复正常三周了，生活渐渐找到了往日的平静。 在漫长的等待阶段，心想着等到工作失而复得的那一刻，一定要大肆的庆祝一下。但是好消息，是如小溪流水，而非以决堤之势，一点一点到来的。被分过流的喜悦，也没能激起过多的波澜。 自从释然之后，生活态度便平和了些许，不再因生活中的失意与得意，而大悲大喜。除此之外，当没有工作，从快节奏的生活漩涡中逃离出来，剩下的只是时间的时候，我便禁不住思考，生活的意义。反倒是，无所事事的这一段时间，让我感觉特别的充实，因为我的目标更加清晰了，我的意志更加坚定了。 之后的平静，特别是得意之后的平静，是为了迎接下一个可能会到来的巨浪。我相信越是静的住气，越是脚踏实地，步步为营，在下一阵暴风雨来临的时候，才能够应对的更加从容。 正式合同签订了，并不意味着一切都安全了。合同上的承诺，只是一席白纸黑字，它很有可能因为时局的变化而变得分文不值。最值得依赖的承诺，归根结底，还是自身的强大。学生生涯，的确是，明明白白的结束了，但我仍要保持一颗不老的学习之心。书还是要读，并且还得要挤时间读，不仅是为了建立强大的自身，更是为了发现生活中更多的美丽与真谛。 平静的走下去吧，因为要轰轰烈烈。]]></description>
			<content:encoded><![CDATA[<p>工作恢复正常三周了，生活渐渐找到了往日的平静。</p>
<p>在漫长的等待阶段，心想着等到工作失而复得的那一刻，一定要大肆的庆祝一下。但是好消息，是如小溪流水，而非以决堤之势，一点一点到来的。被分过流的喜悦，也没能激起过多的波澜。</p>
<p>自从释然之后，生活态度便平和了些许，不再因生活中的失意与得意，而大悲大喜。除此之外，当没有工作，从快节奏的生活漩涡中逃离出来，剩下的只是时间的时候，我便禁不住思考，生活的意义。反倒是，无所事事的这一段时间，让我感觉特别的充实，因为我的目标更加清晰了，我的意志更加坚定了。<span id="more-2671"></span></p>
<p>之后的平静，特别是得意之后的平静，是为了迎接下一个可能会到来的巨浪。我相信越是静的住气，越是脚踏实地，步步为营，在下一阵暴风雨来临的时候，才能够应对的更加从容。</p>
<p>正式合同签订了，并不意味着一切都安全了。合同上的承诺，只是一席白纸黑字，它很有可能因为时局的变化而变得分文不值。最值得依赖的承诺，归根结底，还是自身的强大。学生生涯，的确是，明明白白的结束了，但我仍要保持一颗不老的学习之心。书还是要读，并且还得要挤时间读，不仅是为了建立强大的自身，更是为了发现生活中更多的美丽与真谛。</p>
<p>平静的走下去吧，因为要轰轰烈烈。</p>
]]></content:encoded>
			<wfw:commentRss>http://www.hui-wang.info/2011/12/24/zhi-hou-de-ping-jing/feed/</wfw:commentRss>
		<slash:comments>4</slash:comments>
		</item>
		<item>
		<title>最朴实的金钱观</title>
		<link>http://www.hui-wang.info/2011/11/20/the-most-natural-money-attitude/</link>
		<comments>http://www.hui-wang.info/2011/11/20/the-most-natural-money-attitude/#comments</comments>
		<pubDate>Sun, 20 Nov 2011 11:39:53 +0000</pubDate>
		<dc:creator>王辉</dc:creator>
				<category><![CDATA[其它]]></category>
		<category><![CDATA[人生]]></category>
		<category><![CDATA[国外]]></category>
		<category><![CDATA[家庭]]></category>
		<category><![CDATA[幸福]]></category>
		<category><![CDATA[法国]]></category>
		<category><![CDATA[移民]]></category>
		<category><![CDATA[金钱]]></category>

		<guid isPermaLink="false">http://www.hui-wang.info/?p=2617</guid>
		<description><![CDATA[对一个想在法国工作的外国人，她什么地方最具有吸引力？对这个问题的回答绝对是因人而异。有搞技术的，有搞艺术的，有做生意的，有搞移民的，有追求浪漫的，还有想在法国赚钱拿到本国去花的，等等。对不同人来说，他们各自的目的，便代表了法国的吸引力。对我而言，至少按我目前的思想成熟度来说，在法国工作的目的，很简单，主要是赚欧元。 如果说法国政府5月31号颁布的关于限制外国学生在法工作的条例，致使我的这一目的，成为镜中花，水中月，那么法国对我的这点吸引力，也将变成我的一份遗憾。因此，等待便成为了一种煎熬。 可是我知道我狭隘了，妈妈对我说，“咱赚的多可以多花点，赚的少可以少花点，至少你身在国内，我们想见个面也容易点”。我觉得这是最朴实的金钱观。脱口而出的一句话，很简单的道理，体现的却是一种豁达，一缕悠然，一份恬静。它是对赚的少这一现实的一种接受，深知我们不会因为这种接受而失去生活中的欢笑与快乐。 其实这是一种转移，把我对金钱的注意力，转移到对家庭朋友的关怀，对真实生活的追求上去。我不否认，一个人可以同时把注意力集中到这两个方面，既可以多花，又可以有一个安静美好的生活。但人们却往往因为过度重视其中一方面，而忽视了另外一面，并且大多数情况下，会把赚的多少当作借口来解释为什么和家人与朋友离的远了，团聚的少了。 如此一想，我释然了。]]></description>
			<content:encoded><![CDATA[<p>对一个想在法国工作的外国人，她什么地方最具有吸引力？对这个问题的回答绝对是因人而异。有搞技术的，有搞艺术的，有做生意的，有搞移民的，有追求浪漫的，还有想在法国赚钱拿到本国去花的，等等。对不同人来说，他们各自的目的，便代表了法国的吸引力。对我而言，至少按我目前的思想成熟度来说，在法国工作的目的，很简单，主要是赚欧元。</p>
<p>如果说法国政府5月31号颁布的关于限制外国学生在法工作的条例，致使我的这一目的，成为镜中花，水中月，那么法国对我的这点吸引力，也将变成我的一份遗憾。因此，等待便成为了一种煎熬。<span id="more-2617"></span></p>
<p>可是我知道我狭隘了，妈妈对我说，“咱赚的多可以多花点，赚的少可以少花点，至少你身在国内，我们想见个面也容易点”。我觉得这是最朴实的金钱观。脱口而出的一句话，很简单的道理，体现的却是一种豁达，一缕悠然，一份恬静。它是对赚的少这一现实的一种接受，深知我们不会因为这种接受而失去生活中的欢笑与快乐。</p>
<p>其实这是一种转移，把我对金钱的注意力，转移到对家庭朋友的关怀，对真实生活的追求上去。我不否认，一个人可以同时把注意力集中到这两个方面，既可以多花，又可以有一个安静美好的生活。但人们却往往因为过度重视其中一方面，而忽视了另外一面，并且大多数情况下，会把赚的多少当作借口来解释为什么和家人与朋友离的远了，团聚的少了。</p>
<p>如此一想，我释然了。</p>
]]></content:encoded>
			<wfw:commentRss>http://www.hui-wang.info/2011/11/20/the-most-natural-money-attitude/feed/</wfw:commentRss>
		<slash:comments>3</slash:comments>
		</item>
		<item>
		<title>Martin Fowler</title>
		<link>http://www.hui-wang.info/2011/11/15/martin-fowler/</link>
		<comments>http://www.hui-wang.info/2011/11/15/martin-fowler/#comments</comments>
		<pubDate>Tue, 15 Nov 2011 16:13:35 +0000</pubDate>
		<dc:creator>王辉</dc:creator>
				<category><![CDATA[信息技术]]></category>
		<category><![CDATA[IT]]></category>
		<category><![CDATA[人物]]></category>
		<category><![CDATA[写作]]></category>
		<category><![CDATA[职业]]></category>
		<category><![CDATA[顾问]]></category>

		<guid isPermaLink="false">http://www.hui-wang.info/?p=2554</guid>
		<description><![CDATA[Martin Fowler说：“我是一个作家，一个演说家，实质上，我是一个在软件开发领域，爱说敢言的专业评论家。80年代中期，我接触到了新兴的面向对象式的软件开发，从那以后，我就一直工作于软件行业。90年代的大部分时间，我扮演的是顾问和讲师的角色，以企业应用为中心，帮助人们构建基于面向对象的软件系统。2000年，我加入了ThoughtWorks。 我的主要兴趣就是研究如何设计软件，使得它能最大限度的提高开发团队的工作效率。 为此，我学习了优秀的软件设计模式以及有利于软件设计的流程。 后来，我成为了一个敏捷开发的忠实粉丝，专注于行业前沿的软件设计方法。” 之所以对这段自我介绍感兴趣，是因为它启发了我对于一个软件从业人员在职业规划方面的思考。简单的一段话中，出现了不少描写职业的关键词：作家，演说家，评论家，顾问，讲师。这其中，我想重点分析的是作家和顾问。 写作，有很多益处。首先，写作的过程，是一个思考和学习的过程，是对一个人的知识进行梳理和升华的过程。Martin写bliki（博客和维基的结合）就是一个例子，他把他学习的东西给写出来，并且经过不断的更新，知识会越写越清晰，掌握的也是越来越牢固。写书的话，就更需要，对知识有一个从整体到细节，从横向到纵向的把握。其次，写作也是一个和别人分享交流的过程。就像一种新生产的产品，要把它放在市场上，通过用户的反馈来提升产品的品质一样，把自己的知识分享出来，和他人进行切磋交流，是一个进行自我完善和自我提升的捷径。最后，写作，还能给作者带来经济上的帮助，特别是一本好书，它很有可能，能帮助作者一辈子不用为温饱而忧愁。 但写出一个好书来，并不是一天两天的功夫就能使然的。平日里，不仅要多思考，多总结，对自己的专业有深入的研究，更需要多进行写作方面的实战演习，我觉得写博客便是一种很有效的锻炼方法，日积月累，写书并不是一件不可为之事。 顾问，就是给不同的公司和个人，提供建议和帮助，而获得相应酬金的一种职业。相比于单纯的供事于一家公司，这种职业存在相对的不稳定性，但它的优势也恰恰来自于这种不稳定性，就是可以接触到不同的项目，使得个人的能力得到最大限度的提升。相对创业来说，顾问所承担的分险也较之小很多，毕竟自己的专业能力是本钱，亏也亏不了。毋庸置疑，这是一个很具有挑战性的职业，除了要在自己的相关技术领域占有一席之地之外，他还要求一个人有优秀的沟通能力，表达能力，和广阔的社会关系网络。 通过对Martin的了解，我受到了不少启发，一是觉得，做自己喜欢做的事情，并执着的做下去，一定能取得一定的成就。另外就是要有一个开放的视野，多结交朋友，多交流，多进行思维的碰撞。每当迷茫的时候，我就会以这些大牛们做为参考和激励，继续前行。 这里放上他的网站，http://martinfowler.com/，从中你会找到很多有深度的文章，和他对自己著作及工作的一些介绍。其中我最喜欢的几篇文章有： New Methodology Dependency Injection Mocks aren’t Stubs Gui Architecutres]]></description>
			<content:encoded><![CDATA[<p>Martin Fowler说：“我是一个作家，一个演说家，实质上，我是一个在软件开发领域，爱说敢言的专业评论家。80年代中期，我接触到了新兴的面向对象式的软件开发，从那以后，我就一直工作于软件行业。90年代的大部分时间，我扮演的是顾问和讲师的角色，以企业应用为中心，帮助人们构建基于面向对象的软件系统。2000年，我加入了ThoughtWorks。 我的主要兴趣就是研究如何设计软件，使得它能最大限度的提高开发团队的工作效率。 为此，我学习了优秀的软件设计模式以及有利于软件设计的流程。 后来，我成为了一个敏捷开发的忠实粉丝，专注于行业前沿的软件设计方法。”</p>
<p>之所以对这段自我介绍感兴趣，是因为它启发了我对于一个软件从业人员在职业规划方面的思考。简单的一段话中，出现了不少描写职业的关键词：作家，演说家，评论家，顾问，讲师。这其中，我想重点分析的是作家和顾问。<span id="more-2554"></span></p>
<p>写作，有很多益处。首先，写作的过程，是一个思考和学习的过程，是对一个人的知识进行梳理和升华的过程。Martin写bliki（博客和维基的结合）就是一个例子，他把他学习的东西给写出来，并且经过不断的更新，知识会越写越清晰，掌握的也是越来越牢固。写书的话，就更需要，对知识有一个从整体到细节，从横向到纵向的把握。其次，写作也是一个和别人分享交流的过程。就像一种新生产的产品，要把它放在市场上，通过用户的反馈来提升产品的品质一样，把自己的知识分享出来，和他人进行切磋交流，是一个进行自我完善和自我提升的捷径。最后，写作，还能给作者带来经济上的帮助，特别是一本好书，它很有可能，能帮助作者一辈子不用为温饱而忧愁。</p>
<p>但写出一个好书来，并不是一天两天的功夫就能使然的。平日里，不仅要多思考，多总结，对自己的专业有深入的研究，更需要多进行写作方面的实战演习，我觉得写博客便是一种很有效的锻炼方法，日积月累，写书并不是一件不可为之事。</p>
<p>顾问，就是给不同的公司和个人，提供建议和帮助，而获得相应酬金的一种职业。相比于单纯的供事于一家公司，这种职业存在相对的不稳定性，但它的优势也恰恰来自于这种不稳定性，就是可以接触到不同的项目，使得个人的能力得到最大限度的提升。相对创业来说，顾问所承担的分险也较之小很多，毕竟自己的专业能力是本钱，亏也亏不了。毋庸置疑，这是一个很具有挑战性的职业，除了要在自己的相关技术领域占有一席之地之外，他还要求一个人有优秀的沟通能力，表达能力，和广阔的社会关系网络。</p>
<p>通过对Martin的了解，我受到了不少启发，一是觉得，做自己喜欢做的事情，并执着的做下去，一定能取得一定的成就。另外就是要有一个开放的视野，多结交朋友，多交流，多进行思维的碰撞。每当迷茫的时候，我就会以这些大牛们做为参考和激励，继续前行。</p>
<p>这里放上他的网站，http://martinfowler.com/，从中你会找到很多有深度的文章，和他对自己著作及工作的一些介绍。其中我最喜欢的几篇文章有：</p>
<ul>
<li><a href="http://martinfowler.com/articles/newMethodology.html">New Methodology</a></li>
<li><a href="http://martinfowler.com/articles/injection.html">Dependency Injection</a></li>
<li><a href="http://martinfowler.com/articles/mocksArentStubs.html">Mocks aren’t Stubs</a></li>
<li><a href="http://martinfowler.com/eaaDev/uiArchs.html" target="_blank">Gui Architecutres</a></li>
</ul>
]]></content:encoded>
			<wfw:commentRss>http://www.hui-wang.info/2011/11/15/martin-fowler/feed/</wfw:commentRss>
		<slash:comments>1</slash:comments>
		</item>
	</channel>
</rss>

