Боюсь, это требует опыта. Когда вы представляете решения проблемы, вы можете думать с точки зрения иерархии классов или с точки зрения того, какая информация поступает, что выходит, как долго она должна быть устойчивой между ними. Я рекомендую последнее.
В любом случае, то, что люди сказали, - это, в основном, хороший совет - держите его в чистоте и простоте и избавляйтесь от проблем с производительностью по мере их появления, потому что они будут входить.
Где я работаю в компании, я не считаю измерение очень полезным для определения проблем с производительностью по сравнению с этим методом.
Но какой бы метод вы ни использовали, надеюсь, опыт научит вас, что НЕ делать при разработке программного обеспечения. Я долгое время решал проблемы с производительностью, и в настоящее время самым популярным убийцей производительности является скачущая универсальность . Никто не любит, когда их любимые убеждения подвергаются сомнению, но время от времени, особенно в большом программном обеспечении, производительность убийства - это использование базук для мух .
Как ни странно, причина, часто приводимая для этого чрезмерного замысла, - угадайте, что? Производительность.
В любом месте, где вы, возможно, научились программировать, есть вероятность, что вы узнали все об академических вещах, таких как сложные структуры данных, абстрактные иерархии классов, хитрые методы оптимизации компилятора - все последние вещи, которые интересно и интересно знать, и что Мне нравится так же, как и всем. Чему вас не учили, так это , когда его использовать, что почти никогда не бывает .
Итак, что я рекомендую вам сделать: Получите опыт. Это лучший учитель.