di in golang