什么开源C项目值得研究学习好的设计?

时间:2011-01-03 10:38:43

标签: c open-source

C中哪些小型开源项目对于学习优秀设计很有意义?

项目应该是:

  • 不太大(比如linux内核)
  • 记录良好
  • 也许还在积极发展中

我刚开始学习C语言,虽然语言本身并不太困难,但我正在努力设计更大的应用程序,所以我认为查看其他开源项目将是一个很好的起点。

谢谢!

6 个答案:

答案 0 :(得分:22)

Redis(nosql db)是:

  • 正在积极发展
  • 可管理的尺寸
  • 便携且强大
  • 没有外部依赖
  • 写得很好,易于理解的代码

答案 1 :(得分:14)

在我看来,用C语言编写的中等规模项目的好例子是:

答案 2 :(得分:3)

Posix threads是优秀C设计的完美范例

答案 3 :(得分:1)

您可以从小型且结构良好的应用程序(如http://abygaelle.guillaume-fr.net/trac/gemmes

)开始学习

答案 4 :(得分:1)

我喜欢gnucash:http://www.gnucash.org/

不像Linux内核那么大,但我认为还是很大。

答案 5 :(得分:1)

这完全取决于您感兴趣的项目类型。它的具体方面(特定算法,用户界面,网络等等)

前往freshmeat,sourceforge或ohloh,浏览您感兴趣的区域的项目。

或者,如果您想查看因特定原因而选择的项目,那么Google夏季代码可能会对您感兴趣 - 即使这些项目很少包含完整项目。

编辑: 另外,你可能会采取类似Linux内核的东西,但不是试图理解一切尝试

  • 了解大局
  • 然后专注于它的一小部分并检查代码如何随着时间的推移而变化(以及出于什么原因 - 它应该被很好地记录)