One thing that you must emphasise to your friend.
If you want to use a firearm, and use it safely and effectively, then it is IMPERATIVE that he practices with it by someone who is qualified to teach until it becomes natural and easy to use.
If not, the same firearm he may want to use to protect himself may well be used against him.
To draw at that close distance, (depending at what point you have identified a threat) and how fast the atacker is advancing, requires a lot of practice and normally at that close range it may require stepping back/shielding the advance, taking evasive action and or drawing at the hip.
You need to be sure of your aim in an urban environment and can't afford stray shots, even though the probability of hitting your intended target at closer distances is greater.
He will need to practice defensive/evasive techniques, because drawing and shooting doesn't guarantee disabling the attacker immediately. (of course depending on where he is hit and his capability).
To avoid shooting himself in the foot, practice, pratice and PROPER practice.
(You'll be surprised how many soldiers/law enforcement officers etc. shoot themselves or had near misses).
Its necessary too, because many attacks are so fast, the time it takes to realise the threat and draw can be less than 2 seconds.
For reliability and ease of use, a short barrel .357 will do the job, the only thing with revolvers is generally no external lever/button safety. so he's got to watch his hand on the trigger.
Semi-autos require more work, especially if you're not accustomed operating any safety levers present. And the question of carryng a round in the chamber..
But in a nutshell, DO NOT get a firearm unless you get the proper training to carry, store, and use it. Because you always have to be mindful where you go with it, how to keep it concealed and use it. Not only your life, or that of a potential attacker may be at stake, but that also of innocent people around.