Inesperadamente, hay muchas personas que piensan que puedes escribir el código como quieras, y todas estas reglas y recomendaciones son aburridas. Bueno, cada persona tiene derecho a una opinión.
Sin embargo, el código escrito de esta manera para leer, por alguna razón, la mayoría de las personas se niegan.
Y hay una razón. ¿Alguna vez has experimentado fatiga en la lectura? Por ejemplo, literatura técnica compleja, oficina, otro idioma? Estoy seguro de que sucedió. Y sí, es precisamente fatiga, aunque no es lo mismo que durante el esfuerzo físico. El texto difícil de leer consume muchos más recursos cerebrales.
El código también es texto. Y puede escribirlo de tal manera que la lectura se convierta en una ocupación extremadamente desagradable e intensiva en energía. Si de repente desea cerrar el editor y mirar los sellos mientras trabaja con fragmentos especialmente terribles del portal corporativo, entonces lo más probable es que no sea demasiado flojo o que el agotamiento haya sucedido repentinamente. La cosa es lo que lees.
El tema de la lectura es complejo y extenso. Lo peor de todo es que prácticamente no hay datos serios al respecto, a nivel de investigación médica y fisiología, en RuNet. Solo tocaré la punta del iceberg, por la sencilla razón de que estudiar todo el iceberg requiere una educación especializada (que no tengo) o un estudio similar de las fuentes (para lo que aún no estoy listo).
Para empezar, el mecanismo de lectura no es en absoluto una habilidad especial, sino el reconocimiento de patrones más común.
El cerebro tiene una limitación fisiológica: el tiempo de reconocimiento de imagen es casi constante, desde la aparición de un objeto frente a los ojos hasta el cerebro al darse cuenta de que este objeto es de aproximadamente 500 ms. Este no es un tipo de constante física, sino un número obtenido sobre la base de datos experimentales. Está claro que todas las personas son diferentes, alguien reacciona un poco más rápido, alguien más lento, incluso la misma persona reaccionará de manera diferente dependiendo del estado. Sin embargo, en promedio, esta cifra es aproximadamente la misma para todos. También es interesante observar que el tiempo de reconocimiento de patrones no difiere mucho para objetos de diferente complejidad, por ejemplo, un perro y la letra C se reconocerán con casi la misma eficiencia.
Para un lector curioso
Después de reconocer la imagen, el cerebro la incorpora a su imagen del mundo y de alguna manera opera con ella. Por ejemplo, vemos una mesa, objetos acostados sobre ella, una habitación y generamos un espacio virtual en función de las imágenes obtenidas. Hay una manzana y un cuchillo sobre la mesa, sabemos que una manzana puede pelarse o cortarse, un cuchillo puede lesionarse, si se toca una manzana rodará y así sucesivamente. Sin realizar ninguna acción, podemos asumir las consecuencias que acarrearán y, en base a esto, podemos desarrollar nuestro comportamiento para lograr los objetivos deseados.
Al leer, reconocemos las imágenes de las letras, las correlacionamos con los movimientos de los paquetes (pronunciando mentalmente para nosotros mismos), construimos una palabra sobre estos movimientos y colocamos la palabra resultante en nuestro modelo de contenido de texto. Esto, por supuesto, es solo al comienzo de aprender a leer, de hecho, los mecanismos de lectura funcionan muchas veces de manera más eficiente, la fase de hablar con experiencia ha desaparecido por completo.
Por ejemplo, ¿alguna vez te has preguntado por qué la velocidad de lectura se estima con palabras y no con letras? La explicación es simple: después de cierto nivel de una carta, una persona no lee. Él lee las palabras. La ortografía es extremadamente costosa, por ejemplo, la palabra "segundo" en promedio leería tres segundos y medio. En cambio, el cerebro aprende constantemente y después de un cierto número de reuniones con la escritura de una palabra, comienza a reconocerla por completo, evitando la etapa de ensamblar una palabra a partir de letras.
¿Cómo se reconoce una palabra?
En algún lugar de nuestra memoria se almacenan imágenes de referencia de palabras. Dado que hay una cantidad increíble de ellos, se almacenan con un alto grado de compresión, 10/10 chacales. Al leer, obtenemos la imagen de la palabra y la comprimimos al mismo estado, luego comenzamos a buscar correspondencia.
La búsqueda está MUY optimizada. Se puede argumentar confiablemente que no se trata de una enumeración directa del discurso. Naturalmente, es imposible describir este mecanismo en detalle, sin embargo, trataremos de hacer un modelo aproximado.
En el primer paso, se seleccionan las palabras adecuadas para la longitud. Les recuerdo que no se almacenan datos de texto en el cerebro, sino gráficos, por lo que vale la pena entender que solo se seleccionan imágenes que son similares en relación longitud / ancho.
Luego, se seleccionan las coincidencias más grandes en apariencia. Relativamente hablando, las imágenes comprimidas se superponen entre sí y si los colores de los puntos del estándar y la imagen coinciden, entonces se procesan más. Por lo tanto, por cierto, el cerebro puede ver palabras o imágenes incluso donde realmente no están. Por ejemplo, el fenómeno de los creyentes que descubren el rostro de Jesucristo en objetos claramente imposibles, como la sombra de un árbol o una grieta en el pan, es ampliamente conocido.
A continuación, se realiza un mapeo de contexto. Esas palabras que no pueden estar cerca o solo en el texto de este tema se reclinan. El resultado es una muestra pequeña, cuya exactitud es relativamente segura para el cerebro. La palabra de esta muestra con el mayor peso se considerará la opción correcta.
Si por alguna razón la muestra es demasiado grande o no hay una preponderancia obvia de una palabra, el cerebro tiene que volver a las fuentes y recogerla de las letras.
Después de que se reconoce la imagen, el objeto correspondiente se genera sobre la base y se ingresa en el espacio virtual del texto.
¿Y de dónde viene el código?
Por alguna razón, las personas escriben código como si antes no hubieran escrito ni leído nada en la vida. Bueno, o como si el planeta fuera capturado por extraterrestres malvados que chupan sangre y el código está escrito a punta de pistola de sus desintegradores de protones.
Incluso en los elegantes años noventa en Internet no había estilos de escritura tan extraños.
Los pasos anteriores de reconocimiento de texto no tienen en cuenta todas las características de la lectura, pero estos pasos son confirmados de manera confiable por la investigación y pueden usarse para explicar por qué algunas cosas al escribir un texto estropean su legibilidad.
El ejemplo más común es la transliteración en los nombres de funciones y variables.
removeFromSklads(42);
No hay una plantilla para la palabra sklads en el conjunto de estándares de una persona normal. Tengo que leerlo en inglés, vocalizar, encontrar una analogía en ruso. Esto aumenta el tiempo de la primera lectura en aproximadamente tres veces.
Un ejemplo aún más desagradable son las reducciones sin sentido.
cntr_nm_code = 38;
Probablemente el autor quería decir el código del nombre del país. Hmm ... Bueno, digamos. Además del problema obvio con la lectura, tenemos un problema al introducir este objeto en nuestro espacio de código virtual. Si hay una manzana en el texto, pero escribimos una manzana y en el futuro indicamos que la manzana debe cortarse, entonces tendrá que escribir "cortar la manzana". Cuando necesitamos escribir que asignamos un código a un país, comenzamos a escribir intuitivamente country_name_code y nos detenemos allí. No hay líneas en nuestras cabezas, ¿recuerdas?
Después de un uso repetido, el cerebro recordará cntr_nm_code, pero las primeras veces tropezará y mirará la información sobre herramientas del editor. Y es bueno si este consejo es.
El tema de las palabras "inapropiadas" se entiende bien. Hay estudios que muestran que leer palabras que no se ajustan al contexto o violan la sintaxis es mucho peor. Por ejemplo, la frase "cola de gato" es mucho más fácil de leer y más rápida que "cola de gato" debido a su evidente falta de lógica.
Sin embargo, es común que algunos desarrolladores olviden el orden de las palabras en una oración y, de hecho, el sentido común al escribir código.
website.userAdd(); read_from_cache_token(); wasBookReaded;
Desmontar todos los métodos de lectura de complicaciones por un tiempo largo y tedioso. Aquí hay una breve lista, en forma generalizada, de las principales prácticas que lo ayudarán a escribir código incorrecto. Si prueba con ellos el modelo de lectura anterior, las razones serán obvias.
Palabras desconocidas (transliteración, palabras ficticias, abreviaturas no obvias)
Infracción del orden sintáctico habitual (activePageSet (42))
No coinciden los formularios con el valor (activarThememe en lugar de themeIsActive)
Mimetismo de palabras (Nombre, nombre, _nombre y _Nombre en una función)
Estilos de nombres personalizados (funciones PHP estándar, por ejemplo)
¿Por qué todo esto causa fatiga?
Por el momento, no hay muchos métodos para estudiar los procesos que ocurren en el cerebro humano. Si los científicos comienzan a golpearlo, entonces el cerebro de la potencia informática se convierte en biomasa inútil. Como parte del tema del artículo, me basé en estudios
electroencefalográficos .
En cualquier actividad, el cerebro genera electricidad y estos datos pueden registrarse. Está claro que el contenido de información de este método es aproximadamente similar a los intentos de estudiar la vida de la ciudad al tomar radiación térmica de un satélite, pero incluso dichos datos serán suficientes para comprender el panorama general.
Aquí hay una ilustración de un
estudio de la reacción de una persona a palabras reales e inventadas.

