web-dev-qa-db-ja.com

初心者のために読むのに最適なC ++ソースコードは何ですか?

私はc ++ソースコードを読むことによって私のc ++コーディング技術を改善しようとしています。どのオープンソースプロジェクトをお勧めしますか? Boost C++ Libraries のコードは適切ですか?

25
snowfox

次のようなGoogleのオープンソースC++コードをお勧めします。

Googleコードを使用する利点:

  • 高い基準で書かれており、ピアレビューされています(一部のオープンソースコードとは異なります)。
  • 優れた開発者用ドキュメントがあります(これにより、選択と理解が容易になります)。
  • 中程度に高度なC++テクニックをいくつか使用しています(したがって、学習に適しています)。
  • 高度なテンプレートメタプログラミングと プリプロセッサメタプログラミング にあまり依存していないため、Boostよりも理解しやすく、無数のコンパイラ互換性ハックや特別なケースでそれほど重くされていません。

GoogleのC++コードが使用する Google C++スタイルガイド は一般的には優れていますが、かなり珍しいビット(命名ガイドラインや禁止されている例外など)があるため、C++これらの点で、コードはフィールドで表示されるものとは異なります。

27
Josh Kelley

コードベースを読むことはお勧めしません。 C++ FAQS を読むことをお勧めします。サイトに沿って行く優れた本もあります。 C++コーディングスキルを向上させる最良の方法。

9

既存のクリーンなC++コードを読むことは、言語を学ぶのに最適な方法です。

OpenFST ツールキットのコードは、たとえば非常にクリーンです。それは読みやすく、行き過ぎることなくわずかに高度な機能を使用します。

一方、Boostは、理解しにくいC++のトリックを使用しているため、またコンパイラバージョンごとに異なる回避策をコードに散りばめているため、読みにくい場合があります。

6
user3287

Scott Meyersの " Effective C++ "を読み、彼が小さなおもちゃプログラムで持っている提案をusingすることをお勧めします。

長年存在し、サイズが大きいものを読んでみてください。コードを理解し、コードで何かを始めるには、数か月かかります。

Firefox、Thunderbird、OpenOffice.org、LibreOfficeが思い浮かびます。同様のものがもっとたくさんあるはずです。これらのプロジェクトは、多くのオペレーティングシステムとハードウェアプラットフォームで実行されます。また、読みやすさを評価する必要があります。これらは、あなたが探している技術をあなたに提供するでしょう。

2
vpit3833

コードを読むよりも、バグを修正し、あちこちに小さな改善を加えるという形でそのコードを操作する方がよいでしょう。いくつかのプログラムを選択します。できれば使用するプログラムを選び、メーリングリストに登録して、バグトラッカーを調べ、いくつかのバグの診断を試みます。それが合理的であるか、行き詰まったときかについて何かの解決策を見つけるかどうかメーリングリストで尋ねてください。これにより、コードを読むときにいくつかの具体的な目標が得られ、実際に理解することを強いられ、どんな作業でもほとんどの場合に行うことになります。

あなたはおそらくいくつかのKDEアプリケーションを見ることができます。ほとんどはC++で書かれており、最初に小さいものから始めることができます。

0
Jan Hudec