Я очень давно занимался С++, а чистого С с головой хватало. Теперь мне необходимо восстановить навыки и вижу два варианта либо начать самому что-то писать, либо посмотреть какие-нибудь хорошие исходники. Второй вариант мне сейчас ближе и интереснее.
Подскажите, пожалуйста, какую-нибудь библиотеку или открытый проект который действительно стоит посмотреть с пользой для С++? Также очень хотелось бы библиотеку, где хорошо применяются ООП концепции.
Немного уточну: мне интересен гейм девелопмент, что-нибудь связанное с андройдом, с веб технологиями и обработкой данных. А не интересно GUI и пользовательские интерфейсы. Но если не подходит по интересам, всё равно напишите, будет крайне интересно.
Спасибо за ответ. В данный момент изучаю cURLpp, кажется неплохо написана и размер не большой (около 2к строчек). А вот CryptPP немного испугал меня, там где-то 40к, но по первому впечатлению неплохо документирована.
Про хромиум промолчу, даже боюсь туда смотреть. :)
А я лично пользуюсь следующим способом, захожу на сайт биржи труда фрилансеров, ищу заказы по технологии, которая мне интересна. И пытаюсь реализовать (не делая ставки и не беря заказ), чисто для себя. Тем самым я пробую решить реальную задачу и приобретаю опыт в интересующей меня технологии. Всегда интересней, делать нечто реальное и своими руками.
Я тоже так делаю… хотя, наверно, нет, уж слишком мало раз было. Но вот в данном случае мне нужно вспомнить С++ и хорошо вспомнить, а если начну делать проект сам, то могу упустить такие понятия как чисто виртуальная функция (деструктор), alias к namespac-у, using, typename или другие вещи, которые бы желательно знать (написал только те, которые только-только освежил через cURLpp).
А вообще способ действенен, да. :)
А вы часто эти проекты доводили до кондиции? Так, что вот уже можно сказать, что в дальнейшем можно применять?
Я не могу сказать, что я прямо вылизывал проект до состояния релиза. Я просто никогда не ставил такой задачи. Мне чтобы что-то изучить или вспомнить, иными словами прокачать скилы, обычно изучить ряд технологических моментов, которые затем как кубики лего использовать в рабочем приложении. При решении этих учебно-тренировочных задач, можно пользоваться:
1. Stackoverflow — тут много примеров, и бурные обсуждения от самых простых задач, до достаточно редких случаев.
2. Гугл в поисках статей и ответов на возникающие вопросы.
3. Смотреть сырцы открытых проектов.
Иными словами я считаю, чтобы прокачать свой скил, не важно это будет С++ или что-то другое, надо использовать комплексный подход: что-то пытаться сделать самому и при этом смотреть как делают это другие. При этом еще полезно почитать паттерны программрования, применимые к выбранному языку и принятые на данной платформе архитектурные решения. Чтобы подкрепить практику теорией.
Мне в свое время очень помогли исходники linux slackware.
В установочном пакете было много дополнительных модулей, даже какие-то простенькие игры.
То что не относилось к низкоуровневой части в основном было написано на С++, причем довольно не плохо.
Так же, посмотрите популярные проекты на sourceforge.
Извините, но в вашем ответе есть несколько проблем. Вы указали не совсем конкретно, мне также будет тяжело найти проект для изучения после вашего ответа. И slackware не такой уж маленький, чтобы его скачать и если есть желание, установить. Если бы вы могли немного конкретезировать, где можно найти не низкоуровневую часть (написанную на С++) было бы гораздо лучше.