I've always thought that having a gun is a nice theoretical way to defend your home, but unless you carry it with you all the time it is not much use.
I mean, a burglar isn't going to give you a lot of time to get your gun.
Most likely the burglar will invade your home when you are entering it or leaving it, to do something like putting out washing or going to the shops.
Alternatively, they might invade your home when you are asleep.
You know, even with all their training, over a third of soldiers either miss or don't fire in their first engagement with an enemy.
Now, don't get me wrong, I think learning to shoot is fun, I just think that a martial art is more likely to be useful unless you carry a gun all the time. Basically because theieves are not thick, and will not give you advanced warning that they are going to attack you.