<?xml version="1.0" encoding="UTF-8" ?>
<rss version="2.0">
  <channel>
    <title>okkkk</title>
    <description></description>
    <link>http://lovecpp.javaeye.com</link>
    <language>UTF-8</language>
    <copyright>Copyright 2003-2008, JavaEye.com</copyright>
    <docs>http://blogs.law.harvard.edu/tech/rss</docs>
    <generator>JavaEye - 做最棒的软件开发交流社区</generator>
      <item>
        <title>rapid-framework 的启示</title>
        <author>lovecpp</author>
        <description>
          <![CDATA[
          <br/>
          作者: <a href="http://lovecpp.javaeye.com">lovecpp</a>&nbsp;
          链接：<a href="http://lovecpp.javaeye.com/blog/222547" style="color:red;">http://lovecpp.javaeye.com/blog/222547</a>&nbsp;
          发表时间: 2008年08月01日
          <br/><br/>
          声明：本文系JavaEye网站发布的原创博客文章，未经作者书面许可，严禁任何网站转载本文，否则必将追究法律责任！
          <br/><br/>
          1.学习rails的零配置.实际上将所有的配置文件都写好,使用时只需要修改若干几个地方就可以了. 而往往spring,hibernate,struts,还有如jsp用到的JSPTag,Ajax框架的配置文件是很耗时间的.即使是熟手,从头到尾配置下来也嫌啰唆.rapid-framework都配置好,这很方便.这应该是从SpringSide和Appfuse上学习来的.<br />2.避免SpringSide在环境搭建上的繁琐.在用SS1.0,2.0的时候,对于初学者,最头疼的就是各个框架的搭建,又要设置这个,又要设置那个. rapid-framework充分利用了MyEclipse 的buildpath管理功能,减少了许多麻烦.<br />3.最有威力的是rapid-generator.能够生成domain,dao,service,action等相关类和jsp页面.本身写daomain,dao就成了个体力活,能由代码生成,方便了许多.有一点聪明的做法是:所生成的代码先放在其他目录下,然后手工拷贝会开发项目的目录下.<br /><br />rapid-framework并没有很多创新点--也许generator算一个,但对于我而言,不太顺手的地方就是搭配各个框架的环境和配置文件,嫌麻烦的地方就是重复的写domain,dao.如今,这些工作都可以借助rapid-framework完成,所以非常欣赏这个框架的实用和快速性.
          <br/><br/>
          <span style="color:red;">
            <a href="http://lovecpp.javaeye.com/blog/222547#comments" style="color:red;">已有 <strong>0</strong> 人发表留言，猛击-&gt;&gt;<strong>这里</strong>&lt;&lt;-参与讨论</a>
          </span>
          <br/><br/><br/>
          <span style="color:#E28822;">JavaEye推荐</span>
          <br/>
          <ul class='adverts'><li><a href='/adverts/42' target='_blank'><span style="color:red;font-weight:bold;">搜狐网站诚聘Java、PHP和C++工程师</span></a></li><li><a href='/adverts/41' target='_blank'><span style="color:red;font-weight:bold;">北京: 千橡集团暨校内网诚聘软件研发工程师</span></a></li></ul>
          <br/><br/><br/>
          ]]>
        </description>
        <pubDate>Fri, 01 Aug 2008 00:07:26 +0800</pubDate>
        <link>http://lovecpp.javaeye.com/blog/222547</link>
        <guid>http://lovecpp.javaeye.com/blog/222547</guid>
      </item>
      <item>
        <title>临近三十</title>
        <author>lovecpp</author>
        <description>
          <![CDATA[
          <br/>
          作者: <a href="http://lovecpp.javaeye.com">lovecpp</a>&nbsp;
          链接：<a href="http://lovecpp.javaeye.com/blog/164871" style="color:red;">http://lovecpp.javaeye.com/blog/164871</a>&nbsp;
          发表时间: 2008年02月25日
          <br/><br/>
          声明：本文系JavaEye网站发布的原创博客文章，未经作者书面许可，严禁任何网站转载本文，否则必将追究法律责任！
          <br/><br/>
          虽然“三十而立”是按古人的寿命来衡量的，但在普通寿命高于古人的今天，人们仍然认为三十是道槛。不幸的是，我正迈入这道门槛。 <br />­<br />1999年办个人身份证，那时就想十年之后自己会是什么样子呢？没想到这个十年这么快就要完了，而且是最重要的十年。似乎觉得自己一事无成，根本没有立的资本。 <br />这段时间看六人行，正好昨天看到那集“瑞秋的三十岁生日”。无论男人、还是女人，三十岁都会有压力。女人感慨容颜的衰退，男人感叹的更多。 <br />­<br />有趣的是，我的每个十年都算到纪年的最后一年。79，89，99，马上就是09，然后19，29，39...应该回不到79了！:) 在89 年我能记住的是在北京发生了政治风波，99年我能记住的是为考四级，办了个身份证，有了正式的公民身份。当然还有跨越千年，但实在没有什么回忆，一觉醒来，发觉要叫2000年了。转眼又过了8年了。真是快啊！ <br />其实也没啥。小时候看作文书，应该80年代的作文。有人就写到：在2000年的某一天早上，我被闹钟叫醒。我的机器人小保姆就为我准备好了早餐...那时侯看到这样的作文时，想着到2000年还有好远了，那时科技真的会这么先进。真正到了2000年的时候，发现还是得自己买早点。也许我们现在还可以写这样的文章，不过，要换成2020,或2030... 但重要的是：我们已经没有去想像的兴趣了。 <br />­<br />人越大，发现为自己考虑的越多了。
          <br/><br/>
          <span style="color:red;">
            <a href="http://lovecpp.javaeye.com/blog/164871#comments" style="color:red;">已有 <strong>0</strong> 人发表留言，猛击-&gt;&gt;<strong>这里</strong>&lt;&lt;-参与讨论</a>
          </span>
          <br/><br/><br/>
          <span style="color:#E28822;">JavaEye推荐</span>
          <br/>
          <ul class='adverts'><li><a href='/adverts/42' target='_blank'><span style="color:red;font-weight:bold;">搜狐网站诚聘Java、PHP和C++工程师</span></a></li><li><a href='/adverts/41' target='_blank'><span style="color:red;font-weight:bold;">北京: 千橡集团暨校内网诚聘软件研发工程师</span></a></li></ul>
          <br/><br/><br/>
          ]]>
        </description>
        <pubDate>Mon, 25 Feb 2008 19:04:14 +0800</pubDate>
        <link>http://lovecpp.javaeye.com/blog/164871</link>
        <guid>http://lovecpp.javaeye.com/blog/164871</guid>
      </item>
      <item>
        <title>.net和Java</title>
        <author>lovecpp</author>
        <description>
          <![CDATA[
          <br/>
          作者: <a href="http://lovecpp.javaeye.com">lovecpp</a>&nbsp;
          链接：<a href="http://lovecpp.javaeye.com/blog/164863" style="color:red;">http://lovecpp.javaeye.com/blog/164863</a>&nbsp;
          发表时间: 2008年02月25日
          <br/><br/>
          声明：本文系JavaEye网站发布的原创博客文章，未经作者书面许可，严禁任何网站转载本文，否则必将追究法律责任！
          <br/><br/>
          .net 已经到了3.5版本了。在1.1版本的时候,.net就赶上了当时JavaEE的水平，这些年来两者的发展路线也不一样。 <br />看到如今的3.5版本所取得的成就，令人啧舌啊。 <br />WPF,WCF,WF,LINQ,SilverLight,VS2008,SQL Server2008... <br />不可否认，在企业开发这块，.net离JavaEE还是有差距，尤其在大型企业开发方面更是很大。但在其他方面就难说可： <br />1.从语言的发展看,C#比起Java来说，有些特性要好用。而Java虽有不少改进，如泛型、对脚本语言的支持，但发展势头比不上C#，且方向模糊，比如还想放进去函数语言包。话说转过来，C# 尽管发展强劲，不过还是有人指出现在的C#特性越来越复杂了。 <br />2.在界面表现力上,.net比Java平台的就超过很多了。在桌面上WPF的出手似乎未能取得消费者的认同，多半是因为XP的缘故。不过，这也给了MS更多的时间去完善和推广WPF。3D的操作系统应是迟早的事情。对于我们写程序的人而言，用3D 的Visual Studio是个什么感觉啊？这是多么令人期待的事情。而在浏览器的出手似乎更具震撼力些，对于程序员和用户而言都是可以接受的，你能接受Flash，对SilverLight应不排斥。而按照MS的设计初衷，要好于Flash。不过，WPF用XML来描述界面，这点实在不喜欢。JavaFX的方式可能更好些。 <br />3.手机平台的较量，两者似乎都不上Google的Android，还有那个传说中的iPhone。这个平台懂的不多，闭嘴的不谈了。 <br />­<br />在Java进入中国前，我们只看到MS；感觉真是件悲哀的事情。 <br />而如今，看来MS总是后来居上，其实你跟MS绑定也未尝不可。MS的东西虽然功能不是一流的，但好用。 <br />­
          <br/><br/>
          <span style="color:red;">
            <a href="http://lovecpp.javaeye.com/blog/164863#comments" style="color:red;">已有 <strong>0</strong> 人发表留言，猛击-&gt;&gt;<strong>这里</strong>&lt;&lt;-参与讨论</a>
          </span>
          <br/><br/><br/>
          <span style="color:#E28822;">JavaEye推荐</span>
          <br/>
          <ul class='adverts'><li><a href='/adverts/41' target='_blank'><span style="color:red;font-weight:bold;">北京: 千橡集团暨校内网诚聘软件研发工程师</span></a></li><li><a href='/adverts/42' target='_blank'><span style="color:red;font-weight:bold;">搜狐网站诚聘Java、PHP和C++工程师</span></a></li></ul>
          <br/><br/><br/>
          ]]>
        </description>
        <pubDate>Mon, 25 Feb 2008 18:46:51 +0800</pubDate>
        <link>http://lovecpp.javaeye.com/blog/164863</link>
        <guid>http://lovecpp.javaeye.com/blog/164863</guid>
      </item>
      <item>
        <title>在InstantRails 中的数据库连接测试</title>
        <author>lovecpp</author>
        <description>
          <![CDATA[
          <br/>
          作者: <a href="http://lovecpp.javaeye.com">lovecpp</a>&nbsp;
          链接：<a href="http://lovecpp.javaeye.com/blog/155149" style="color:red;">http://lovecpp.javaeye.com/blog/155149</a>&nbsp;
          发表时间: 2008年01月11日
          <br/><br/>
          声明：本文系JavaEye网站发布的原创博客文章，未经作者书面许可，严禁任何网站转载本文，否则必将追究法律责任！
          <br/><br/>
          1.解压 InstantRails-1.7-win.zip 到 e:\instantrails\目录下,同时运行instantrail.exe<br />打开一个CMD窗口,转到上述目录,输入use_ruby,这个命令会设置Ruby和MySql的PATH.<br /><br />2.检验版本<br />1)gem 版本：gem -v  0.9.0<br />(2)rail 版本：rails -v  Rails 1.2.3<br />(3)ruby 版本：ruby -v   ruby 1.8.6 (2007-03-13 patchlevel 0) [i386-mswin32]<br /><br />3.在irb中完成如下代码,或者编写一个.rb<br />require "mysql"<br />#使用InstantRails中自带的数据库cookbook <br />dbh = Mysql.real_connect("localhost","root","","cookbook")<br />res = dbh.query("select id,title from recipes")<br />res.each do |row|<br />  printf "%s,%s\n", row[0], row[1]<br />end<br />res.free<br />dhb.close<br />总的说来还是简捷和方便的<br /><br />可能出现的问题:<br />1.在启动instantrails.exe会提示3306端口被使用.你的机器上可能已经安全了一个MySql.到"服务"中将这个MySql改成手工启动的方式.<br />2.连接InstantRails所带的MySql服务器,用户名是root,密码为空
          <br/><br/>
          <span style="color:red;">
            <a href="http://lovecpp.javaeye.com/blog/155149#comments" style="color:red;">已有 <strong>0</strong> 人发表留言，猛击-&gt;&gt;<strong>这里</strong>&lt;&lt;-参与讨论</a>
          </span>
          <br/><br/><br/>
          <span style="color:#E28822;">JavaEye推荐</span>
          <br/>
          <ul class='adverts'><li><a href='/adverts/41' target='_blank'><span style="color:red;font-weight:bold;">北京: 千橡集团暨校内网诚聘软件研发工程师</span></a></li><li><a href='/adverts/42' target='_blank'><span style="color:red;font-weight:bold;">搜狐网站诚聘Java、PHP和C++工程师</span></a></li></ul>
          <br/><br/><br/>
          ]]>
        </description>
        <pubDate>Fri, 11 Jan 2008 18:27:59 +0800</pubDate>
        <link>http://lovecpp.javaeye.com/blog/155149</link>
        <guid>http://lovecpp.javaeye.com/blog/155149</guid>
      </item>
      <item>
        <title>两个prototype.js网址</title>
        <author>lovecpp</author>
        <description>
          <![CDATA[
          <br/>
          作者: <a href="http://lovecpp.javaeye.com">lovecpp</a>&nbsp;
          链接：<a href="http://lovecpp.javaeye.com/blog/152795" style="color:red;">http://lovecpp.javaeye.com/blog/152795</a>&nbsp;
          发表时间: 2008年01月03日
          <br/><br/>
          声明：本文系JavaEye网站发布的原创博客文章，未经作者书面许可，严禁任何网站转载本文，否则必将追究法律责任！
          <br/><br/>
          <a href="http://www.scripteka.com/" target="_blank">http://www.scripteka.com/</a> http://wholewheatweb.com/[align=left][/align]
          <br/><br/>
          <span style="color:red;">
            <a href="http://lovecpp.javaeye.com/blog/152795#comments" style="color:red;">已有 <strong>0</strong> 人发表留言，猛击-&gt;&gt;<strong>这里</strong>&lt;&lt;-参与讨论</a>
          </span>
          <br/><br/><br/>
          <span style="color:#E28822;">JavaEye推荐</span>
          <br/>
          <ul class='adverts'><li><a href='/adverts/41' target='_blank'><span style="color:red;font-weight:bold;">北京: 千橡集团暨校内网诚聘软件研发工程师</span></a></li><li><a href='/adverts/42' target='_blank'><span style="color:red;font-weight:bold;">搜狐网站诚聘Java、PHP和C++工程师</span></a></li></ul>
          <br/><br/><br/>
          ]]>
        </description>
        <pubDate>Thu, 03 Jan 2008 13:26:52 +0800</pubDate>
        <link>http://lovecpp.javaeye.com/blog/152795</link>
        <guid>http://lovecpp.javaeye.com/blog/152795</guid>
      </item>
      <item>
        <title>url排重</title>
        <author>lovecpp</author>
        <description>
          <![CDATA[
          <br/>
          作者: <a href="http://lovecpp.javaeye.com">lovecpp</a>&nbsp;
          链接：<a href="http://lovecpp.javaeye.com/blog/103299" style="color:red;">http://lovecpp.javaeye.com/blog/103299</a>&nbsp;
          发表时间: 2007年07月20日
          <br/><br/>
          声明：本文系JavaEye网站发布的原创博客文章，未经作者书面许可，严禁任何网站转载本文，否则必将追究法律责任！
          <br/><br/>
          <p><font face="Arial"><a href="http://blog.csdn.net/oyd/archive/2007/07/19/1699237.aspx">http://blog.csdn.net/oyd/archive/2007/07/19/1699237.aspx</a>---原网址</font></p>
<p>我这里介绍一个极适合大量URL快速排重的方法&nbsp;，这个算法被称为Bloom filter，基本上，它也只适合这样的场合。</p>
<p>这里的大量是指有5000万至1亿的URL，更大的数据量可能也不合适了。</p>
<p>一开始我使用了一个最复杂的做法，是有一个单独的daemon程序负责排重，数据和排重结果通过socket传输。<br />
后来发现不行，仅仅几百万数据要做好几个小时，5000万不把人都急疯了？至于daemon中具体用什么算法就次要了，因为一涉及到网络通讯，速度再快也被拉下来（这里针对的是发送一条记录/返回一条结果的模式，一次传送一批数据则与网络状况有关了）</p>
<p>所以，把目标锁定在单机排重，一开始，试验了perl中的hash，非常简单的代码</p>
<div style="BORDER-RIGHT: windowtext 0.5pt solid; PADDING-RIGHT: 5.4pt; BORDER-TOP: windowtext 0.5pt solid; PADDING-LEFT: 5.4pt; BACKGROUND: #e6e6e6; PADDING-BOTTOM: 4px; BORDER-LEFT: windowtext 0.5pt solid; WIDTH: 95%; WORD-BREAK: break-all; PADDING-TOP: 4px; BORDER-BOTTOM: windowtext 0.5pt solid">
<div><img src="http://images.csdn.net/syntaxhighlighting/OutliningIndicators/None.gif" align="top" alt="" /><span style="COLOR: #0000ff">use</span><span style="COLOR: #000000">&nbsp;DB_File;<br />
<img src="http://images.csdn.net/syntaxhighlighting/OutliningIndicators/None.gif" align="top" alt="" /></span><span style="COLOR: #0000ff">my</span><span style="COLOR: #000000">&nbsp;</span><span style="COLOR: #800080">%db</span><span style="COLOR: #000000">;<br />
<img src="http://images.csdn.net/syntaxhighlighting/OutliningIndicators/None.gif" align="top" alt="" /></span><span style="COLOR: #008000">#</span><span style="COLOR: #008000">tie&nbsp;%db,&nbsp;'DB_File',&nbsp;&quot;createdb.dat&quot;,&nbsp;or&nbsp;die&nbsp;&quot;Can't&nbsp;initialize&nbsp;db::&nbsp;$! &quot;;</span><span style="COLOR: #008000"><br />
<img src="http://images.csdn.net/syntaxhighlighting/OutliningIndicators/None.gif" align="top" alt="" /></span><span style="COLOR: #0000ff">while</span><span style="COLOR: #000000">(</span><span style="COLOR: #000000">&lt;&gt;</span><span style="COLOR: #000000">)&nbsp;{<br />
<img src="http://images.csdn.net/syntaxhighlighting/OutliningIndicators/None.gif" align="top" alt="" />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="COLOR: #0000ff">chomp</span><span style="COLOR: #000000">&nbsp;</span><span style="COLOR: #800080">$_</span><span style="COLOR: #000000">;<br />
<img src="http://images.csdn.net/syntaxhighlighting/OutliningIndicators/None.gif" align="top" alt="" />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="COLOR: #800080">$db</span><span style="COLOR: #000000">{</span><span style="COLOR: #800080">$_</span><span style="COLOR: #000000">}&nbsp;</span><span style="COLOR: #000000">=</span><span style="COLOR: #000000">&nbsp;</span><span style="COLOR: #800000">1</span><span style="COLOR: #000000">;</span><span style="COLOR: #008000">#</span><span style="COLOR: #008000">&nbsp;add&nbsp;code&nbsp;here</span><span style="COLOR: #008000"><br />
<img src="http://images.csdn.net/syntaxhighlighting/OutliningIndicators/None.gif" align="top" alt="" /></span><span style="COLOR: #000000">}<br />
<img src="http://images.csdn.net/syntaxhighlighting/OutliningIndicators/None.gif" align="top" alt="" /></span><span style="COLOR: #008000">#</span><span style="COLOR: #008000">untie&nbsp;%db;</span></div>
</div>
<p>从标准输入或文件中每行一个URL读入，插入到perl内置的hash表中，这就成了，需要输出结果则预先判断一下插入的key是否存在。</p>
<p>这个方法速度很快，可惜的是，它占用内存太大，假设1个URL平均50字节，5000万个URL需要2.5G内存。</p>
<p>于是又想到一个方法，把部分数据放入硬盘空间，perl中也提供一个现成的模块DB_File，把上面代码中的注释去掉，就可使用DB_File了，用法与hash一样，只是内部用数据库实现的。</p>
<p>测试了一下，速度明显下降了一个档次，仅40万的数据就要1分钟，关键还在于随着数据量的增加，速度下降加快，两者不呈线性关系。</p>
<p>数据量大的时候，有可能用MySQL的性能会比DB_File好，但是总体上应该是一丘之貉，我已经不抱期望了。</p>
<p>也许DB_File可以优化一下，使用更多的内存和少量的硬盘空间，不过这个方案还是太复杂，留给专家解决吧，一般来说，我认为简单的方法才有可能做到高效。</p>
<p>下面我们的重点对象隆重登场：Bloom filter。简单的说是这样一种方法：在内存中开辟一块区域，对其中所有位置0，然后对数据做10种不同的hash，每个hash值对内存bit数求模，求模得到的数在内存对应的位上置1。置位之前会先判断是否已经置位，每次插入一个URL，只有当全部10个位都已经置1了才认为是重复的。</p>
<p>如果对上面这段话不太理解，可以换个简单的比喻：有10个桶，一个桶只能容纳1个球，每次往这些桶中扔两个球，如果两个桶都已经有球，才认为是重复，问问为了不重复总共能扔多少次球？</p>
<p>10次，是这个答案吧？每次扔1个球的话，也是10次。表面上看一次扔几个球没有区别，事实上一次两个球的情况下，重复概率比一次一个球要低。Bloom filter算法正式借助这一点，仅仅用少量的空间就可以进行大量URL的排重，并且使误判率极低。</p>
<p>有人宣称为每个URL分配两个字节就可以达到0冲突，我比较保守，为每个URL分配了4个字节，对于5000万的数量级，它只占用了100多M的空间，并且排重速度超快，一遍下来不到两分钟，极大得满足了我的欲望。</p>
          <br/><br/>
          <span style="color:red;">
            <a href="http://lovecpp.javaeye.com/blog/103299#comments" style="color:red;">已有 <strong>0</strong> 人发表留言，猛击-&gt;&gt;<strong>这里</strong>&lt;&lt;-参与讨论</a>
          </span>
          <br/><br/><br/>
          <span style="color:#E28822;">JavaEye推荐</span>
          <br/>
          <ul class='adverts'><li><a href='/adverts/42' target='_blank'><span style="color:red;font-weight:bold;">搜狐网站诚聘Java、PHP和C++工程师</span></a></li><li><a href='/adverts/41' target='_blank'><span style="color:red;font-weight:bold;">北京: 千橡集团暨校内网诚聘软件研发工程师</span></a></li></ul>
          <br/><br/><br/>
          ]]>
        </description>
        <pubDate>Fri, 20 Jul 2007 18:21:09 +0800</pubDate>
        <link>http://lovecpp.javaeye.com/blog/103299</link>
        <guid>http://lovecpp.javaeye.com/blog/103299</guid>
      </item>
      <item>
        <title>Delphi--没落的贵族</title>
        <author>lovecpp</author>
        <description>
          <![CDATA[
          <br/>
          作者: <a href="http://lovecpp.javaeye.com">lovecpp</a>&nbsp;
          链接：<a href="http://lovecpp.javaeye.com/blog/101323" style="color:red;">http://lovecpp.javaeye.com/blog/101323</a>&nbsp;
          发表时间: 2007年07月15日
          <br/><br/>
          声明：本文系JavaEye网站发布的原创博客文章，未经作者书面许可，严禁任何网站转载本文，否则必将追究法律责任！
          <br/><br/>
          <p><font face="Arial">一项技术是否会没落,有的会跟一两个天才扯上关系,Delphi就是如此!</font></p>
<p>从一项没落的技术中,我们可以学习些什么呢?</p>
<p>(1)先看完这两本书再谈</p>
<p><font face="Arial"><a href="http://www.doany.net/">http://www.doany.net/</a>&nbsp; --Delphi源代码分析作者--周爱民的个人网址 </font></p>
<p>李维的《Inside VCL》,有《深入浅出MFC》的意味<inside vcl=""></inside></p>
<p>(2)Delphi为什么会没落?</p>
<p>Win32已经不会再往前发展了,</p>
<p>在.net framework下,语言只是工具,核心是CLR,而不是RTL</p>
<p>(3)我们可以学习些什么?</p>
<p>-- 一种语言如何在Windows中运行:数据类型,PE,内存分配与线程</p>
<p>-- 在语言上如何包裹上组件?</p>
          <br/><br/>
          <span style="color:red;">
            <a href="http://lovecpp.javaeye.com/blog/101323#comments" style="color:red;">已有 <strong>0</strong> 人发表留言，猛击-&gt;&gt;<strong>这里</strong>&lt;&lt;-参与讨论</a>
          </span>
          <br/><br/><br/>
          <span style="color:#E28822;">JavaEye推荐</span>
          <br/>
          <ul class='adverts'><li><a href='/adverts/42' target='_blank'><span style="color:red;font-weight:bold;">搜狐网站诚聘Java、PHP和C++工程师</span></a></li><li><a href='/adverts/41' target='_blank'><span style="color:red;font-weight:bold;">北京: 千橡集团暨校内网诚聘软件研发工程师</span></a></li></ul>
          <br/><br/><br/>
          ]]>
        </description>
        <pubDate>Sun, 15 Jul 2007 21:16:59 +0800</pubDate>
        <link>http://lovecpp.javaeye.com/blog/101323</link>
        <guid>http://lovecpp.javaeye.com/blog/101323</guid>
      </item>
      <item>
        <title>Win32学习地址链接</title>
        <author>lovecpp</author>
        <description>
          <![CDATA[
          <br/>
          作者: <a href="http://lovecpp.javaeye.com">lovecpp</a>&nbsp;
          链接：<a href="http://lovecpp.javaeye.com/blog/99111" style="color:red;">http://lovecpp.javaeye.com/blog/99111</a>&nbsp;
          发表时间: 2007年07月08日
          <br/><br/>
          声明：本文系JavaEye网站发布的原创博客文章，未经作者书面许可，严禁任何网站转载本文，否则必将追究法律责任！
          <br/><br/>
          <p><font face="Arial">虽然.net Framework大行其道,还是有win32的资料的 :) ,由于是老技术,都写的透彻而深奥啊!</font></p>
<p><font face="Arial"><a href="http://www.vczx.com/tutorial/mfc/mfc.php">http://www.vczx.com/tutorial/mfc/mfc.php</a> MFC一个教程</font></p>
<p><font face="Arial"><a href="http://soft.yesky.com/lesson/36/2280536.shtml">http://soft.yesky.com/lesson/36/2280536.shtml</a>&nbsp; win32多线程,有总比没有强</font></p>
<p>&nbsp;</p>
<p><font face="Arial"><a href="http://www.ithao123.com/Windows/0011.html">http://www.ithao123.com/Windows/0011.html</a> 也许这个问题,侯捷讲的很清楚了</font></p>
<p>其实win32汇编编程也是windows编程!而且更靠近Win32API!--罗云彬的书值的一看</p>
<p><font face="Arial"><a href="http://www.cnblogs.com/unruledboy/archive/2005/06/23/179569.html">http://www.cnblogs.com/unruledboy/archive/2005/06/23/179569.html</a>&nbsp;(&nbsp; <a href="http://www.pinvoke.net/">http://www.pinvoke.net/win32API</a>&nbsp;)的.net封装---呵呵好东西!</font></p>
<p><font face="Arial"><a href="http://www.czvc.com/bbs/showforum.asp?forumid=4">http://www.czvc.com/bbs/showforum.asp?forumid=4</a>&nbsp; 还有VC/MFC/win32API的论坛!</font></p>
          <br/><br/>
          <span style="color:red;">
            <a href="http://lovecpp.javaeye.com/blog/99111#comments" style="color:red;">已有 <strong>0</strong> 人发表留言，猛击-&gt;&gt;<strong>这里</strong>&lt;&lt;-参与讨论</a>
          </span>
          <br/><br/><br/>
          <span style="color:#E28822;">JavaEye推荐</span>
          <br/>
          <ul class='adverts'><li><a href='/adverts/41' target='_blank'><span style="color:red;font-weight:bold;">北京: 千橡集团暨校内网诚聘软件研发工程师</span></a></li><li><a href='/adverts/42' target='_blank'><span style="color:red;font-weight:bold;">搜狐网站诚聘Java、PHP和C++工程师</span></a></li></ul>
          <br/><br/><br/>
          ]]>
        </description>
        <pubDate>Sun, 08 Jul 2007 20:05:57 +0800</pubDate>
        <link>http://lovecpp.javaeye.com/blog/99111</link>
        <guid>http://lovecpp.javaeye.com/blog/99111</guid>
      </item>
      <item>
        <title>WPF学习笔记连接地址</title>
        <author>lovecpp</author>
        <description>
          <![CDATA[
          <br/>
          作者: <a href="http://lovecpp.javaeye.com">lovecpp</a>&nbsp;
          链接：<a href="http://lovecpp.javaeye.com/blog/99106" style="color:red;">http://lovecpp.javaeye.com/blog/99106</a>&nbsp;
          发表时间: 2007年07月08日
          <br/><br/>
          声明：本文系JavaEye网站发布的原创博客文章，未经作者书面许可，严禁任何网站转载本文，否则必将追究法律责任！
          <br/><br/>
          <p>收集一些.net Framework的学习笔---.net多么深入人心,Win32的东西更少人研究啊.<br />
</p>
<p><font face="Arial"><a href="http://www.rainsts.net/article.asp?id=426">http://www.rainsts.net/article.asp?id=426</a>&nbsp; WCF</font></p>
<p>&nbsp;</p>
<p><font face="Arial"><a href="http://www.dotnettools.org/Blog/article.asp?id=207">http://www.dotnettools.org/Blog/article.asp?id=207</a>&nbsp; </font></p>
<p><font face="Arial"></font></p>
<p><font face="Arial">感叹:现在的程序员比DOS年代的聪明,也会赶时髦</font></p>
<p><font face="Arial"><a href="http://www.cnblogs.com/shanyou/archive/2007/07/02/803572.html">http://www.cnblogs.com/shanyou/archive/2007/07/02/803572.html</a> 对比.net和jvm对动态语言的支持.(Java5前,c#向Java学习,从Java5开始,Java向c#学习--个人观点)</font></p>
          <br/><br/>
          <span style="color:red;">
            <a href="http://lovecpp.javaeye.com/blog/99106#comments" style="color:red;">已有 <strong>0</strong> 人发表留言，猛击-&gt;&gt;<strong>这里</strong>&lt;&lt;-参与讨论</a>
          </span>
          <br/><br/><br/>
          <span style="color:#E28822;">JavaEye推荐</span>
          <br/>
          <ul class='adverts'><li><a href='/adverts/42' target='_blank'><span style="color:red;font-weight:bold;">搜狐网站诚聘Java、PHP和C++工程师</span></a></li><li><a href='/adverts/41' target='_blank'><span style="color:red;font-weight:bold;">北京: 千橡集团暨校内网诚聘软件研发工程师</span></a></li></ul>
          <br/><br/><br/>
          ]]>
        </description>
        <pubDate>Sun, 08 Jul 2007 19:38:42 +0800</pubDate>
        <link>http://lovecpp.javaeye.com/blog/99106</link>
        <guid>http://lovecpp.javaeye.com/blog/99106</guid>
      </item>
      <item>
        <title>定个学习计划</title>
        <author>lovecpp</author>
        <description>
          <![CDATA[
          <br/>
          作者: <a href="http://lovecpp.javaeye.com">lovecpp</a>&nbsp;
          链接：<a href="http://lovecpp.javaeye.com/blog/99105" style="color:red;">http://lovecpp.javaeye.com/blog/99105</a>&nbsp;
          发表时间: 2007年07月08日
          <br/><br/>
          声明：本文系JavaEye网站发布的原创博客文章，未经作者书面许可，严禁任何网站转载本文，否则必将追究法律责任！
          <br/><br/>
          <p>现在一窝蜂的都在搞WEB,不知道还有几个在捣鼓Win32的东西</p>
<p>趁现在还有精力,我还是决定把Win32的那套东西&quot;研究&quot;一下---有点像考古.</p>
<p>有两样东西不能错过:MFC和COM. 当然Jeffrey Richter的&lt;核心编程&gt;不能不读</p>
<p>但粗略看了一下,光语言门槛就够受的:C++,虽然不是C++98标准.然后需要学学MFC,当然是VC98版的那一种了,微软都已经不对之提供技术支持了,还有收集了基本MFC的几本好书:侯捷的&lt;深入浅出MFC&gt;,写的好啊!还有一本比砖头还厚的<mfc windows编程="">.--不知道.NET下的MFC是个什么样子.下一步就是COM了,Dan Box的是本应该读的书,可惜现在很难买到了.当年也没收入囊中,至今引为憾事.幸好,还有潘爱民写的一本COM的书可以读读.其实围绕COM的还有COM+,DCOM,可惜这些名词几年前还有所耳闻,有一两本书可以看看.现在已经被那时的程序员丢在书箱里了,而新生代的Windows程序员满眼尽是.net!</p>
<p>从DOS到Windows3.1/3.2到Windows9x再到WindowsXP,大家对Windows的内部机理,尤其是源码是垂涎三尺.这在2003年的Windows源码泄露事件发生之时更是演变到了一种巅狂的状态!就在那年,国内出了本的教材.也许事情到了顶峰就要走下坡路,现在很少听有人说要研究下Windows的内部机理.就连Jeffrey Richter也去研究.net了!我一直就又有个疑惑:.net跟以前的Win32有什么样的联系,Win32今后会怎么样.Win32的地位正好象Windows95时的DOS内核,也许这个比喻不太恰当.记得97年读大学的时候,Windows95很少有人使用,我们当时的计算机老师对DOS6.22非常熟悉,在课堂上对Windows95言语之间有些不以为然.而从后来的情形看,很多当时国内一流的DOS编程高手,在向Win32转变的过程中没跟上脚步.谈到这点,不能不佩服微软的战略决定:在90时代末互联网蓬勃发展之时,能够抛弃原有的编程模式,将公司的未来押在了.net上.我毕业的时候是2001年,说句实话对Java只听过其名,而J2EE实在没听过.但对.net却是听的多啊.只是那时不太明白微软想干嘛.因为那时还是VC,VB兴盛繁荣的年代,许多人认为VC程序员是非常厉害的.还知道Borland公司在编程领域是MS的强大竞争对手,他的Delphi非常优秀.如今.net已经深入人心,MS也在网络时代站住了脚跟,拥有了跟IBM,SUN这些公司竞争的武器.现在假想下,MS不去发展.net,不弄个C#出来.那么Java对MS的冲击会有多大!而如今,MS更是将自己的许多产品都准备融合.net中去,包括Office,SQL Server,甚至Windows操作系统.这可是很大的一个产品转型.</p>
<p>那么Win32API何去何从?但Don Box在其著作&lt;.net本质论&gt;中开篇就说:&quot;.net是更好的COM&quot;.COM一直是MS的精心培育的技术.从Don Box的这句话中也许可以想象一下.net的轮廓和发展方向. .net的确从Java上得到了不少的技术前进动力,虚拟机的设计理念帮了MS不小的忙.难怪,Java一面世,Bill Gates就对之赞赏不已,并给予了非常高的评价.我们知道Gates本人不仅是技术天才,也是商业奇才.所以他看待一项技术,应该不只从技术角度上讲的.另外Gates本人特别重视人才,不光识才,还爱才.为.net充当前锋的C#,其设计者就是他本人亲自从Borland公司&quot;请&quot;过来的.而这个人大家相信都耳熟能详了,不过他的名字实在不好读.一定程度上影响了他的传播度..net有许多东西,统一用.net Framework来称呼吧.但我们也知道Vista发布的时候,还有许多新鲜东西如:WCF,WPF,WF.这些东西又如何取代Win32API ? 还有一个问题;CPU正在逐步淘汰32位的.那么Win32API会不会变成Win64API?</p>
<p>现在正是从一种Windows编程模式向另外一种编程模式转变的年代.我跟你一样,正在经历!</p>
<p>&nbsp;</p>
          <br/><br/>
          <span style="color:red;">
            <a href="http://lovecpp.javaeye.com/blog/99105#comments" style="color:red;">已有 <strong>0</strong> 人发表留言，猛击-&gt;&gt;<strong>这里</strong>&lt;&lt;-参与讨论</a>
          </span>
          <br/><br/><br/>
          <span style="color:#E28822;">JavaEye推荐</span>
          <br/>
          <ul class='adverts'><li><a href='/adverts/41' target='_blank'><span style="color:red;font-weight:bold;">北京: 千橡集团暨校内网诚聘软件研发工程师</span></a></li><li><a href='/adverts/42' target='_blank'><span style="color:red;font-weight:bold;">搜狐网站诚聘Java、PHP和C++工程师</span></a></li></ul>
          <br/><br/><br/>
          ]]>
        </description>
        <pubDate>Sun, 08 Jul 2007 19:29:22 +0800</pubDate>
        <link>http://lovecpp.javaeye.com/blog/99105</link>
        <guid>http://lovecpp.javaeye.com/blog/99105</guid>
      </item>
      <item>
        <title>设计模式学习感想</title>
        <author>lovecpp</author>
        <description>
          <![CDATA[
          <br/>
          作者: <a href="http://lovecpp.javaeye.com">lovecpp</a>&nbsp;
          链接：<a href="http://lovecpp.javaeye.com/blog/45665" style="color:red;">http://lovecpp.javaeye.com/blog/45665</a>&nbsp;
          发表时间: 2007年01月10日
          <br/><br/>
          声明：本文系JavaEye网站发布的原创博客文章，未经作者书面许可，严禁任何网站转载本文，否则必将追究法律责任！
          <br/><br/>
          <p class="MsoNormal"><span style="font-family: 宋体">设计模式实际上是良好的</span><span>OO</span><span style="font-family: 宋体">思想的一种提炼。每一种设计模式后面都体现了一种良好的</span><span>OO</span><span style="font-family: 宋体">思路，这些思路对于解决软件中常见的&ldquo;</span><span>change</span><span style="font-family: 宋体">&rdquo;问题有很大的适应性，而每种模式又有自己独特的解决思路，带有一定的通用性。而组合各种模式又可以解决许多常见问题。不可否认的是，还存在一些未经总结的设计模式。实际上，你自己也可以总结一些模式出来。无论怎样，设计模式仍然是面向对象，它不是新东西，也没有必要言必称设计模式</span><span>&mdash;</span><span style="font-family: 宋体">似乎不懂设计模式就落伍了，但给</span><span>OO</span><span style="font-family: 宋体">的开发者提供一个言简意赅的沟通桥梁。</span></p>
<p class="MsoNormal"><span style="font-family: 宋体">&nbsp;<br />
设计模式告诉了我们什么是好的</span><span>OO</span><span style="font-family: 宋体">思想，思考如何更好的应用</span><span>OO</span><span style="font-family: 宋体">的思想</span><span>&mdash;</span><span style="font-family: 宋体">虽然还是那几个耳熟能详的术语：封装、继承、组合、多态。</span></p>
<p class="MsoNormal"><span style="font-family: 宋体">&nbsp;<br />
设计模式首先是对传统的</span><span>OO</span><span style="font-family: 宋体">使用方法的矫正：如针对接口编程而不是实现；优先使用组合，而不是继承。其次是在原来理解上的突破：封装是对变化而言的，不仅仅是属性和方法的集合。类不仅是现实事物的抽象，同时它还具有责任。更有创新：依赖式注入。</span></p><p class="MsoNormal">&nbsp;</p><p class="MsoNormal">=====</p><p class="MsoNormal">Part2--2008-1-11</p><p class="MsoNormal">最近学了一点Ruby,发现很少提及设计模式之类的东西,就连AOP这样的高级玩意,有的帖子也讲Ruby并不需要.反正在Java中提的很多的&quot;热词&quot;,在Ruby的世界中都是&quot;冷&quot;的.</p><p class="MsoNormal">设计模式,AOP,泛型这样的东西为什么对于Java是必要的？</p><p class="MsoNormal">因为它缺！这样回答是一句废话.</p><p class="MsoNormal">换个说法: Java在语法层面先天缺少一些超前的设计,本来它就是对于C++的改进,冲着简化C++的使用而去的.在C++中使用复杂的地方,我们都会觉得用Java要方便.再联想到EJB的设计,更是让人觉得SUN的工程师们是怎样的思考方式了:基于对于现有技术的改进,而鲜有加入新技术.在对于改进现有技术的能力上,的确有不少创新点.比如跨平台的设计,多线程直接借助语言层面,EJB的分布式处理.但是在改进Java自身的能力上,却很少有惊艳之处:JDK5的泛型,JDK6的脚本语言支持.Java对于泛型的设计实在赶不上C++！而加入对动态语言的支持,不外乎扩展JVM的能力,也是希望动态语言能利用原有的Java资源.这是整合,接旧,而不是改进！</p><p class="MsoNormal">Java最大的贡献在于引领了计算机技术的又一次勃发,看看在Java出现后计算机界出现的巨大变化就可以想象得到了－－看看M$就很清楚这一点了. </p>
          <br/><br/>
          <span style="color:red;">
            <a href="http://lovecpp.javaeye.com/blog/45665#comments" style="color:red;">已有 <strong>0</strong> 人发表留言，猛击-&gt;&gt;<strong>这里</strong>&lt;&lt;-参与讨论</a>
          </span>
          <br/><br/><br/>
          <span style="color:#E28822;">JavaEye推荐</span>
          <br/>
          <ul class='adverts'><li><a href='/adverts/42' target='_blank'><span style="color:red;font-weight:bold;">搜狐网站诚聘Java、PHP和C++工程师</span></a></li><li><a href='/adverts/41' target='_blank'><span style="color:red;font-weight:bold;">北京: 千橡集团暨校内网诚聘软件研发工程师</span></a></li></ul>
          <br/><br/><br/>
          ]]>
        </description>
        <pubDate>Wed, 10 Jan 2007 09:34:50 +0800</pubDate>
        <link>http://lovecpp.javaeye.com/blog/45665</link>
        <guid>http://lovecpp.javaeye.com/blog/45665</guid>
      </item>
  </channel>
</rss>