It may be better to use components for things that are intended to be used in multiple different actors.
If you just want to separate a single actor mechanics implementation and responsibilities, UObjects or AInfos may be a better choice.
Another thing to keep in mind is that actor components can be replicated very easily. Just set YourComponent->SetIsReplicated(true) and your component will be replicated with RPCs enabled and will share the same network owner as its parent actor.