问题列表 - 第13554页

分离此代码的问题的最佳方法是什么?

在上一个问题中,Herbie博士对已接受答案的评论之一是我的方法执行了两项职责......即更改数据和保存数据.

我想弄清楚的是在我的情况下分离这些问题的最佳方法.

继续我的示例有一个通过NHibernate检索的Policy对象....

我目前将策略设置为非活动状态的方式如下:

Policy policy = new Policy();
policy.Status = Active;

policyManager.Inactivate(policy);

//method in PolicyManager which has data access and update responsibility
public void Inactivate(Policy policy)
{
    policy.Status = Inactive;
    Update(policy);
}
Run Code Online (Sandbox Code Playgroud)

如果我将数据访问和数据更新的责任分开,那么最好的方法是什么呢?

最好让PolicyManager(充当dao的网关)管理Policy对象的状态:

Policy policy = new Policy();
policy.Status = Active;

policyManager.Inactivate(policy);
policyManager.Update(policy);

//method in PolicyManager
public void Inactivate(Policy policy)
{
    policy.Status = Inactive;
}
Run Code Online (Sandbox Code Playgroud)

或者让Policy对象维护它自己的状态,然后使用manager类将信息保存到数据库:

Policy policy = new Policy();
policy.Status = Active;

policy.Inactivate();

policyManager.Update(policy);

