Структура — это сравнительно небольшой инструмент.
Смотри, у тебя есть промышленный комплекс. Там есть упаковочный цех, который пакует продукцию в коробки определённого формата (структуру). И тебе совершенно плевать на форму этой структуры, если конвейер из этого цеха ведёт в мусорку.
Структуры — это низкий масштаб, на нём на всё пофигу, всё легко переделывается. И алгоритмы заменяются, и форматы и всё остальное.
Архитектура — это высокий масштаб, общая схема работы. При кривой архитектуре, приходится городить бешеное количество перепаковочных цехов и проводить конвейеры по внешней стене промышленного комплекса, и это уже задница: потеря кучи времени, денег, переусложнение, и капитальное удорожание дальнейшей поддержки.
Пока ты работаешь с крошечными приложениями в одиночку, для тебя структуры заменяют архитектуру.
Когда ты выходишь на уровень программных комплексов, делаемых группой людей, у тебя появляются совсем-совсем другие проблемы.