Разница между глубокой (deep) и поверхностной (shallow) копиями объекта? Как сделать каждую из них?

-