﻿<?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>C++博客-Binormal-最新评论</title><link>http://www.cppblog.com/shilei230/CommentsRSS.aspx</link><description>The genuine programmers use C++</description><language>zh-cn</language><pubDate>Thu, 30 Jan 2014 10:57:54 GMT</pubDate><lastBuildDate>Thu, 30 Jan 2014 10:57:54 GMT</lastBuildDate><generator>cnblogs</generator><item><title>re: Torque开源随想</title><link>http://www.cppblog.com/shilei230/archive/2012/10/23/193557.html#193717</link><dc:creator>ljj</dc:creator><author>ljj</author><pubDate>Tue, 23 Oct 2012 03:32:00 GMT</pubDate><guid>http://www.cppblog.com/shilei230/archive/2012/10/23/193557.html#193717</guid><description><![CDATA[Torque那烂代码，看着就烦，bug一大堆，代码间藕断丝连严重。<img src ="http://www.cppblog.com/shilei230/aggbug/193717.html" width = "1" height = "1" /><br><br><div align=right><a style="text-decoration:none;" href="http://www.cppblog.com/shilei230/" target="_blank">ljj</a> 2012-10-23 11:32 <a href="http://www.cppblog.com/shilei230/archive/2012/10/23/193557.html#193717#Feedback" target="_blank" style="text-decoration:none;">发表评论</a></div>]]></description></item><item><title>re: 射击类三维游戏引擎</title><link>http://www.cppblog.com/shilei230/archive/2009/08/30/13087.html#94812</link><dc:creator>diwayou</dc:creator><author>diwayou</author><pubDate>Sun, 30 Aug 2009 07:35:00 GMT</pubDate><guid>http://www.cppblog.com/shilei230/archive/2009/08/30/13087.html#94812</guid><description><![CDATA[数学毕业的做程序幸福啊<img src ="http://www.cppblog.com/shilei230/aggbug/94812.html" width = "1" height = "1" /><br><br><div align=right><a style="text-decoration:none;" href="http://www.cppblog.com/shilei230/" target="_blank">diwayou</a> 2009-08-30 15:35 <a href="http://www.cppblog.com/shilei230/archive/2009/08/30/13087.html#94812#Feedback" target="_blank" style="text-decoration:none;">发表评论</a></div>]]></description></item><item><title>re: Cg之我见</title><link>http://www.cppblog.com/shilei230/archive/2009/08/30/13924.html#94811</link><dc:creator>diwayou</dc:creator><author>diwayou</author><pubDate>Sun, 30 Aug 2009 07:31:00 GMT</pubDate><guid>http://www.cppblog.com/shilei230/archive/2009/08/30/13924.html#94811</guid><description><![CDATA[国内主要是做网游的，对那些的追求就少了些，做单机那才是有激情的事情啊，看看《使命召唤》激动人心的游戏<img src ="http://www.cppblog.com/shilei230/aggbug/94811.html" width = "1" height = "1" /><br><br><div align=right><a style="text-decoration:none;" href="http://www.cppblog.com/shilei230/" target="_blank">diwayou</a> 2009-08-30 15:31 <a href="http://www.cppblog.com/shilei230/archive/2009/08/30/13924.html#94811#Feedback" target="_blank" style="text-decoration:none;">发表评论</a></div>]]></description></item><item><title>re: 反驳极限编程的四点理由</title><link>http://www.cppblog.com/shilei230/archive/2008/07/28/27657.html#57353</link><dc:creator>LOGOS</dc:creator><author>LOGOS</author><pubDate>Mon, 28 Jul 2008 07:22:00 GMT</pubDate><guid>http://www.cppblog.com/shilei230/archive/2008/07/28/27657.html#57353</guid><description><![CDATA[看到了不得的东西<br>留名关注<img src ="http://www.cppblog.com/shilei230/aggbug/57353.html" width = "1" height = "1" /><br><br><div align=right><a style="text-decoration:none;" href="http://www.cppblog.com/shilei230/" target="_blank">LOGOS</a> 2008-07-28 15:22 <a href="http://www.cppblog.com/shilei230/archive/2008/07/28/27657.html#57353#Feedback" target="_blank" style="text-decoration:none;">发表评论</a></div>]]></description></item><item><title>re: 反驳极限编程的四点理由</title><link>http://www.cppblog.com/shilei230/archive/2008/07/28/27657.html#57339</link><dc:creator>jiero</dc:creator><author>jiero</author><pubDate>Mon, 28 Jul 2008 04:28:00 GMT</pubDate><guid>http://www.cppblog.com/shilei230/archive/2008/07/28/27657.html#57339</guid><description><![CDATA[我认为你应该好好的去看看设计模式这本书，你对极限编程恐怕也只是肤浅的理解，何谈反驳？<img src ="http://www.cppblog.com/shilei230/aggbug/57339.html" width = "1" height = "1" /><br><br><div align=right><a style="text-decoration:none;" href="http://www.cppblog.com/shilei230/" target="_blank">jiero</a> 2008-07-28 12:28 <a href="http://www.cppblog.com/shilei230/archive/2008/07/28/27657.html#57339#Feedback" target="_blank" style="text-decoration:none;">发表评论</a></div>]]></description></item><item><title>re: 软件复用级别之我见[未登录]</title><link>http://www.cppblog.com/shilei230/archive/2007/08/13/12705.html#29901</link><dc:creator>shilei230</dc:creator><author>shilei230</author><pubDate>Mon, 13 Aug 2007 05:07:00 GMT</pubDate><guid>http://www.cppblog.com/shilei230/archive/2007/08/13/12705.html#29901</guid><description><![CDATA[软件复用无止境，存在着一个粒度的问题。一个基本的原则就是：封装变化，依赖抽象。所以通过面向对象而不是面向机器的方式来解决问题，就能够在问题域把变化隔离出来，从而获得一个稳定的框架。这篇文章讲的就是这个意思。<img src ="http://www.cppblog.com/shilei230/aggbug/29901.html" width = "1" height = "1" /><br><br><div align=right><a style="text-decoration:none;" href="http://www.cppblog.com/shilei230/" target="_blank">shilei230</a> 2007-08-13 13:07 <a href="http://www.cppblog.com/shilei230/archive/2007/08/13/12705.html#29901#Feedback" target="_blank" style="text-decoration:none;">发表评论</a></div>]]></description></item><item><title>通用软部件</title><link>http://www.cppblog.com/shilei230/archive/2007/08/11/12705.html#29755</link><dc:creator>yuxianm   </dc:creator><author>yuxianm   </author><pubDate>Sat, 11 Aug 2007 02:41:00 GMT</pubDate><guid>http://www.cppblog.com/shilei230/archive/2007/08/11/12705.html#29755</guid><description><![CDATA[推荐一篇文章:<br>摘自《通用软部件应用范围与边界》<br>原文引用地址：<a target="_new" href="http://www.sciencenet.cn/blog/user_content.aspx?id=4643">http://www.sciencenet.cn/blog/user_content.aspx?id=4643</a> <br>原作者：程学先等<br>对通用软部件（简称部件）作清晰的界定将有利于部件技术的发展。1、部件是粗粒度的可通用于各个系统的代码封装体。部件是应用系统的顶级模块，是包括模块级人机交互界面、数据控制（包括数据完整性约束、安全性控制）、数据变换、通信、代码变换、简单数据处理操作等代码的封装体，它的每一次复用将建立系统的一个程序模块。相比较而言，对象，是类的复用（不为通用于不同程序的复用而设计的类，例如JAVA中大量类，不在本文中讨论），是类的实例。类是单个数据级（数据项、域、单表）的人机交互界面、数据域完整性控制、简单操作控制（消息驱动）等代码的封装体，它的每一次复用将建立程序模块中一个控件。为了使类能通用于任何程序，调用时需要给出接口参数，例如名称、所代表的数据、其原始模板（生成该控件的类的名称及相关特性）、位置与形状等几何与图形特征、域完整性约束条件、控件的操作特性等等，这些内容用“属性”来表示。为让它能被用到不同程序中去并实现不同的功能，利用许多方法来实现。这些方法在复用到其他地方时，代码常要由程序员填写，这些手工填写的内容一般不能复用。尽管从类派生生成对象的过程需要人工操作，存在大量无法复用的部分，但是该技术对于提高程序设计效率与质量发挥了大家都公认的作用。而部件将一个模块中所有控件都封装了进去，处理好了控件间数据相互联系的问题；它包括了数据变换与通信接口等内容，也就处理好了模块对外的联系，有些还封装了全部数据操作代码。这些内容对于程序员与用户都是一个黑盒，在设计时无须考虑其内部的实现，使设计简化，统一设计的接口参数变量不到20个，（如果有数据完整性控制等特殊要求再另外通过常规接口参数表、数据变换接口参数表（字典表）、通信接口参数表等传递控制信息）。这些将使利用部件技术构建的系统具有更高的代码复用率。但是，一个系统要求完全复用是十分困难的，一般在后台进行业务逻辑和数据处理的部分，例如复杂的查询、特殊的导出、复杂统计与报表、数据分析、编制计划或其他决策支持程序，还需要人工设计补充。 2、软件复用无止境，软件发展与软件复用研究始终紧密联系在一起。部件技术也会遇到面向对象技术同样的问题：部件的代码冗余会更大，处理速度会进一步受到影响，适用范围会更小。但是也一定会促进计算机理论与技术的发展，会将计算机应用的范围与应用的深度再向前推进，将要求部件技术自身不断向前发展，软件复用实现的难度会越来越大，但发展不会停止。在自适应工资管理系统一文中看到该设计不仅可以复用到其他行业的工资管理上，还可以用到各种单一主数据表、所有处理都以字段为基本单位的其他系统或子系统中，可以看成是系统级或子系统级的复用产品，但它是不能被称为部件的，也不要求封装。关于部件的研究还仅仅是开始，需要我们更多地去投入与研究。 3、在设计部件时要尽可能地将非复用部分独立出来。关于数据处理的部分变化很多，要想所有处理代码都来自复用是不现实的，只能逐步积累，慢慢提高这一部分的复用率。这一部分的设计往往还需要以往的设计方法。但是，为了取得较强的适应性与可扩展性，提高程序设计效率，应当尽可能地将这一部分代码从部件封装体中剥离出来、形成相对独立的部分。在复杂查询程序与复杂报表设计时我们考虑了这一问题。可以设计这样的部件：该部件封装了界面等等内容，只将处理代码放到数据库中，这一部分内容允许程序员与用户自己维护，在复用时从数据库中直接按程序号（记录号）取出存放的代码并执行。这样，程序员操心的将只是若干面向过程代码，工作量与设计难度将都下降。也具有很大意义。   <br><img src ="http://www.cppblog.com/shilei230/aggbug/29755.html" width = "1" height = "1" /><br><br><div align=right><a style="text-decoration:none;" href="http://www.cppblog.com/shilei230/" target="_blank">yuxianm   </a> 2007-08-11 10:41 <a href="http://www.cppblog.com/shilei230/archive/2007/08/11/12705.html#29755#Feedback" target="_blank" style="text-decoration:none;">发表评论</a></div>]]></description></item><item><title>re: 反驳极限编程的四点理由</title><link>http://www.cppblog.com/shilei230/archive/2007/07/10/27657.html#27799</link><dc:creator>eXile</dc:creator><author>eXile</author><pubDate>Tue, 10 Jul 2007 08:20:00 GMT</pubDate><guid>http://www.cppblog.com/shilei230/archive/2007/07/10/27657.html#27799</guid><description><![CDATA[极限编程的出现正是在现有开发模式下出现一系列问题后的一些探索。不过，适合自己的才是最好的，如果你觉得现有的的知识和经验可以为你解决这些问题，就没有必要为敏捷而敏捷<img src ="http://www.cppblog.com/shilei230/aggbug/27799.html" width = "1" height = "1" /><br><br><div align=right><a style="text-decoration:none;" href="http://www.cppblog.com/shilei230/" target="_blank">eXile</a> 2007-07-10 16:20 <a href="http://www.cppblog.com/shilei230/archive/2007/07/10/27657.html#27799#Feedback" target="_blank" style="text-decoration:none;">发表评论</a></div>]]></description></item><item><title>re: 反驳极限编程的四点理由[未登录]</title><link>http://www.cppblog.com/shilei230/archive/2007/07/10/27657.html#27776</link><dc:creator>shilei230</dc:creator><author>shilei230</author><pubDate>Tue, 10 Jul 2007 01:42:00 GMT</pubDate><guid>http://www.cppblog.com/shilei230/archive/2007/07/10/27657.html#27776</guid><description><![CDATA[极限编程的测试驱动所说的测试指的是单元测试，在前面的迭代计划阶段，可以认为它是在做需求分析和概要设计的事情。你说的理论是对的，但是实践的时候会很痛苦，因为很可能走弯路，你将不停地否认或修正自己最初的不成熟的设计，你也说了“强迫”，对吗？<br>对于有经验的程序员，他在分析需求的时候就大致知道要用什么设计模式，这些都是经过实践检验过的架构，绝对有助于写测试，也是软件复用的一个表现。如果不运用这些先验知识加以引导，每次都要摸着石头过河，目标能否实现是一个问题，即使实现了也可能要走不少弯路。不过如果迭代计划所做的卡足够小的话这个问题将不会太明显。<br>还有就是测试驱动更像是面向机器编程（先给出目标，然后根据机器的特性来实现），不像是面向对象编程（按照问题域来构造机器的实现）。<br>再有设计模式之类的架构，并不是实现细节，它搭的是一个框架。<br>欢迎反驳，呵呵<img src ="http://www.cppblog.com/shilei230/aggbug/27776.html" width = "1" height = "1" /><br><br><div align=right><a style="text-decoration:none;" href="http://www.cppblog.com/shilei230/" target="_blank">shilei230</a> 2007-07-10 09:42 <a href="http://www.cppblog.com/shilei230/archive/2007/07/10/27657.html#27776#Feedback" target="_blank" style="text-decoration:none;">发表评论</a></div>]]></description></item><item><title>re: 反驳极限编程的四点理由</title><link>http://www.cppblog.com/shilei230/archive/2007/07/09/27657.html#27755</link><dc:creator>空明流转</dc:creator><author>空明流转</author><pubDate>Mon, 09 Jul 2007 10:41:00 GMT</pubDate><guid>http://www.cppblog.com/shilei230/archive/2007/07/09/27657.html#27755</guid><description><![CDATA[小伙子不错，还知道有极限编程这么回事。<img src ="http://www.cppblog.com/shilei230/aggbug/27755.html" width = "1" height = "1" /><br><br><div align=right><a style="text-decoration:none;" href="http://www.cppblog.com/shilei230/" target="_blank">空明流转</a> 2007-07-09 18:41 <a href="http://www.cppblog.com/shilei230/archive/2007/07/09/27657.html#27755#Feedback" target="_blank" style="text-decoration:none;">发表评论</a></div>]]></description></item></channel></rss>