`
kofsky
  • 浏览: 201750 次
  • 性别: Icon_minigender_1
  • 来自: 重庆
社区版块
存档分类
最新评论
文章列表
摘录自:敏捷软件开发 1.僵化性(Rigidity): 很难对系统进行改动,因为每个改动都会迫使许多对系统其他部分的其它改动。 2.脆弱性(Fragility): 对系统的改动会导致系统中和改动的地方在概念上无关的许多地方出现问题。 3.牢固性(Immobility): 很难解开系统的纠结,使之成为一些可在其他系统中重用的组件。 4.粘滞性(Viscosity): 做正确的事情比做错误的事情要困难。 5.不必要的复杂性(Needless Complexity): 设计中包含有不具任何直接好处的基础结构。 6.不必要的重复(Needless Repetition): 设计中包含有重复的结构,而该重 ...
    有时候发现自己兴趣挺广的,编程,设计,图像处理视频分析,模式识别,文本分析之类,都有点兴趣。看这篇文章 http://blog.csdn.net/lanphaday/archive/2007/08/13/1741185.aspx, 这个想法确实不错:使用文本和HTML代码的密度来决定一行文件是否应该输出,如果选取的内容是正文,那么其中的HTML标签肯定不高。挺有意思的,有时间可以试试这个想法,做一下网页提纯的实验。
 xmlrpc++提供了一个很好的架构,服务器端方法只需要继承XmlRpcServerMethod,然后实现方法execute,就可以在服务器端新增方法(客户便可以在服务器端执行这个方法了)。非常的简单且方便。但其也有一个最大的问题,就是屏蔽了太多的细节。如果不修改这个库,你无法从外面获得更详细的信息,比如,当前已连接的客户数量,当前连接客户的信息,当前是哪个客户在请求方法等。当你需要这些信息时,便感到有些束手无策。没有办法,只有修改库了。需求:在服务器端执行某方法时,需要知道,当前请求执行该方法的客户端socket信息。 修改部分如下: 1 新增类:SocketInfo,包含IP与端口,没有用 ...
bool XmlRpcServer::bindAndListen(int port, int backlog /**//*= 5*/)...{  int fd 
近用c语言做文件操作比较频繁,记几个常用的操作 获得文件大小: fseek(fp, 0, SEEK_END);int fileSize = ftell(fp);rewind(fp); 读取指定位置的数据块: fseek( fp,offset,SEEK_SET );int num_read = fread(buf, 1, length, fp);  删除文件 int res = access( filename,0 ); // 判断文件是否存在 if ( res == 0 ) {  res = remove( filename );// 删除文件  return ( res ==0 ); } 在指 ...
   界面A,接收用户输入    线程B,有任意多个,由A创建。B有一个状态标志,A通过设置B的状态标签来控制线程B。B实时将执行结果返回给A。     该怎么设计?     我现在的设计的是烂的。   class A extends wxFrame    {             DispCtrl dispCtrl; // 显示控件             createThread()   {   ThreadB *b = new ThreadB(); b->start();     // 创建线程             ThreadCtrl()         // 控制线程B ...
  即便是一个很简单的程序,随着开发的深入,时间的延伸,都会变得慢慢的臃肿与庞大。程序在逐渐衍生的时候,前期的设计会变得越来越模糊,系统会逐渐脆弱,对变化也越来越敏感。到了后期,一般只能在合适的地方增加程序,而不能修改。因为即使是一个小小的修改,都会导致一系列新的问题,并可能产生一些莫名其妙的bug。于是程序会逐渐变得臃肿,重复代码逐渐增加,莫名其妙的问题逐渐增多。写这样的程序完全是种折磨。  做好前期的工作会使这种感觉得到改善:  1.完善的需求    应该包括目前所有的需求,以及潜在的需求。    潜在的需求收集是最困难的。    当前需求的修改 与 新增需求     2.良好的设计     ...

视频监控

     视频监控的优势:     1. 可以利用不同帧的差值信息     2. 信息比较丰富      难点:      1. 摄像头略微移动,则会产生很大的噪音      2. 实时处理要求速度快      3. 视频的突发情况要多许多       opencv 有一个bug,  直接设置兴趣区域 cvSetImageROI,在停止监控的时候会报错,报 cvInitMatHeader.cpp 有个矩阵行或者列数存在问题。如果不直接设置ROI,检测整幅图像后在筛选,速度又慢了许多。难办。       
1.访问单个字符  可以通过下标操作符"[]"或者成员函数"at()"访问单个字符。不同之处在于, [] 不会进行范围检查,而at() 会进行范围检查。也就是说,当访问一个不存在的字符位置时,采用 [] 将会获得不可预知的结 ...
杂谈出了个沙发党强人:抢沙发专业人士  人如其名,专业人士,只要是稍微火点的帖子,他都一屁股把沙发给占了  沙发词如下: “抢走一个沙发,干卿底事?” “昨夜西风凋碧树,独坐沙发,望尽天涯路。” “一片沙发都不见,知向谁边”   观察了一下这厮的发帖时间 一般1到2分钟发一贴,也有3-4分钟发一贴的 这应该是受天涯发贴时间限制   猜测一下 这厮肯定不是个人回复的,原因有四: 1、发帖时间短 2、发帖量大 3、同一段时间回帖信息都是一致的 4、抢沙发抢得很准!   应该是有一个小程序 一刻不停的下载杂谈主页,分析回复数量 如果回复数量为0 那么,如果时间允许(不超过天涯发帖时间限制),马上将回复 ...
1、MD5算法是对输入的数据进行补位,使得如果数据位长度LEN对512求余的结果是448。即数据扩展至K*512+448位。即K*64+56个字节,K为整数。 具体补位操作:补一个1,然后补0至满足上述要求 2、补数据长度: 用一个64位的数字表示数据的原始长度B,把B用两个32位数表示。这时,数据就被填补成长度为512位的倍数。 3. 初始化MD5参数 四个32位整数 (A,B,C,D) 用来计算信息摘要,初始化使用的是十六进制表示的数字 A=0X01234567 B=0X89abcdef C=0Xfedcba98 D=0X76543210 4、处理位操作函数 X,Y,Z为32位整数。 ...
【 原文由 张 卿 所发表 】  在网络程序中,一个进程同时处理多个文件描述符是很常见的情况。select()系统调用可以使进程检测同时等待的多个I/O设备,当没有设备准备好时,select()阻塞,其中任一设备准备好时,select()就返回。 select()的调用形式为: #include <sys/select.h> #include <sys/time.h> int select(int maxfd, fd_set *readfds, fd_set *writefds, fe_set *exceptfds, const struct timeval *timeo ...
1   参数类型 XmlRpcValue    标量数据类型(scalar )  参数值<value>可以是标量,用类型标签将值包括起来。如果没指定类型,则认为是string类型。   <i4>或者 <int>表示 4字节带符号整数值       <boolean>表示 0 (false) or 1 (true)       <string>表示     字符串       <double>表示     双精度带符号浮点值       <dateTime.iso8601>表示 日期/时间   <base64 ...
有一个random number generator,是生成真实的随机数,而不是伪随机数,这个东西会生成几千亿个32位整数,打印出现次数前100的整数。 平面上N个点,求一条直线,穿过的点数最多 Given 1 GB memory, input a file which contians 4 billion integers, ...
平台:Visual C++6.0 #include "stdafx.h"#include <time.h>#include <stdio.h>int main(int argc, char* argv[])...{
Global site tag (gtag.js) - Google Analytics