First, the Reactions plugin and the change-like-icon theme component do not (almost) do the same thing.
Yes, you can use the Reactions plugin to change the like icon but its main purpose is to offer multiple possible reactions, so its functionality is much broader than only a cosmetic change.
A plugin can do everything a theme component can do, but a theme component can not do everything a plugin can do.
A plugin consists of server-side and client-side code,
and a theme component consists only on client-side code and has to rely on existing server-side code.