Nunca he usado breaks en bucles porque desde un inicio me dijieron que es una mala practica de programacion pero nunca me explciaron porque y me gustaria saber xD
Buenas.
La razón no es realmente técnica, es que aumentan la complejidad del flujo de control de tu código y es mucho más difícil de comprender lo que hace a la hora de leerlo. Echa un ojo a este hilo: http://stackoverflow.com/a/18589184 (http://stackoverflow.com/a/18589184)
Un saludo.
La razón como ha dicho jimeno es por complejidad, cuando tienes un bucle sencillo es fácil de saber identificar por qué el bucle acabó, pero en códigos más complejos, meter un break() puede llegar a romperte la cabeza.