¿Cuándo usar setAttribute vs .attribute = en JavaScript?

Tiene una práctica recomendada para usar en setAttributelugar del punto (. notación de atributo )? P.ej: myObj.setAttribute("className", "nameOfClass"); myObj.setAttribute("id", "someID"); o myObj.className = "nameOfClass"; myObj.id =