Como puede ver en las respuestas, no hay consenso sobre este asunto. A menos que trabaje en un equipo, use lo que le resulte más cómodo.
Yo prefiero insertar un salto de línea antes de los operadores.
Cada vez que tengo que romper líneas, generalmente pongo como máximo un término del mismo "nivel" en una línea:
Ley de gravitación de Newton en Python:
force = (
gravitational_constant
* mass_1
* mass_2
/ (distance * distance)
)
Compare esto con:
force = (
gravitational_constant *
mass_1 *
mass_2 /
(distance * distance)
)
Quiero saber, que "divido por distancia al cuadrado", no quiero saber, que "mass_2 se divide", porque no es así como pienso en las expresiones matemáticas.
Además, generalmente quiero saber primero, qué estoy haciendo (operador), antes de preocuparme por lo que hago (operandos).
O considere esta declaración SQL enrevesada:
WHERE
a = 1
AND b = 2
AND c = 3
AND ( -- or put the OR on one line together with the AND
d = 3
OR e = 1)
AND x = 5
Esto me permite ver cómo las condiciones individuales se conectan muy fácilmente, simplemente deslizando de arriba a abajo sin tener que leer cada línea hasta el final para encontrar el operador en lugar de:
WHERE
a = 1 AND
b = 2 AND
c = 3 AND
(
d = 3 OR
e = 1) AND
x = 5
Pienso en lo primero en términos de " X
es cierto", luego lo modifico diciendo: " Y esto también es cierto", lo cual me parece más natural que al revés. Además, el primero es mucho más fácil de analizar visualmente.
O un ejemplo de PHP:
$text = "lorem ipsum"
. "dolor sit amet, "
. "consectetur adipisicing elit, "
. "sed do eiusmod tempor";
Una vez más, puedo leer la lectura verticalmente para ver que simplemente estoy concatenando texto, porque la mayoría de las veces siento que en realidad no me importa lo que está dentro de las cadenas / condiciones.
Por supuesto, no aplicaría este estilo incondicionalmente. Si poner la nueva línea después de un operador parece tener más sentido para mí, lo haría, pero no puedo pensar en un ejemplo en este momento.