zhujian

揣着梦想骑驴找马但不虐待驴
posts - 10, comments - 7, trackbacks - 0, articles - 0
  C++博客 :: 首页 :: 新随笔 :: 联系 :: 聚合  :: 管理

日历

<2025年4月>
303112345
6789101112
13141516171819
20212223242526
27282930123
45678910

搜索

  •  

积分与排名

  • 积分 - 16923
  • 排名 - 910

最新评论

  • 1. re: 求解负载均衡算法
  • 具体如何分配负载,那应该实际问题实际处理吧
  • --Vincent
  • 2. re: 求解负载均衡算法
  • @饭中淹
    量化是不是说如果3个服务器负载0.7, 0.5, 0.2的话,每7个连接分配给1,5个给2,2个给3,依次轮循?
  • --逐渐
  • 3. re: 求解负载均衡算法
  • 首先确定你的负载到底是什么,CPU,内存,还是网络IO。
    然后量化并监控你的负载情况,并集中进行管理。
    最后,根据你集中管理的量化的负载情况,分配新到来的用户的接入点。
  • --饭中淹
  • 4. re: 关于高内聚低偶合
  • @arrow8209
    这种设计模式挺好,但是特定算法与参数存在向下转换问题,添加算法增多,不同算法差异增大的话可能会有些麻烦.谢谢你,我再想想....
  • --逐渐
  • 5. re: 关于高内聚低偶合
  • 评论内容较长,点击标题查看
  • --arrow8209

pimp idiom降低程序偶合

Posted on 2011-01-16 16:42 逐渐 阅读(1584) 评论(0)  编辑 收藏 引用
pimp idiom的详细说明可以访http://www.gotw.ca/gotw/024.htm(这个网站好像被墙了,很讽刺),其实就是将定义与实现分开。

在我博客上一篇随笔《关于高内聚低偶合》提到的问题,pimp idiom对降低程序偶合有一定的帮助,下面是我的理解思路,大家有好的意见或者更好的方法可以一起讨论下:

 1 class Para_Base
 2 {
 3     //
 4 };
 5 
 6 class GA_Para
 7     :public Para_Base
 8 {
 9     //
10 };
11 
12 class Alg_Base
13 {
14 public:
15     Alg_Base(Para_Base *p)
16         :m_pPara(p) { }
17     //
18 protected:
19     Para_Base *m_pPara;
20 };
21 
22 class GA_Alg
23     :public Alg_Base
24 {
25     //    
26 public:
27     GA_Alg(GA_Para *pGA)
28         :Alg_Base(pGA) { }
29 };

参数基类Para_Base和特定的算法参数类GA_Para都没有改变。

算法基类Alg_Base的模板去掉了,同时添加了一个指向参数基类Para_Base的指针成员变量,而以前用的是模板指针。并且修改了构造函数,构造函数接受一个指向Para_Base的指针并赋给m_pPara。

特定算法类GA_Alg继承自算法基类Alg_Base,但修改了构造函数,接受指向GA_Para的一个指针,然后调用父类Alg_Base的构造函数,这样的结果便是m_pPara指向的是GA_Para实例,等价于Para_Base *m_pPara = new GA_Para();

相对于上一篇提到的模板实现,pimp idiom的偶合更低些,而且pimp idiom应用也非常广泛。

只有注册用户登录后才能发表评论。
网站导航: 博客园   IT新闻   BlogJava   博问   Chat2DB   管理