Объясните концепцию невыходящих из области видимости замыканий в программировании.
Можешь ли ты перечислить основные виды утечек памяти, которые могут возникнуть при программировании на Swift?