Я намагаюся вдосконалити свою техніку кодування c ++, читаючи вихідний код c ++. Який проект з відкритим кодом ви б рекомендували? Чи хороший код бібліотек Boost C ++ ?
Я намагаюся вдосконалити свою техніку кодування c ++, читаючи вихідний код c ++. Який проект з відкритим кодом ви б рекомендували? Чи хороший код бібліотек Boost C ++ ?
Відповіді:
Я рекомендую будь-який код C ++ з відкритим кодом з відкритим кодом, такий як:
Переваги використання коду Google:
Керівництво ++ Style Google C , що Google в C ++ код використовує , як правило , добре, але у нього є деякі досить незвичайні біти (наприклад, деякі з них керівних принципів присвоєння імен або їх забороняючи виключення), так що майте на увазі , що їх C ++ код буде відрізнятися в цих відносинах від що ти побачиш у полі.
Я б не рекомендував читати базу коду. Я рекомендую прочитати C ++ FAQS . Також є відмінна книга, яка виходить разом із сайтом. Найкращий спосіб вдосконалити свої навички кодування на C ++.
Читання існуючого чистого коду C ++ - це чудовий спосіб вивчити мову.
Наприклад, код у наборі інструментів OpenFST дуже чистий. Він читабельний і використовує дещо вдосконалені функції, не переходячи за борт.
З іншого боку, Boost може бути важко читати, почасти тому, що вони використовують C ++ хитрощі, які важко зрозуміти, і тому, що вони часто посипають код різними способами вирішення для різних версій компілятора.
Я б запропонував прочитати « Ефективний C ++ » Скотта Мейєрса та скористатись пропозиціями, які він має у маленьких іграшкових програмах.
Спробуйте прочитати щось, що існує роками і має великі розміри. Мине кілька місяців, щоб почати розуміти код і почати щось робити в ньому.
Firefox, Thunderbird, OpenOffice.org, LibreOffice приходять до тями. Має бути ще багато подібних. Ці проекти працюють на багатьох операційних системах та апаратних платформах. Крім того, вони повинні оцінювати читабельність. Це могли б ви, якщо ви шукаєте методи.
Навіть краще, ніж читати код, було б працювати з цим кодом у формі виправлення помилок та додавання невеликих удосконалень тут і там. Виберіть якусь програму, бажано ту, яку ви використовуєте, підпишіться на список розсилки, починайте їх трекер помилок і спробуйте діагностувати деякі помилки. Запитайте у списку розсилки, чи знаходите ви рішення для чогось, розумного чи коли ви застрягли. Це дасть вам певні цілі, читаючи код, змусить вас по-справжньому зрозуміти і це те, чим ви будете займатися в будь-якій роботі.
Ви можете подивитися якийсь додаток KDE. Більшість написані на C ++, і ви можете почати спочатку з меншої.
Так, код бібліотек Boost C ++ - це чудовий ресурс, з якого можна дізнатися, якщо не один із найкращих на планеті. Однак для початківців навчання за допомогою коду Boost може зробити криву навчання дуже крутою. Якщо ви дійсно хочете спробувати прочитати Boost, почніть з невеликих і простих бібліотек, таких як Boost.Array .
Спробуйте прочитати PDF C ++. Це безкоштовно, і я навчився C ++ з нього, навіть не маючи іншого досвіду програмування, і мені всього 14. Дивовижно.