Ни того, ни другого.
В любом случае вам придется подумать о начале проекта, решив общий подход, который вы выберете, и какие операции вы будете поддерживать.
Делайте это достаточно хорошои вы определили интерфейс между представлением и базовой логикой.Посмотрите на подход Model-View-Controller для вдохновения.
То, что вы хотите иметь на ранней стадии, - это представление о том, какие основные операции должен выполнять ваш логический код, чтобыдостичь цели.Обычно это будет простой вызов функции, но иногда это может включать в себя нечто большее.Сначала убедитесь в этом.
Затем сложная система, которая работает, основана на простой системе, которая работает.
Это означает, что вам потребуется базовый пользовательский интерфейс, который вы будете использовать для тестированияреализация базовой логики в первую очередь.Простая форма с кнопкой, которая представляет сообщение достаточно проста.Затем он может расти, вы реализуете часть функциональности, а затем добавляете простой пользовательский интерфейс, с которым вы можете протестировать его.
Проще сделать как кусочек за кусочком, так и логику и пользовательский интерфейс для небольшого кусочка.логика концептуально схожа, и будет легко отслеживать и то, и другое при реализации и тестировании.
Самая важная часть состоит в том, чтобы не связывать пользовательский интерфейс и логику, заставляя их общаться через общий интерфейс.Это позволит вам быстро вносить изменения, когда это необходимо, и улучшать внешний вид графического интерфейса пользователя до конца.
Вы сможете лучше отказаться от пользовательского интерфейса, если он вам не нравится.Все, что вам нужно сделать, это использовать тот же интерфейс, который вы знаете, как делать, потому что вы написали его и уже реализовали его.
Если в какой-то момент вы поймете, что совершили большую ошибку, выможет по-прежнему спасать части кода, опять же, потому что пользовательский интерфейс и логика отделены, и, надеюсь, логическая часть также является достаточно модульной.и держать вещи модульными.