Чем демонстрационная учебная программа отличается от реального проекта?
Имеется в виду классы типа Camera.h, Transform.h, Shader.h, которые написаны в учебных программах по Direct3D. Допустим, проект вырос, куда они деваются? Я хочу спрогнозировать, как их лучше написать с учётом их дальнейшей судьбы, потому что иначе будут фатальные для проекта проблемы. Было уже так.
Классы Camera, Transform, Shader, я назвал для краткости. Суть не меняется. Я не брал, не решал. Я не знаю, что с ними будет, когда проект вырастет. В том и дело.
В том дело, что в пропиетарном коде, который я смотрел, их нет. В Unity, в исходниках Unreal их явно нет. Там горы более сложных классов, но таких простых нет. Есть только в учебных программах. Это значит, я что-то делаю не так, и есть повод для претензий.
Антон Швец, я это знаю хорошо. Вопрос, почему. Мой класс Camera - не говнокод, потому что он только что написан и простой. Если в нём будет много говнокода, мне нужно прямо сейчас знать, какого и сколько. Чтобы сделать его заранее. В вопросе это и написано.
Astromatics,
"Мой класс Camera - не говнокод, потому что он только что написан и простой. Если в нём будет много говнокода, мне нужно прямо сейчас знать, какого и сколько. Чтобы сделать его заранее. В вопросе это и написано. "
Если вы сейчас его написали и сами оценили и сразу решили, что он не говнокод, то логически - в нем ноль говнокода.
Если вы дадите этот класс проанализировать кому-нибудь другому, все может измениться =)
Демонстрационные проекты обычно пишутся так, чтобы показать реализацию простой задачи, часто упор идёт демонстрацию классов и методов в действии.
В реальном проекте вам могут быть не нужны все абстракции в таком же виде, как это может быть в демо. Обычно все гораздо сложнее, пускай взаимосвязи классов в демо не вводят вас в заблуждение.