﻿<?xml version="1.0" encoding="utf-8" standalone="yes"?><rss version="2.0" xmlns:dc="http://purl.org/dc/elements/1.1/" xmlns:trackback="http://madskills.com/public/xml/rss/module/trackback/" xmlns:wfw="http://wellformedweb.org/CommentAPI/" xmlns:slash="http://purl.org/rss/1.0/modules/slash/"><channel><title>博客园-Sognopolis - 简单带来重用，复杂带来重复</title><link>http://www.cnblogs.com/omnislash/</link><description /><language>zh-cn</language><lastBuildDate>Wed, 20 Aug 2008 09:13:08 GMT</lastBuildDate><pubDate>Wed, 20 Aug 2008 09:13:08 GMT</pubDate><ttl>60</ttl><item><title>[文摘]所谓坚持</title><link>http://www.cnblogs.com/omnislash/archive/2008/03/26/1123026.html</link><dc:creator>omnislash</dc:creator><author>omnislash</author><pubDate>Wed, 26 Mar 2008 06:07:00 GMT</pubDate><guid>http://www.cnblogs.com/omnislash/archive/2008/03/26/1123026.html</guid><wfw:comment>http://www.cnblogs.com/omnislash/comments/1123026.html</wfw:comment><comments>http://www.cnblogs.com/omnislash/archive/2008/03/26/1123026.html#Feedback</comments><slash:comments>0</slash:comments><wfw:commentRss>http://www.cnblogs.com/omnislash/comments/commentRss/1123026.html</wfw:commentRss><trackback:ping>http://www.cnblogs.com/omnislash/services/trackbacks/1123026.html</trackback:ping><description><![CDATA[<font face="Verdana"><a href="http://news.csdn.net/n/20080123/113019.html">http://news.csdn.net/n/20080123/113019.html</a></font><br />
<br />
如同所有成功者都会说的话，坚持到底才是最重要。但是简立峰解释能够成功的「坚持」，不是那种固执己见、消耗体力、毅力的坚持方式，也不是一味认定媳妇终会熬成婆的苦苦坚持，而是「期待自己好还要更好，不断突破的坚持态度。」
<img src ="http://www.cnblogs.com/omnislash/aggbug/1123026.html?type=1" width = "1" height = "1" /><br><br><a href="http://news.cnblogs.com/n/41802/" target="_blank">[新闻]微软Office 14即将展开Alpha测试</a>]]></description></item><item><title>[文摘]无事可做的工程师</title><link>http://www.cnblogs.com/omnislash/archive/2008/03/25/1121222.html</link><dc:creator>omnislash</dc:creator><author>omnislash</author><pubDate>Tue, 25 Mar 2008 05:54:00 GMT</pubDate><guid>http://www.cnblogs.com/omnislash/archive/2008/03/25/1121222.html</guid><wfw:comment>http://www.cnblogs.com/omnislash/comments/1121222.html</wfw:comment><comments>http://www.cnblogs.com/omnislash/archive/2008/03/25/1121222.html#Feedback</comments><slash:comments>0</slash:comments><wfw:commentRss>http://www.cnblogs.com/omnislash/comments/commentRss/1121222.html</wfw:commentRss><trackback:ping>http://www.cnblogs.com/omnislash/services/trackbacks/1121222.html</trackback:ping><description><![CDATA[<p>项目管理艺术（The Art of Project Management）P122<br />
<br />
I've argued with other managers on this very point. They couldn't imagine not allowing their team to code at full speed all the time, regardless of whether the programmers understood the direction the project was going. If the programmers were idle, then the project must be idle, right? Wrong. There is hypocrisy here: if the programmer's time is so valuable, the use of it should be well planned. "What will the programmers do?", they'd ask me. And I'd say, "They will wait for a plan worthy of their time, or help the team to find it."<br />
<br />
我曾和其他经理人就这点争论过。他们无法想象，不让团队随时全力撰写程序代码的情况，无论程序员究竟是否了解项目的前进方向。如果程序员空闲，项目就必然闲置，对吗？错。这里有个伪善的说法：如果程序员的时间如此宝贵，在使用上就应充分被计划。他们问我：&#8220;那程序员要做什么？&#8221;而我说：&#8220;他们要等待值得他们付出时间的计划，或者协助团队找出来。&#8221;<font face="Verdana"><br />
</font></p>
 <img src ="http://www.cnblogs.com/omnislash/aggbug/1121222.html?type=1" width = "1" height = "1" /><br><br><a href="http://news.cnblogs.com/n/41801/" target="_blank">[新闻]《星际争霸2》新图</a>]]></description></item><item><title>my nunit tips</title><link>http://www.cnblogs.com/omnislash/archive/2007/11/19/964620.html</link><dc:creator>omnislash</dc:creator><author>omnislash</author><pubDate>Mon, 19 Nov 2007 13:46:00 GMT</pubDate><guid>http://www.cnblogs.com/omnislash/archive/2007/11/19/964620.html</guid><wfw:comment>http://www.cnblogs.com/omnislash/comments/964620.html</wfw:comment><comments>http://www.cnblogs.com/omnislash/archive/2007/11/19/964620.html#Feedback</comments><slash:comments>0</slash:comments><wfw:commentRss>http://www.cnblogs.com/omnislash/comments/commentRss/964620.html</wfw:commentRss><trackback:ping>http://www.cnblogs.com/omnislash/services/trackbacks/964620.html</trackback:ping><description><![CDATA[摘要: NUnit小技巧一则&nbsp;&nbsp;<a href='http://www.cnblogs.com/omnislash/archive/2007/11/19/964620.html'>阅读全文</a><img src ="http://www.cnblogs.com/omnislash/aggbug/964620.html?type=1" width = "1" height = "1" /><br><br><a href="http://news.cnblogs.com/n/41800/" target="_blank">[新闻]Google放出Android开发路线图</a>]]></description></item><item><title>TTD的起点</title><link>http://www.cnblogs.com/omnislash/archive/2007/08/21/864301.html</link><dc:creator>omnislash</dc:creator><author>omnislash</author><pubDate>Tue, 21 Aug 2007 10:07:00 GMT</pubDate><guid>http://www.cnblogs.com/omnislash/archive/2007/08/21/864301.html</guid><wfw:comment>http://www.cnblogs.com/omnislash/comments/864301.html</wfw:comment><comments>http://www.cnblogs.com/omnislash/archive/2007/08/21/864301.html#Feedback</comments><slash:comments>0</slash:comments><wfw:commentRss>http://www.cnblogs.com/omnislash/comments/commentRss/864301.html</wfw:commentRss><trackback:ping>http://www.cnblogs.com/omnislash/services/trackbacks/864301.html</trackback:ping><description><![CDATA[以前总是先构造领域对象，今天发现，还是从界面构造起开始比较好，符合top-down模式，比较不会迷失方向。
