Здравствуйте, Аноним, Вы писали:
А>Хотелось бы почитать современных хороших исходников на С++ с целью изучения. Нужны большие грамотно написанные проекты, как пример для подражания
Коллега Google Chrome пытался читать, но разработчики вносят изменения быстрее чем он успевает читать
Я вообще не вижу большой пользы в чтении чужого кода больших опенсорсных проектов. "Математику нельзя изучать, наблюдая, как это делает сосед". Кодинг — это не математика, конечно, но всё равно применимо.
Здравствуйте, Alexander G, Вы писали:
AG>Я вообще не вижу большой пользы в чтении чужого кода больших опенсорсных проектов.
Ну например я противоположенного мнения
"Математику нельзя изучать, наблюдая, как это делает сосед".
Даже если кодинг ето математика, ето всё равно не применимо, потому что "просто наблюдать" не пытаясь понять как ето работает действительно толку мало, речь же не о механическом чтении а-ля "вот я прочитал мегабайт исходников, а вчера прочитал мегабайт хекскода", а о понимании того как работает тот или иной функционал и как он выражен в виде исходного кода, а это имхо, очень полезно.
Здравствуйте, Хвост, Вы писали:
Х>о понимании того как работает тот или иной функционал и как он выражен в виде исходного кода, а это имхо, очень полезно.
Понимание гораздо лучше, когда поддерживаешь этот код, и сам беспокоишься за его качество. Для этого лучше подходит свой рабочий код.
Может лучше учиться на чужих ошибках, чем на своих, но видишь ли ты чужие ошибки, если просто изцчаешь код ?
Здравствуйте, Аноним, Вы писали:
А>Хотелось бы почитать современных хороших исходников на С++ с целью изучения. Нужны большие грамотно написанные проекты, как пример для подражания
Недавно попались на глаза исходники rtorrent (http://libtorrent.rakshasa.no/). Хороший, добротно написанный, "современный" С++ код. Именно С++, а не С с классами. Приятно читать. Рекомендую.
AG>Я вообще не вижу большой пользы в чтении чужого кода больших опенсорсных проектов. "Математику нельзя изучать, наблюдая, как это делает сосед". Кодинг — это не математика, конечно, но всё равно применимо.
Не согласен.
Чтение чужих исходников, особенно больших проектов — не просто полезное занятие, а очень полезное: развивает мозг, расширяет кругозор и позволяет взглянуть на свой подход к кодированию в другом ракурсе.
Иногда находишь в чужом коде такие вещи, что тебя как-будто осеняет: ого, а как же я раньше не додумался, что так можно делать?!
Особенно полезно полностью разобраться в архитектуре и алгоритмах большого проекта, а не просто просмотреть отдельные фрагменты кода.
Здравствуйте, Alexander G, Вы писали:
AG>Понимание гораздо лучше, когда поддерживаешь этот код, и сам беспокоишься за его качество. Для этого лучше подходит свой рабочий код.
верно, лучший способ для "разбираться" в чужом опенсорсе ето значит сделать его своим "рабочим", например попробовать добавить какую-нибудь функциональность, или применить часть функиональности в своём проекте, ето потребует достаточно глубокого анализа кода, и понимания как работает то или иное, и если область уже знакомая, тогда, как уже было замечено, часто возникают мысли "во, интересно, а я всю жизнь вот так делал, а можно оказывается и так и эдак", а если незнакомая — то просто интересно узнать как ето работает, насчёт ошибок — опечаткоподобных не припоминаю, а так называемые "ошибки дизайна" попадаются на каждом шагу, особенно в первое время работы с кодом , потом приходит понимание что большенство етих "ошибок" ето совсем даже не ошибки, а очень правильный подход. Но возможно причиной того, что я так мало реальных ошибок встречаю связано с тем что я в основном смотрю качественный опенсорс который разрабатывают профессионалы с налаженным процессом разработки и код етот находится в продакшне на десктопах.
Здравствуйте, alexeiz, Вы писали:
A>Здравствуйте, Аноним, Вы писали:
А>>Хотелось бы почитать современных хороших исходников на С++ с целью изучения. Нужны большие грамотно написанные проекты, как пример для подражания
A>Недавно попались на глаза исходники rtorrent (http://libtorrent.rakshasa.no/). Хороший, добротно написанный, "современный" С++ код. Именно С++, а не С с классами. Приятно читать. Рекомендую.
открыл их стд библиотечку — не впечатлила. trim например 2 раза копирует строку всегда. Функторы рассчитаны на "большие функции", какой нибудь a+b туда передавать будет накладно.
Это так — первые впечатления от любопытства. Внутрь еще не заглядывал
зы ну и что что тема старая — конструктивный ответ интересно обсудить
Здравствуйте, Аноним, Вы писали:
А>Хотелось бы почитать современных хороших исходников на С++ с целью изучения. Нужны большие грамотно написанные проекты, как пример для подражания
Ладно, раз уж эту мертвечину вытащили...
Вот вам мягких французких булочек.