2009-08-19 12 views
19

私は主にC#/。NETプログラマですが、私が取り組もうとしているhobby projectはcでコード化することになります。良い、現代的なCコードはどのように見えますか?

そこにはたくさんのCコードがありますが、あなたがその言語で成長しなかった場合は、うまく構造化されたプロジェクトから適切に構造化されたCプロジェクトを分離することは非常に困難です。誰でも私に新しい、些細ではない(しかし、巨大ではない)プロジェクトを指し示すことができます。これは、Cコードの構造化の良い例と考えられていますか?

編集

プロジェクトを見つけることができない場合は、Cプロジェクトが構造化されるべきだと思うか言葉で議論して自由に感じます。

答えて

14

デイブハンソンさんC Interfaces and Implementations非常によく練られています約7000行のコードのライブラリ。あなたがそれを買うことができるなら、本は素晴らしいです。

Luaプログラミング言語とライブラリの実装では、Cコードのおよそ17000行であり、非常によくやったが、—コンパイラとガベージコレクタは、これらの分野でのバックグラウンドなしに理解することはそれほど簡単ではありません場所ではかなり洗練されています。しかし、このコードは美しく設計されています。

Gitは125,000行以上のコードです。誰もがCコードをエンジニアリングする方法の例として勉強することをお勧めできません。実装だけでなく、デザインとパブリックインターフェイスは理解しにくいです—これは非常に多くのgitチュートリアルがある理由です。

+0

+1。私がしていた組み込みソフトウェアプロジェクトのために受け入れられる性能と品質の賢明さがあるかどうかを見極めるために、フードの下で見たとき、私はうれしく驚いた。 – patros

+1

Gitは一貫したスタイルと構造を持っているので、学ぶには良い素材です。あなたはそれのすべての行を準備する必要はありません! –

+0

@Normanは、本がSafariで利用できるように見えます。私はそれが13歳であるので(それは "現代のコード"ではないだろうと仮定して)それをスキップしたはずですが、私はあなたの推薦でそれをチェックします。ありがとう! –

3

これは完全に事実ですが、SQLiteプロジェクトは良いコードと見なされています。

+0

これは素晴らしいAPIです。 – Skurmedel

5

Gitのソースコードをチェックアウト:http://github.com/git/git/tree/master

+8

新しいCプログラマー向けに125,000行のコードがありますか?本気ですか? –

+4

構造とスタイルはすべてです。あなたはすべての行を読む必要はありません。 –

6

私が良い例であることをスティーブ・ディコートのIO language実装を検討するクリーンで実用的な現代のためのC.

+0

私は同意する、それは本当にいいコードです。私はそれが好きで、私はそれを理解することができます;-)ルアのために – Friedrich

1

"プログラミング言語C"、第2版、カーニハンとリッチー

回答あなたのパラダイムは少しシフトします:

スティーブンコチャン

Cでのプログラミング、第3版

http://www.kochan-wood.com

1

SVNプロジェクトは完全にC言語で書かれており、一貫性のあるスタイル、良いコメント、低いコードの匂いがよく整えられています。私はperusingそれをお勧めします。

関連する問題