<img src ="http://www.cnblogs.com/omnislash/aggbug/864301.html?type=1" width = "1" height = "1" /><br><br><a href="http://news.cnblogs.com/n/41799/" target="_blank">[新闻]番茄花园作者被警方逮捕</a>]]></description></item><item><title>一次程序调试带来的教训</title><link>http://www.cnblogs.com/omnislash/archive/2007/07/30/835781.html</link><dc:creator>omnislash</dc:creator><author>omnislash</author><pubDate>Sun, 29 Jul 2007 16:07:00 GMT</pubDate><guid>http://www.cnblogs.com/omnislash/archive/2007/07/30/835781.html</guid><wfw:comment>http://www.cnblogs.com/omnislash/comments/835781.html</wfw:comment><comments>http://www.cnblogs.com/omnislash/archive/2007/07/30/835781.html#Feedback</comments><slash:comments>0</slash:comments><wfw:commentRss>http://www.cnblogs.com/omnislash/comments/commentRss/835781.html</wfw:commentRss><trackback:ping>http://www.cnblogs.com/omnislash/services/trackbacks/835781.html</trackback:ping><description><![CDATA[摘要: 周五的时候在写一个小程序，它的输入是电话号码，输出是该号码的区号。区号表用Access数据库存储。解析算法的最初思路是：把整张区号表做成一个状态机，电话号码逐字符输入。这样效率应该比较高，但是要手工构造那个状态机就有点麻烦。&#8220;先让程序跑起来，然后让它快起来&#8221;——稍微简化一下，先用号码的头三位（为什么用前三位？那是因为国内区号最短就是三位）做模糊查询，过滤掉明显不匹配的区号，&nbsp;&nbsp;<a href='http://www.cnblogs.com/omnislash/archive/2007/07/30/835781.html'>阅读全文</a><img src ="http://www.cnblogs.com/omnislash/aggbug/835781.html?type=1" width = "1" height = "1" /><br><br><a href="http://news.cnblogs.com/n/41792/" target="_blank">[新闻]WordPress和Movable Type影响社交网站的未来</a>]]></description></item><item><title>dot Net Frameworks中常见的设计模式</title><link>http://www.cnblogs.com/omnislash/archive/2007/05/30/765469.html</link><dc:creator>omnislash</dc:creator><author>omnislash</author><pubDate>Wed, 30 May 2007 11:08:00 GMT</pubDate><guid>http://www.cnblogs.com/omnislash/archive/2007/05/30/765469.html</guid><wfw:comment>http://www.cnblogs.com/omnislash/comments/765469.html</wfw:comment><comments>http://www.cnblogs.com/omnislash/archive/2007/05/30/765469.html#Feedback</comments><slash:comments>5</slash:comments><wfw:commentRss>http://www.cnblogs.com/omnislash/comments/commentRss/765469.html</wfw:commentRss><trackback:ping>http://www.cnblogs.com/omnislash/services/trackbacks/765469.html</trackback:ping><description><![CDATA[摘要: 响应一下Anders Liu的号召，列几个自己经常遇到的实现<br>写得很简单，欢迎讨论&nbsp;&nbsp;<a href='http://www.cnblogs.com/omnislash/archive/2007/05/30/765469.html'>阅读全文</a><img src ="http://www.cnblogs.com/omnislash/aggbug/765469.html?type=1" width = "1" height = "1" /><br><br><a href="http://news.cnblogs.com/n/41791/" target="_blank">[新闻]谷歌平台手机获准上市</a>]]></description></item><item><title>MC++ tips</title><link>http://www.cnblogs.com/omnislash/archive/2007/05/11/743037.html</link><dc:creator>omnislash</dc:creator><author>omnislash</author><pubDate>Fri, 11 May 2007 07:34:00 GMT</pubDate><guid>http://www.cnblogs.com/omnislash/archive/2007/05/11/743037.html</guid><wfw:comment>http://www.cnblogs.com/omnislash/comments/743037.html</wfw:comment><comments>http://www.cnblogs.com/omnislash/archive/2007/05/11/743037.html#Feedback</comments><slash:comments>0</slash:comments><wfw:commentRss>http://www.cnblogs.com/omnislash/comments/commentRss/743037.html</wfw:commentRss><trackback:ping>http://www.cnblogs.com/omnislash/services/trackbacks/743037.html</trackback:ping><description><![CDATA[1. 同时使用C++操作符new和MC++操作符new<br><br>使用__gc和__nogc关键字：<br>例如，托管类M和本地类N<br>M* m = __gc new M;<br>N* n = __nogc new N;<br><br>2. 含有析构函数定义的托管派生类链接时错误：<br>error LNK2001: unresolved external symbol "void __cdecl __CxxCallUnwindDtor(void (__thiscall*)(void *),void *)" (<a href="&#109;&#97;&#105;&#108;&#116;&#111;&#58;&#63;&#95;&#95;&#67;&#120;&#120;&#67;&#97;&#108;&#108;&#85;&#110;&#119;&#105;&#110;&#100;&#68;&#116;&#111;&#114;&#64;&#64;&#36;&#36;&#74;&#48;&#89;&#65;&#88;&#80;&#54;&#69;&#88;&#80;&#65;&#88;&#64;&#90;&#48;&#64;&#90;">?__CxxCallUnwindDtor@@$$J0YAXP6EXPAX@Z0@Z</a>)<br><br>解决方案：<br>1、在项目中显式引用msvcrt.lib或者msvcrtd.lib，具体做法是在头文件中增加一行<br>
<div style="BORDER-RIGHT: #cccccc 1px solid; PADDING-RIGHT: 5px; BORDER-TOP: #cccccc 1px solid; PADDING-LEFT: 4px; FONT-SIZE: 13px; PADDING-BOTTOM: 4px; BORDER-LEFT: #cccccc 1px solid; WIDTH: 98%; WORD-BREAK: break-all; PADDING-TOP: 4px; BORDER-BOTTOM: #cccccc 1px solid; BACKGROUND-COLOR: #eeeeee"><img src="http://www.cnblogs.com/Images/OutliningIndicators/None.gif" align=top><span style="COLOR: #000000">#pragma&nbsp;comment(&nbsp;lib,&nbsp;</span><span style="COLOR: #000000">"</span><span style="COLOR: #000000">msvcrt</span><span style="COLOR: #000000">"</span><span style="COLOR: #000000">&nbsp;)&nbsp;</span><span style="COLOR: #008000">//</span><span style="COLOR: #008000">&nbsp;或msvcrtd</span></div>
<br>2、如果不需要exception unwinding，可以取消对C++ Exception的支持，具体做法（以vs2003为例）：<br>项目属性 -&gt; C/C++&nbsp;-&gt; Code Generation&nbsp;-&gt; Enable C++ Exceptions<br>注：/EHsc选项同样可以解决STL等需要支持C++ Exceptions的库的连接错误问题<br><br>3. 没有显示引入dll造成的TypeLoadException<br>例如<br>
<div style="BORDER-RIGHT: #cccccc 1px solid; PADDING-RIGHT: 5px; BORDER-TOP: #cccccc 1px solid; PADDING-LEFT: 4px; FONT-SIZE: 13px; PADDING-BOTTOM: 4px; BORDER-LEFT: #cccccc 1px solid; WIDTH: 98%; WORD-BREAK: break-all; PADDING-TOP: 4px; BORDER-BOTTOM: #cccccc 1px solid; BACKGROUND-COLOR: #eeeeee"><img src="http://www.cnblogs.com/Images/OutliningIndicators/None.gif" align=top><span style="COLOR: #008000">//</span><span style="COLOR: #008000">&nbsp;在头文件中</span><span style="COLOR: #008000"><br><img src="http://www.cnblogs.com/Images/OutliningIndicators/None.gif" align=top></span><span style="COLOR: #0000ff">public</span><span style="COLOR: #000000">&nbsp;__gc&nbsp;</span><span style="COLOR: #0000ff">class</span><span style="COLOR: #000000">&nbsp;ImageProvider<br><img id=Codehighlighter1_41_105_Open_Image onclick="this.style.display='none'; Codehighlighter1_41_105_Open_Text.style.display='none'; Codehighlighter1_41_105_Closed_Image.style.display='inline'; Codehighlighter1_41_105_Closed_Text.style.display='inline';" src="http://www.cnblogs.com/Images/OutliningIndicators/ExpandedBlockStart.gif" align=top><img id=Codehighlighter1_41_105_Closed_Image style="DISPLAY: none" onclick="this.style.display='none'; Codehighlighter1_41_105_Closed_Text.style.display='none'; Codehighlighter1_41_105_Open_Image.style.display='inline'; Codehighlighter1_41_105_Open_Text.style.display='inline';" src="http://www.cnblogs.com/Images/OutliningIndicators/ContractedBlock.gif" align=top></span><span id=Codehighlighter1_41_105_Closed_Text style="BORDER-RIGHT: #808080 1px solid; BORDER-TOP: #808080 1px solid; DISPLAY: none; BORDER-LEFT: #808080 1px solid; BORDER-BOTTOM: #808080 1px solid; BACKGROUND-COLOR: #ffffff"><img src="http://www.cnblogs.com/Images/dot.gif"></span><span id=Codehighlighter1_41_105_Open_Text><span style="COLOR: #000000">{<br><img id=Codehighlighter1_88_103_Open_Image onclick="this.style.display='none'; Codehighlighter1_88_103_Open_Text.style.display='none'; Codehighlighter1_88_103_Closed_Image.style.display='inline'; Codehighlighter1_88_103_Closed_Text.style.display='inline';" src="http://www.cnblogs.com/Images/OutliningIndicators/ExpandedSubBlockStart.gif" align=top><img id=Codehighlighter1_88_103_Closed_Image style="DISPLAY: none" onclick="this.style.display='none'; Codehighlighter1_88_103_Closed_Text.style.display='none'; Codehighlighter1_88_103_Open_Image.style.display='inline'; Codehighlighter1_88_103_Open_Text.style.display='inline';" src="http://www.cnblogs.com/Images/OutliningIndicators/ContractedSubBlock.gif" align=top>&nbsp;&nbsp;&nbsp;&nbsp;System::Drawing::Image&nbsp;__gc</span><span style="COLOR: #000000">*</span><span style="COLOR: #000000">&nbsp;GetImage&nbsp;()&nbsp;</span><span id=Codehighlighter1_88_103_Closed_Text style="BORDER-RIGHT: #808080 1px solid; BORDER-TOP: #808080 1px solid; DISPLAY: none; BORDER-LEFT: #808080 1px solid; BORDER-BOTTOM: #808080 1px solid; BACKGROUND-COLOR: #ffffff"><img src="http://www.cnblogs.com/Images/dot.gif"></span><span id=Codehighlighter1_88_103_Open_Text><span style="COLOR: #000000">{&nbsp;</span><span style="COLOR: #0000ff">return</span><span style="COLOR: #000000">&nbsp;NULL;&nbsp;}</span></span><span style="COLOR: #000000"><br><img src="http://www.cnblogs.com/Images/OutliningIndicators/ExpandedBlockEnd.gif" align=top>}</span></span></div>
上述代码可以通过编译，但是可能会在运行时引发TypeLoadException异常。<br>解决方案是在头文件中使用#using指令引入System.Drawing.dll<br>
<div style="BORDER-RIGHT: #cccccc 1px solid; PADDING-RIGHT: 5px; BORDER-TOP: #cccccc 1px solid; PADDING-LEFT: 4px; FONT-SIZE: 13px; PADDING-BOTTOM: 4px; BORDER-LEFT: #cccccc 1px solid; WIDTH: 98%; WORD-BREAK: break-all; PADDING-TOP: 4px; BORDER-BOTTOM: #cccccc 1px solid; BACKGROUND-COLOR: #eeeeee"><img src="http://www.cnblogs.com/Images/OutliningIndicators/None.gif" align=top><span style="COLOR: #000000">#</span><span style="COLOR: #0000ff">using</span><span style="COLOR: #000000">&nbsp;</span><span style="COLOR: #000000">&lt;</span><span style="COLOR: #000000">system.drawing.dll</span><span style="COLOR: #000000">&gt;</span></div>
<br><br><br>
<img src ="http://www.cnblogs.com/omnislash/aggbug/743037.html?type=1" width = "1" height = "1" /><br><br><a href="http://news.cnblogs.com/n/41790/" target="_blank">[新闻]微软自称传媒公司 强调搜索引擎三大趋势</a>]]></description></item><item><title>接口Tips</title><link>http://www.cnblogs.com/omnislash/archive/2007/04/06/702378.html</link><dc:creator>omnislash</dc:creator><author>omnislash</author><pubDate>Fri, 06 Apr 2007 02:34:00 GMT</pubDate><guid>http://www.cnblogs.com/omnislash/archive/2007/04/06/702378.html</guid><wfw:comment>http://www.cnblogs.com/omnislash/comments/702378.html</wfw:comment><comments>http://www.cnblogs.com/omnislash/archive/2007/04/06/702378.html#Feedback</comments><slash:comments>0</slash:comments><wfw:commentRss>http://www.cnblogs.com/omnislash/comments/commentRss/702378.html</wfw:commentRss><trackback:ping>http://www.cnblogs.com/omnislash/services/trackbacks/702378.html</trackback:ping><description><![CDATA[问：何时为接口指定实现？<br><br>答：在一个特定语境的入口处，在该语境范围内，接口的实现作为一种&#8220;共识&#8221;被使用。它相当于语用学中的Deixis(指示语，例如：&#8220;这个&#8221;，&#8220;那个&#8221;，&#8220;现在&#8221;等等）；从这个角度考虑，指定接口的实现是一种建立&#8220;共识&#8221;的行为。类似情况的还包括参数的传递和读取配置
<img src ="http://www.cnblogs.com/omnislash/aggbug/702378.html?type=1" width = "1" height = "1" /><br><br><a href="http://news.cnblogs.com/n/41789/" target="_blank">[新闻]亚洲社交网站Friendster将兼容竞争对手窗件</a>]]></description></item><item><title>从Windows访问linux KDE远程桌面 - Quick start</title><link>http://www.cnblogs.com/omnislash/archive/2006/10/16/530128.html</link><dc:creator>omnislash</dc:creator><author>omnislash</author><pubDate>Mon, 16 Oct 2006 03:42:00 GMT</pubDate><guid>http://www.cnblogs.com/omnislash/archive/2006/10/16/530128.html</guid><wfw:comment>http://www.cnblogs.com/omnislash/comments/530128.html</wfw:comment><comments>http://www.cnblogs.com/omnislash/archive/2006/10/16/530128.html#Feedback</comments><slash:comments>0</slash:comments><wfw:commentRss>http://www.cnblogs.com/omnislash/comments/commentRss/530128.html</wfw:commentRss><trackback:ping>http://www.cnblogs.com/omnislash/services/trackbacks/530128.html</trackback:ping><description><![CDATA[摘要: Windows XP远程访问Gentoo的KDE桌面解决方案&nbsp;&nbsp;<a href='http://www.cnblogs.com/omnislash/archive/2006/10/16/530128.html'>阅读全文</a><img src ="http://www.cnblogs.com/omnislash/aggbug/530128.html?type=1" width = "1" height = "1" /><br><br><a href="http://news.cnblogs.com/n/41788/" target="_blank">[新闻]百度宣布服务器全面换装闪存 替代硬盘</a>]]></description></item><item><title>MAF应用框架设计总结I——缘起</title><link>http://www.cnblogs.com/omnislash/archive/2006/08/03/466322.html</link><dc:creator>omnislash</dc:creator><author>omnislash</author><pubDate>Wed, 02 Aug 2006 18:09:00 GMT</pubDate><guid>http://www.cnblogs.com/omnislash/archive/2006/08/03/466322.html</guid><wfw:comment>http://www.cnblogs.com/omnislash/comments/466322.html</wfw:comment><comments>http://www.cnblogs.com/omnislash/archive/2006/08/03/466322.html#Feedback</comments><slash:comments>4</slash:comments><wfw:commentRss>http://www.cnblogs.com/omnislash/comments/commentRss/466322.html</wfw:commentRss><trackback:ping>http://www.cnblogs.com/omnislash/services/trackbacks/466322.html</trackback:ping><description><![CDATA[摘要:         MAF（My Application Framework ）是一个.Net平台上开发的应用框架，它提供了基于WinForm的用户界面框架和插件风格的体系结构，并提供了诸如权限验证对象模型/工具、代码生成器等应用程序基础设施和开发工具。在这个框架的设计过程中大量借鉴了VisualStudio的一些设计思路，在功能类似于目前流行的Eclipse（基于Java）和SharpDevelop（基于.net）。不同之处在于它对主界面风格做了进一步的抽象，从而使用户界面风格更加易于修改和扩展。<br>&nbsp;&nbsp;<a href='http://www.cnblogs.com/omnislash/archive/2006/08/03/466322.html'>阅读全文</a><img src ="http://www.cnblogs.com/omnislash/aggbug/466322.html?type=1" width = "1" height = "1" /><br><br><a href="http://news.cnblogs.com/n/41787/" target="_blank">[新闻]诺基亚发布奢华碳纤维版8800 Arte</a>]]></description></item></channel></rss>