I see what you mean, but... that's very tricky stuff! If you "forget" for example to put your InfoObject created in Y in Z, transport Z will fail in production and you may have no clue why (unless you're very familiar with transports, which obviously you're not)!
It's not only best practice, it's just common sense. I've been on projects where they do/did this and trust me, you don't really want to go there.