有关问题空间与解空间

问题空间与解空间
    在C++编程思想中有段关于问题空间与解空间的描述,如下:
    为适合于某问题而设计的类当然能更好地表达这个问题。这意味着写代码时,程序员在用问题空间的术语描述问题的解(例如“把锁链放在箱子里”),而不是用计算机的术语,也就是解空间的术语,描述问题的解(例如“设置芯片的一位即合上继电器”)。
    对于 问题空间 与 解空间 不理解,求解释?先谢谢了!
    (由于积分太少,因此给分不高,望谅解!但感激之情甚浓有关问题空间与解空间

------解决方案--------------------
感觉和古汉语一样,各种句读,死的心都有了,哈哈哈

“而不是用计算机的术语,也就是解空间的术语”

计算机==解空间

问题空间,相信你自己已经有答案了,呵呵呵
------解决方案--------------------
好别扭,就是在C++中引入OO后
解决问题的时候不用再过多的用计算机思想来设计方法了,可以更接近人的思维,就是OO对PO的优势
------解决方案--------------------
翻译的好文绉绉,英文应该是problem domain和solution domain。
原文举的例子也有点⋯⋯

另举个例子,问题(problem)是复数的运算
如果是以problem domain来看,就是有Complex a1和Complex a2,它们的和为Complex result = a1 + a2,很是直接,当然,计算机内部是没有复数的,
所以从solution来看,就是有复数1,用r1和i1表示其实部/虚部,然后有复数2,用r2和i2表示其实部/虚部,然后结果是个复数,实部为r1+r2,虚部为i1+i2。

总的来说,即问题域表示要解决的问题的领域,里面有其专业术语,要解决问题,就是用这些专业术语来描述解决的方法。
但显然计算机这里是没有这些专业术语的,所以要开发一些方法/类/对象,来反映这些领域。