Из моего опыта, 90% проблем с производительностью решаются применением подходящих структур данных, которые есть в стандартной библиотеке, типа использования хэш-таблиц вместо линейного поиска, или использование списков вместо массивов, если реаллокация объектов при расширении массива дорогая.
А можно делать старые С перечисления,в которых названия значений сами себя документируют, типа USE_CACHE, NOT_USE_CACHE, и автоматическая конверсия к bool будет все делать сама, можно будет в коде и так и сяк использовать.
Ага, я среди некоторых программистов, которые застряли в с++98, слышу оправдания сомнительному спагетти коду, что это для производительности так сделано.
Да, часто такое бывает, что неделю ломаешь голову над чем то, все получается криво и медленно. Тогда бросишь все это, работаешь неделю над другими задачами. А потом начнешь писать с нуля и за день получается красиво и быстро, как в учебниках. Часто мозгу чтобы придумать что то хорошее нужно сперва сделать неудачную попытку, а после нее еще и отдохнуть, переключиться на какое то время.
Очень полезная и интересная статья, все этапы собраны вместе, и о многих из них я не знал, что есть готовые решения. Надо будет изучить описанные технологии подробнее.
Хороший пост, и очень правильное отношение к людям, поставил бы плюс если б мог.
У настоящего сеньора проблемы решаются сами при самом его присутствии.
Интересная статья, возможно лет через 20 на основе таких вот формализаций будет работать автоматическая проверка кода на качество в каждой иде.
А представьте, каково сейчас заббиксу.
Из моего опыта, 90% проблем с производительностью решаются применением подходящих структур данных, которые есть в стандартной библиотеке, типа использования хэш-таблиц вместо линейного поиска, или использование списков вместо массивов, если реаллокация объектов при расширении массива дорогая.
А можно делать старые С перечисления,в которых названия значений сами себя документируют, типа USE_CACHE, NOT_USE_CACHE, и автоматическая конверсия к bool будет все делать сама, можно будет в коде и так и сяк использовать.
Ага, я среди некоторых программистов, которые застряли в с++98, слышу оправдания сомнительному спагетти коду, что это для производительности так сделано.
А я бы рад лайкать полезные посты, но могу ток оставлять комментарии, которые еще и должны пройти модерацию.
Да, часто такое бывает, что неделю ломаешь голову над чем то, все получается криво и медленно. Тогда бросишь все это, работаешь неделю над другими задачами. А потом начнешь писать с нуля и за день получается красиво и быстро, как в учебниках. Часто мозгу чтобы придумать что то хорошее нужно сперва сделать неудачную попытку, а после нее еще и отдохнуть, переключиться на какое то время.
Очень полезная и интересная статья, все этапы собраны вместе, и о многих из них я не знал, что есть готовые решения. Надо будет изучить описанные технологии подробнее.
А мне очень не хватает возможности добавлять свои операторы с приоритетами в с++, приходиться крутиться с теми что есть.