Se pueden ver datos similares en el
estudio de leer oraciones con una violación del significado.
Como se puede ver en el gráfico, la actividad eléctrica del cerebro al leer una palabra desconocida es casi dos veces más larga y el potencial se desvía más de la norma. Obviamente, el gasto de energía del cerebro es mucho mayor, que es la razón de la "fatiga" de leer un texto de este tipo.
Conclusión y mala metáfora
Aunque no me gustan las analogías, hay una excelente comparación que nos permite comprender exactamente qué experimentamos al leer un texto con todos estos absurdos. Imagina que tienes un destornillador. Gira los tornillos perfectamente, durante muchos años ha recogido un extenso conjunto de brocas para una amplia variedad de sujetadores: una ranura recta, una cruz regular, una cruz con un asterisco, torx, hexágono ... En una palabra, todo lo que se necesita para el funcionamiento normal.
Y ahora necesitas girar mil tornillos. Abres la caja y ves allí los tornillos oxidados torcidos. Tomas una y ves que la ranura está hecha con la forma de la letra Z. Jurando en silencio que la giras con el bate recto habitual, que con dificultad, pero surgió.
El siguiente tornillo autorroscante debe girarse con un hexágono, pero solo en un ángulo de 15 grados con respecto a la cabeza del tornillo autorroscante. Entiendes que solo puedes girarlo con una llave. Bien, puedes pensar una vez y girarlo con tus manos.
En el siguiente tornillo autorroscante, la ranura se arranca. Jurando en voz alta ya lo retuerces con unos alicates.
El siguiente tornillo autorroscante tiene un bloqueo magnético especial y solo se puede girar con un palo magnetizado. Encuentras un imán en algún lugar, magnetizas un murciélago y lo giras.
El siguiente tornillo autorroscante también tiene un bloqueo magnético, pero solo se puede girar con un palo NO magnetizado. Pateas la caja con los tornillos y vas a la barra más cercana.
Los mecanismos de lectura son una herramienta depurada y ajustada que funciona fantásticamente eficiente. Cuando encuentra texto mal escrito, debe abandonar su uso y volver al nivel desde el que comenzó en primer grado. Naturalmente, al mismo tiempo, gasta mucho más esfuerzo y se enoja porque está haciendo un trabajo sin sentido.