Одна вещь, с которой я сталкиваюсь, - это планирование архитектуры приложения до написания кода.
Я не имею в виду сбор требований, которые необходимо ограничить тем, что нужно делать приложениям, а скорее эффективно думать о хорошем способе выложить общий класс, данные и структуры потоков и повторять эти мысли, чтобы у меня была заслуживающий доверия план действий, прежде чем даже открыть IDE. На данный момент все легко просто открыть IDE, создать пустой проект, начать писать биты и бобы и позволить дизайну "расти" оттуда.
Я собираю UML - это один из способов сделать это, но у меня нет опыта с ним, поэтому он кажется немного туманным.
Как вы планируете архитектуру приложения перед написанием кода? Если UML - это способ, вы можете порекомендовать краткое и практическое введение для разработчика небольших приложений?
Я ценю ваш вклад.