Actually, that depends on personal preference.
There are no mandatory practice needed for stuff like where to put constants.
In addition, preinit, init, and postinit are not necessary; there is no reason to add them unless you need them (which is not "when adding items and blocks").