//method in Policy
public void Inactivate()
{
    this.Status …
Run Code Online (Sandbox Code Playgroud)

c# separation-of-concerns

5
推荐指数
1
解决办法
240
查看次数

2
推荐指数
1
解决办法
3262
查看次数

你如何混合旧式和新式Python类?

我已经看过关于这个主题的几个问题,但我还没有找到明确的答案.

我想知道在新的Python代码库中使用旧式类的正确方法.比方说,例如,我有两个固定类,一个.如果我想要子类AB,并转换为新式类(A2B2),这是有效的.但是,如果我想从A2B2创建新的C类,则会出现问题.

因此,是否可以继续使用此方法,或者如果任何基类被定义为旧式,那么所有类都必须符合旧式吗?

请参阅示例代码以获得说明:

class A:
   def __init__(self):
      print 'class A'

class B:
   def __init__(self):
      print 'class B'

class A2(A,object):
   def __init__(self):
      super(A2, self).__init__()
      print 'class A2'

class B2(B,object):
   def __init__(self):
      super(B2, self).__init__()
      print 'class B2'

class C(A2, B2):
   def __init__(self):
      super(C,self).__init__()
      print 'class C'

A2()
print '---'
B2()
print '---'
C()
Run Code Online (Sandbox Code Playgroud)

这段代码的输出:

class A
class A2
---
class B
class B2 …
Run Code Online (Sandbox Code Playgroud)

python class instantiation multiple-inheritance

7
推荐指数
1
解决办法
4031
查看次数

扭转字符串

我有一个字符串的内容,我必须使用python反转顺序.内容是

  1. 蟒蛇
  2. Java的
  3. 微软

python

-1
推荐指数
1
解决办法
1165
查看次数

解析数字时scanf()和strtol()/ strtod()之间的区别

注意:我完全重写了这个问题,以更恰当地反映出我为此设置的赏金.请原谅与已经给出的答案有任何不一致之处.我不想创建一个新问题,因为之前的答案可能会有所帮助.


我正在努力实现一个C标准库,并对标准的一个特定角落感到困惑.

该标准定义了由接受数字格式scanf函数族(%d,%I,%U,%O,%X)在用于定义而言strtol,strtoul,和strtod.

该标准还规定,fscanf()只会将最多一个字符放回输入流中,因此一些序列可以接受strtol,strtoul并且strtod是不可接受的fscanf(ISO/IEC 9899:1999,脚注251).

我试图找到一些会表现出这种差异的价值观.事实证明,十六进制前缀"0x",后跟不是十六进制数字的字符,就是两个函数系列不同的情况.

有趣的是,很明显没有两个可用的C库似乎在输出上达成一致.(请参阅本问题末尾的测试程序和示例输出.)

我想听到的是解析"0xz"时会被视为符合标准的行为?.理想情况下引用标准中的相关部分来说明问题.

#include <stdio.h>
#include <stdlib.h>
#include <assert.h>

int main()
{
    int i, count, rc;
    unsigned u;
    char * endptr = NULL;
    char culprit[] = "0xz";

    /* File I/O to assert fscanf == sscanf */
    FILE * fh = fopen( "testfile", "w+" );
    fprintf( fh, "%s", culprit );
    rewind( fh );

    /* fscanf …
Run Code Online (Sandbox Code Playgroud)

c standards standards-compliance

12
推荐指数
1
解决办法
4811
查看次数

c# - 如何使用sharpsvn客户端读取文件的每个修订版?

如何使用 c# 使用sharpsvn 客户端读取文件的每个修订版?不是版本号,而是每个版本中文件的内容......

c# sharpsvn

5
推荐指数
1
解决办法
2980
查看次数

如何将`git diff --color-words`的输出转换为HTML?

对于处理散文的文本,以纯文本形式存储,我非常喜欢输出git diff --color-words,但我不喜欢它依赖于ANSI终端转义序列的方式.我想获得可用于转换为HTML的输出,某种用户友好的原始字符显示,或生成两个文件之间差异的统计信息.

我更喜欢Perl(包括CPAN),但几乎可以解决任何问题.

git diff

7
推荐指数
1
解决办法
2032
查看次数

将<table>中的数据与PHP匹配的最有效方法是什么?

例如,从html中删除键/值对,如下所示:

<tr> 
          <td id="td3"  class="td3"  bgcolor="#FFFFFF" colspan="4">? Related Information </td>

        </tr>
        <tr> 
          <td id="td5" class="td5" width="10%">job title?</td>
          <td id="td5" class="td5" width="90%" colspan="3">Sales Representitive</td>
        </tr>
        <tr> 
          <td id="td5" class="td5" width="10%">Date?</td>

          <td id="td5" class="td5" width="40%">2009-9-15</td>
        </tr>
        <tr> 
          <td id="td5" class="td5" width="10%">Location?</td>

          <td id="td5" class="td5" width="40%">Jiangyin</td>
        </tr>
        <tr> 
          <td id="td5" class="td5" width="10%">Degree:</td>
          <td id="td5" class="td5" width="40%">Bachelor</td>

          <td id="td5" class="td5" width="10%">Major?</td>
          <td id="td5" class="td5" width="40%">No limit</td>
        </tr>
        <tr> 
          <td id="td5" class="td5" width="10%">Sex?</td>
          <td id="td5" class="td5" width="40%">No limit</
        </tr>
        <tr> 
          <td id="td5" class="td5" width="10%">Type?</td>
          <td …
Run Code Online (Sandbox Code Playgroud)

html php regex

0
推荐指数
1
解决办法
121
查看次数

Sphinx搜索引擎,几个快速问题

所以,我刚刚开始阅读这篇文章,我以前从未在PHP中实现过搜索.我有几个问题,我想知道:

  • 通过事物的声音,Sphinx需要一个"守护进程",一个在后台运行的程序来运行?
  • 假设我构建了mySQL表的索引,然后用户上传了另一条记录.为了显示此记录的搜索,每次用户更新/创建记录时,我是否必须反复构建索引?

谢谢.

indexing search sphinx

3
推荐指数
1
解决办法
1480
查看次数

iPhone-SDK:从段落字符串中删除空格?

我在一个字符串中有两个段落.但是内容在段落字符串之间有很多空格.我想从这个大段落字符串中删除空格.我尝试使用NSString*outPutStr = [outPutStr stringByTrimmingCharactersInSet:[NSCharacterSet whitespaceCharacterSet]]; 但它不会删除段落字符串中的空格.它什么都不做.

有人可以指导我样品吗?

谢谢.

来福/

iphone

0
推荐指数
1
解决办法
5868
查看次数