В ИТ около 15 лет, был ~6 конторах, ни разу не слышал чтобы хоть раз чей-нибудь код называли хорошим, только и слышно здесь говно, там говно.
Даже нет у него в отличие от говнокода названия своего, там вареньекод, медокод.
Если знаете какой-нибудь опенсорс или есть свой код в интернете пришлите ссылочку посмаковать, хоть раз взглянуть на это чудо которое не назовут говном.
On 12.01.2013 14:41, Аноним 208 wrote:
> В ИТ около 15 лет, был ~6 конторах, ни разу не слышал чтобы хоть раз > чей-нибудь код называли хорошим, только и слышно здесь говно, там говно.
Видел. Правда это был код американской конторы, хоть программисты и в
Минске были и в Америке. Просто в том коде поучаствовал и Скотт Майерс.
Здравствуйте, Аноним, Вы писали:
А>В ИТ около 15 лет, был ~6 конторах, ни разу не слышал чтобы хоть раз чей-нибудь код называли хорошим, только и слышно здесь говно, там говно. А>Даже нет у него в отличие от говнокода названия своего, там вареньекод, медокод.
говно вокруг, везде говно, все это логично — системы, которые сейчас в Москве дорабатывают, созданы в 90, 00-ые, никто писать не умел тогда
А>Если знаете какой-нибудь опенсорс или есть свой код в интернете пришлите ссылочку посмаковать, хоть раз взглянуть на это чудо которое не назовут говном.
адъ и погибель, я пытаюсь vmime собрать с зависимостями, такого треша я не видел, а это работает
Здравствуйте, Аноним, Вы писали:
А>В ИТ около 15 лет, был ~6 конторах, ни разу не слышал чтобы хоть раз чей-нибудь код называли хорошим, только и слышно здесь говно, там говно. А>Даже нет у него в отличие от говнокода названия своего, там вареньекод, медокод. А>Если знаете какой-нибудь опенсорс или есть свой код в интернете пришлите ссылочку посмаковать, хоть раз взглянуть на это чудо которое не назовут говном.
Просто, читать код намного сложнее чем писать, поэтому программисты не воспринимают код сравнимого уровня сложности с их собственным, а именно с таким кодом им, как правило, и доводится работать.
Здравствуйте, RonWilson, Вы писали:
RW>Здравствуйте, Аноним, Вы писали:
А>>В ИТ около 15 лет, был ~6 конторах, ни разу не слышал чтобы хоть раз чей-нибудь код называли хорошим, только и слышно здесь говно, там говно. А>>Даже нет у него в отличие от говнокода названия своего, там вареньекод, медокод. RW>говно вокруг, везде говно, все это логично — системы, которые сейчас в Москве дорабатывают, созданы в 90, 00-ые, никто писать не умел тогда
Тоже самое будут говорить про 2010 -- стиль сменился. Зато в 2030 все будут говорить какие были классные программеры в 2000ных -- на таком говне мамонта писали, такие сложные вещи, а у нас на 100500 ядерных машинах перерисовка окошек тормозит.
Здравствуйте, Аноним, Вы писали:
А>В ИТ около 15 лет, был ~6 конторах, ни разу не слышал чтобы хоть раз чей-нибудь код называли хорошим, только и слышно здесь говно, там говно. А>Даже нет у него в отличие от говнокода названия своего, там вареньекод, медокод. А>Если знаете какой-нибудь опенсорс или есть свой код в интернете пришлите ссылочку посмаковать, хоть раз взглянуть на это чудо которое не назовут говном.
Я, наоборот, настоящий "говнокод" видел только от студентов, остальное укладывалось в стилистические корреляции.
Здравствуйте, denisko, Вы писали:
D>Я, наоборот, настоящий "говнокод" видел только от студентов, остальное укладывалось в стилистические корреляции.
Флуктуации, в смысле
Здравствуйте, denisko, Вы писали:
А>>>Даже нет у него в отличие от говнокода названия своего, там вареньекод, медокод. RW>>говно вокруг, везде говно, все это логично — системы, которые сейчас в Москве дорабатывают, созданы в 90, 00-ые, никто писать не умел тогда D>Тоже самое будут говорить про 2010 -- стиль сменился. Зато в 2030 все будут говорить какие были классные программеры в 2000ных -- на таком говне мамонта писали, такие сложные вещи, а у нас на 100500 ядерных машинах перерисовка окошек тормозит.
Здравствуйте, Аноним, Вы писали:
А>В ИТ около 15 лет, был ~6 конторах, ни разу не слышал чтобы хоть раз чей-нибудь код называли хорошим, только и слышно здесь говно, там говно. А>Даже нет у него в отличие от говнокода названия своего, там вареньекод, медокод. А>Если знаете какой-нибудь опенсорс или есть свой код в интернете пришлите ссылочку посмаковать, хоть раз взглянуть на это чудо которое не назовут говном.
Здравствуйте, Аноним, Вы писали:
А>В ИТ около 15 лет, был ~6 конторах, ни разу не слышал чтобы хоть раз чей-нибудь код называли хорошим, только и слышно здесь говно, там говно.
Сам говно не пишу и сотрудников проверяю.. Это ж стиль вырабатывается. Ответственность не только перед собой, но и тем кто будет его смотреть. Легкое г видел.. исправлял.. с полным не встречался..
Здравствуйте, <Аноним>, Вы писали:
А>В ИТ около 15 лет, был ~6 конторах, ни разу не слышал чтобы хоть раз чей-нибудь код называли хорошим, только и слышно здесь говно, там говно. А>Даже нет у него в отличие от говнокода названия своего, там вареньекод, медокод. А>Если знаете какой-нибудь опенсорс или есть свой код в интернете пришлите ссылочку посмаковать, хоть раз взглянуть на это чудо которое не назовут говном.
Навскидку:
1. kakadu jpeg2000 library
2. helix AAC Fixed point decoder
3. CT HE AAC + SBR+ Parametric stereo encoder.
4. boost uBLAS library (в бусте хватает хороших либ)
5. приятности есть (не все) в исходниках Half Life 2
6. некоторые либы NVIDIA
... и т.д
Здравствуйте, 11molniev, Вы писали:
1>На мой взгляд код 7-zip и nginx хороший.
7-zip? в каком месте он там хороший, в С/ или СPP/ ?
вообще С код не может быть хорошим по-определению,
а С++ код там от С недалеко ушел.
хотя там где COM интерфейсы его можно объяснить ограничениями COM (хотя зачем там вообще COM?).
собственно catch(int) в main() сразу намекает на качество кода
Здравствуйте, Аноним, Вы писали:
А>В ИТ около 15 лет, был ~6 конторах, ни разу не слышал чтобы хоть раз чей-нибудь код называли хорошим, только и слышно здесь говно, там говно. А>Даже нет у него в отличие от говнокода названия своего, там вареньекод, медокод. А>Если знаете какой-нибудь опенсорс или есть свой код в интернете пришлите ссылочку посмаковать, хоть раз взглянуть на это чудо которое не назовут говном.
Нет такого, по многим причинам. А тебе посоветую читать все подряд. Просто идешь на github\codeplex\ещекуданить, ищешь интересные тебе проекты и начинаешь разбираться.
Здравствуйте, Abyx, Вы писали:
A>Здравствуйте, 11molniev, Вы писали:
1>>На мой взгляд код 7-zip и nginx хороший.
A>7-zip? в каком месте он там хороший, в С/ или СPP/ ?
A>вообще С код не может быть хорошим по-определению,
Ну-ну. Наверное и машинные команды по определению не могут быть хорошими.
Крайние позиции редко бывают правильными.
A>а С++ код там от С недалеко ушел. A>хотя там где COM интерфейсы его можно объяснить ограничениями COM (хотя зачем там вообще COM?).
А Вы, что считаете единственно верным оплотом качества?
A>собственно catch(int) в main() сразу намекает на качество кода
Мне как то не намекает вообще. Если в рамках проекта используется один стиль исключений, или от него отходят только в небольших участках — это нормально.
И использовать int для кода работающего в ОС возвращаюшей коды ошибок вполне разумно.
Здравствуйте, 11molniev, Вы писали:
1>А Вы, что считаете единственно верным оплотом качества?
критериями —
безопасность (в т.ч. type-safety, отсутствие двойной инициализации, etc),
отсутствие лишнего кода (соблюдение DRY, YAGNI, SRP; использование RAII вместо ручных вызовов free и т.п.),
SOLID дизайн,
удобство поддержки кода, в т.ч. удобство отладки — исключения вместо возврата ошибок
A>>собственно catch(int) в main() сразу намекает на качество кода 1>Мне как то не намекает вообще. Если в рамках проекта используется один стиль исключений, или от него отходят только в небольших участках — это нормально. 1>И использовать int для кода работающего в ОС возвращаюшей коды ошибок вполне разумно.
в С++ это ненормально.
Здравствуйте, Аноним, Вы писали: А>В ИТ около 15 лет, был ~6 конторах, ни разу не слышал чтобы хоть раз чей-нибудь код называли хорошим, только и слышно здесь говно, там говно. А>Даже нет у него в отличие от говнокода названия своего, там вареньекод, медокод.
из опенсорсного
в качестве примера гавна я обычно привожу Miranda IM
как пример негавна — Chromium
в принципе, я сильно туда не всматривался, возможно, они и "неоднородные" частями, но общее впечатление такое производят
Здравствуйте, Abyx, Вы писали:
A>Здравствуйте, 11molniev, Вы писали:
1>>А Вы, что считаете единственно верным оплотом качества? A>критериями — A>безопасность (в т.ч. type-safety, отсутствие двойной инициализации, etc), A>отсутствие лишнего кода (соблюдение DRY, YAGNI, SRP; использование RAII вместо ручных вызовов free и т.п.), A>SOLID дизайн, A>удобство поддержки кода, в т.ч. удобство отладки — исключения вместо возврата ошибок
Перефразирую свой вопрос — есть ли конкрентые примеры, того, что Вы считаете хорошим кодом, где с ними можно ознакомится?
A>>>собственно catch(int) в main() сразу намекает на качество кода 1>>Мне как то не намекает вообще. Если в рамках проекта используется один стиль исключений, или от него отходят только в небольших участках — это нормально. 1>>И использовать int для кода работающего в ОС возвращаюшей коды ошибок вполне разумно. A>в С++ это ненормально.
Инструмент должен давать возможность, а не ограничения. В С++ это возможно, и нормально. При выше озвученых условиях.
Если хочется что бы объектом было вообще все — есть другие языки.
PS. Я за собой не припоминаю использования таких исключений.
Здравствуйте, 11molniev, Вы писали:
1>Перефразирую свой вопрос — есть ли конкрентые примеры, того, что Вы считаете хорошим кодом, где с ними можно ознакомится?
да что-то не припоминаю.
в LLVM есть много хорошего, но там запрещены исключения,
libtorrent-rasterbar вроде ничего так выглядит, но там опять же поддерживается BOOST_NO_EXCEPTIONS, а значит в реализации нет исключений,
к тому же там для сообщений об ошибках используется std::string, за что я на них очень зол
Здравствуйте, Abyx, Вы писали:
A>Здравствуйте, 11molniev, Вы писали:
1>>Перефразирую свой вопрос — есть ли конкрентые примеры, того, что Вы считаете хорошим кодом, где с ними можно ознакомится?
A>да что-то не припоминаю. A>в LLVM есть много хорошего, но там запрещены исключения,
A>libtorrent-rasterbar вроде ничего так выглядит, но там опять же поддерживается BOOST_NO_EXCEPTIONS, а значит в реализации нет исключений, A>к тому же там для сообщений об ошибках используется std::string, за что я на них очень зол
Возможно это связано с нереализуемостью Ваших требований в реальном мире.