You should use smart objects in Photoshop if you want to perform non-destructive editing to your layers, such as scaling, rotating, filtering, linking, etc. Smart objects also allow you to work with vector data, such as vector artwork from Illustrator, that otherwise would be rasterized in Photoshop. Smart objects have many benefits, but also some limitations, such as painting, blending, liquifying, etc.