LinuxSir.cn,穿越时空的Linuxsir!

 找回密码
 注册
搜索
热搜: shell linux mysql
12
返回列表 发新帖
楼主: linux_niu

我编的c语言“线性代数”处理函数,虚心接受哥哥姐姐的指教

[复制链接]
发表于 2008-7-28 16:30:17 | 显示全部楼层
粗粗地看了一下,只想到了一个建议:你应该将数据的表示和对数据的操作分开。即,对矩阵的操作应当在一定程度上不需要了解矩阵是如何表示的。例如,散布在代码里的 malloc 实际上是在创建矩阵,这是在描述数据的表示。它们应该属于一个函数,make_matrix。如果能够重新设计矩阵的表示和操作,使得它们之间的层次更加明显就更好了(但这很困难,而且有可能得不偿失)。

事实上,我建议你有时间读读 sicp,这本书里提到了许多如何设计程序的内容,当然也适用于 C。因为 C 的自由性,设计出违反优秀风格的程序会更容易。因此 C 程序员更应该读一下 sicp
回复 支持 反对

使用道具 举报

发表于 2008-7-28 20:53:07 | 显示全部楼层
线性代数啊~~不久我也要学这一章了,昨天我下载的根据函数画曲线图的小程序帮了我不少忙呢,呵呵
编程那么多年感觉只有用到数学知识的程序才是复杂难以理解的程序,也是最有技术含量的程序。
回复 支持 反对

使用道具 举报

 楼主| 发表于 2008-7-29 08:44:57 | 显示全部楼层
Post by herberteuler;1879475
粗粗地看了一下,只想到了一个建议:你应该将数据的表示和对数据的操作分开。即,对矩阵的操作应当在一定程度上不需要了解矩阵是如何表示的。例如,散布在代码里的 malloc 实际上是在创建矩阵,这是在描述数据的表示。它们应该属于一个函数,make_matrix。如果能够重新设计矩阵的表示和操作,使得它们之间的层次更加明显就更好了(但这很困难,而且有可能得不偿失)。

事实上,我建议你有时间读读 sicp,这本书里提到了许多如何设计程序的内容,当然也适用于 C。因为 C 的自由性,设计出违反优秀风格的程序会更容易。因此 C 程序员更应该读一下 sicp

接受了,谢谢!!
我会改进的!!!
回复 支持 反对

使用道具 举报

发表于 2008-7-29 09:24:17 | 显示全部楼层
Post by herberteuler;1879475
粗粗地看了一下,只想到了一个建议:你应该将数据的表示和对数据的操作分开。即,对矩阵的操作应当在一定程度上不需要了解矩阵是如何表示的。例如,散布在代码里的 malloc 实际上是在创建矩阵,这是在描述数据的表示。它们应该属于一个函数,make_matrix。如果能够重新设计矩阵的表示和操作,使得它们之间的层次更加明显就更好了(但这很困难,而且有可能得不偿失)。

事实上,我建议你有时间读读 sicp,这本书里提到了许多如何设计程序的内容,当然也适用于 C。因为 C 的自由性,设计出违反优秀风格的程序会更容易。因此 C 程序员更应该读一下 sicp

是啊,写C程序不能天马行空,最好的做法是用一种框架把自己束缚起来,例如GTK。
回复 支持 反对

使用道具 举报

您需要登录后才可以回帖 登录 | 注册

本版积分规则

快速回复 返回顶部 返回列表