Hola:
Pues viéndolo (tal como dices) como pseudo-código, parece correcto el planteamiento, pero siempre hay distintas maneras de validar, y lo que estás planteando sólo vale para evitar campos vacíos, y todos obligatorios... una variante bastante corriente es en base a expleciones regulares como los emails u otros formatos definidos, tal vez teléfonos, códigos postales/zip, etc, por lo que siempre sería necesario ampliar tu código-base... por ejemplo con parejas campo/tipo...
Se me ocurre también que haya campos opcionales, pero al menos uno relleno, como pedir dirección postal, o correo electrónico o teléfono para contactar... bueno, hay un abanico bastante amplio de opciones como para plantear un bucle, aunque es una idea.
Saludos