слабая связь в основном означает, что вы хотите, чтобы компоненты вашей программы легко соединялись с другими компонентами, это было то, что вы могли наслаждаться повторным использованием кода и делать вещи более эффективными, например, существуют шаблоны проектирования, такие как MVC (Model View Controller), которые помогают у вас есть разделение интересов, вы можете иметь некоторый код, отвечающий за графический интерфейс, и другой код, отвечающий за доступ к базе данных, и если вы хотите изменить любую из этих частей, вы хотите, чтобы они не были слишком зависимы друг от друга. т. е. именно поэтому вы должны полагаться на интерфейсы, а не на реализации, вы хотите упростить ситуацию, потому что программное обеспечение постоянно меняется / развивается.
Обычно слабая связь упоминается вместе с понятием «Высокая сплоченность», эта может быть субъективной, но это не что иное, как написание кода, который имеет смысл и разрабатывает ваши компоненты таким образом, чтобы облегчить понимание, обслуживание, расширяемость и т. Д.