Can’t say that it is a bad example. I use the weapon system my self.
It uses a state system and a base class for all weapon replication, like shooting, reloading etc. It is designed to create your weapons easily through BPs once you create the base class and the specific subclass (like projectile and instante hit weapons).
Play the ShooterGame and decide your self. I don’t think that there is a perfect weapon system and if it is, there won’t be a tutorials