web-dev-qa-db-ja.com

優れたデザインを学ぶために学ぶ価値のあるオープンソースCプロジェクトはどれですか。

優れたデザインを学ぶ上で興味深いCの小さなオープンソースプロジェクトはどれですか。

プロジェクトは次のとおりです。

  • 大きすぎない(Linuxカーネルのように)
  • よく文書化
  • おそらくまだ活発に開発中です

Cの学習を始めたばかりで、言語自体はそれほど難しくありませんが、より大きなアプリケーションを設計する方法に苦労しているので、他のオープンソースプロジェクトをチェックすることは良い出発点になると思いました。

ありがとう!

41
Sander Versluys

私の意見では、Cで書かれた適度なサイズのプロジェクトの良い例は次のとおりです。

14
jmbr

Redis(nosql db)は次のとおりです。

  • 活発に開発中
  • 扱いやすいサイズ
  • ポータブルで堅牢
  • 外部依存関係はありません
  • 非常によく書かれた、理解しやすいコード
22
a2800276

Posixスレッド は、優れたC設計の好例です

3
Alexandre C.

http://abygaelle.guillaume-fr.net/trac/gemmes のような小規模で適切に構造化されたアプリケーションから学習を開始できます。

1
Nicolas

私はgnucashが好きです: http://www.gnucash.org/

Linuxカーネルのように大きくはありませんが、それでもまだ大きいと思います。

1
bcsanches

それはすべて、どのような種類のプロジェクトに興味があるかによって異なります。また、プロジェクトのどの側面(特定のアルゴリズム、UI、ネットワーキングなど)でも異なります。

Freshmeat、sourceforge、ohlohにアクセスして、興味のある分野のプロジェクトを参照してください。

あるいは、特定の理由で選択されたプロジェクトを確認したい場合は、Googleのコードの夏が興味深いかもしれません-これらにはめったに完全なプロジェクトが含まれていません。

編集:また、代わりに、Linuxカーネルのようなものを取るかもしれませんが、すべてを理解しようとするのではなく、

  • 全体像をつかむ
  • 次に、その小さな1つの部分に集中し、コードが時間の経過とともにどのように変化したかを検査します(その理由については、十分に文書化する必要があります)。
1
Unreason