Reusable components allow you to make changes once and have them update everywhere.
Components can also be nested inside each other making them very powerful. As an example a card component with nested tags.
Adding attributes to a component allows you to use the UI to make changes to the component without code.