Вся суть коммерческой разработки в том, что ты вообще не знаешь, где и что будет использоваться повторно. Поэтому с ростом безумия входящих требований растет безумие кода, в плане игры "на шаг впереди".
Не видя проекта - рассматривать эти оба варианта бессмысленно, т.к. можно набросать еще всяких разных, и они тоже будут рабочими. да хоть такой:
<div class="pop-up">
<img src="#" alt="Картинка" class="pop-up__img ">
<textarea class="pop-up__textarea textarea" cols="30" rows="10"></textarea>
<button class="button pop-up__button">
<span class="button__text pop-up__button_text"></span>
</button>
</div>