Страница 2 из 2

Добавлено: 11 сен 2005, 22:04
vg
Leo Gan писал(а):а TestHarness для него все 200. Первые пишу-отлаживаю день, второй пишу 30 мин (копи-паст).
Здесь я увидел людей, в одной конторе, которые написали на почти на плайн С (умудрясь пользоваться С++ :shock: ) неплохой продукт ... Функциональноь - действительно класс, и как спец в этой прикладной области, могу сказать, что таких продуктов не много.

Но вот о коде .... Там наверное более миллиона строк. Или около того. Писали два года. Когда я посмотрел внутрь - там в solution около 40 прожектов. Так вот, просматривая как они нарубали огромное число классов, я заметил, что все они сделаны-копи паст. :lol: Т.е делается класс, отлаживается. Затем придумывается другой класс - берут, и, делая вид, что программирую на С++, просто переносят ВСЕ функции (часто без мальшейшего изменения) в новый класс. Коду получается уйма... Вообщем-то я молчал. :? Типа, пока молчал - работал. :lol: Такого забавного программирования я не видел нигде, и надеюсь не увижу.

Добавлено: 12 сен 2005, 08:43
Earl Grey
vg писал(а):Такого забавного программирования я не видел нигде, и надеюсь не увижу.
Не надейся :)

Добавлено: 12 сен 2005, 21:00
Groundhog
Обратный пример из личного опыта. Два символа (-1) - две недели.
Зато как все счастливы были когда заработало...

Добавлено: 13 сен 2005, 05:28
vg
Groundhog писал(а):Обратный пример из личного опыта. Два символа (-1) - две недели.
Зато как все счастливы были когда заработало...
Так, наверное, и должно быть. Мой же опыт, думаю, не очень показателен. Вряд ли это правило. Скорее исключение.

Добавлено: 14 сен 2005, 19:17
Leo Gan
vg писал(а):
Leo Gan писал(а):а TestHarness для него все 200. Первые пишу-отлаживаю день, второй пишу 30 мин (копи-паст).
Здесь я увидел людей, в одной конторе, которые написали на почти на плайн С (умудрясь пользоваться С++ :shock: ) неплохой продукт ... Функциональноь - действительно класс, и как спец в этой прикладной области, могу сказать, что таких продуктов не много.

Но вот о коде .... Там наверное более миллиона строк. Или около того. Писали два года. Когда я посмотрел внутрь - там в solution около 40 прожектов. Так вот, просматривая как они нарубали огромное число классов, я заметил, что все они сделаны-копи паст. :lol: Т.е делается класс, отлаживается. Затем придумывается другой класс - берут, и, делая вид, что программирую на С++, просто переносят ВСЕ функции (часто без мальшейшего изменения) в новый класс. Коду получается уйма... Вообщем-то я молчал. :? Типа, пока молчал - работал. :lol: Такого забавного программирования я не видел нигде, и надеюсь не увижу.
В этом стиле есть своя сермяжная правда.
Если наследовать, то сильное изменение базовых классов влекут геморрой...
Некоторые проекты в реальной жизни делать удобнее именно "копи-паст" наследованием кода.

Добавлено: 14 сен 2005, 20:15
vg
Leo Gan писал(а):
vg писал(а):
Leo Gan писал(а):а TestHarness для него все 200. Первые пишу-отлаживаю день, второй пишу 30 мин (копи-паст).
Здесь я увидел людей, в одной конторе, которые написали на почти на плайн С (умудрясь пользоваться С++ :shock: ) неплохой продукт ... Функциональноь - действительно класс, и как спец в этой прикладной области, могу сказать, что таких продуктов не много.

Но вот о коде .... Там наверное более миллиона строк. Или около того. Писали два года. Когда я посмотрел внутрь - там в solution около 40 прожектов. Так вот, просматривая как они нарубали огромное число классов, я заметил, что все они сделаны-копи паст. :lol: Т.е делается класс, отлаживается. Затем придумывается другой класс - берут, и, делая вид, что программирую на С++, просто переносят ВСЕ функции (часто без мальшейшего изменения) в новый класс. Коду получается уйма... Вообщем-то я молчал. :? Типа, пока молчал - работал. :lol: Такого забавного программирования я не видел нигде, и надеюсь не увижу.
В этом стиле есть своя сермяжная правда.
Если наследовать, то сильное изменение базовых классов влекут геморрой...
Некоторые проекты в реальной жизни делать удобнее именно "копи-паст" наследованием кода.
Представь ситуацию, когда у тебя 40 проектов в одном сольюшен и ты сильно принципиально ошибся в том, из чего делал копи-паст. Представляешь затраты времени на переработку?
Так делают чернуху (или черновики, да и то очень грубые), когда написали один класс, и пока точно и не знают, а что ж делать дальше. Так делают чернговики, когда работают над относительно небольшим решением (может 100-200 тыс. строк). Наследование, особенно виртуальное, никогда не было гимором. А с практической точки зрания даже при очень неудачной архитектуре и грубых промахах в базовых классах всегда можно было выкрутиться. Кроме того представь десятки, а то и сотни тысяч строк совершенно "баластного" повторяющегося кода, за которым не видно существа. Представь затраты времени этих Данила мастеров.
Всё что можно вынести в базовые классы - надо выносить. Иначе - надо наслаждаться plain C, присваивая файлам расширение cpp для самоутверждение на программистком поприще девелопера с++.