I agree that the attributes assignment is clearer. Perhaps we can leave it like that because the assignment to attributes method is much easier to read and, hopefully, developers should realise that they shouldn't change these things after creating the object.