VHDL using flow control vs minimization
It isn't an either-or proposition.

Regardless of the syntax you use to express the logic in your VHDL source code, the synthesis tools will convert it into a canonical internal representation and perform the appropriate minimization/optimization on it before mapping it to the target implementation technology (gates, LUTs, etc.).

Feel free to use whatever syntax in the source code that expresses your intent most clearly.