2012-07-15 12 views
26

Si ha leído ninguna guía de estilo de codificación, hay una gran probabilidad de que se vea una recomendación sobre el uso de espacios en lugar de tabuladores para el sangrado. Algunas guías dicen explícitamente: nunca use pestañas.aquí vs muesca espacio

sé que hay un riesgo de iniciar una guerra nuclear sobre las pestañas vs espacios. Seguramente no es lo que intento. Lo que sí intento es, sin embargo, preguntarle si hay alguna buena razón para esta recomendación. ¿Por qué todos siguen diciendo que los espacios son la mejor manera de sangrar el código?

+0

muy bien escrito. :) – sschrass

+0

Por cierto, si alguien vota para cerrar la pregunta, sería útil saber _por qué_ fue eso. ¡Gracias! –

+3

Esto se ha hecho hasta la muerte el PSE: http://programmers.stackexchange.com/questions/57/tabs-versus-spaceswhat-is-the-proper-indentation-character-for-everything-in-e por ejemplo – Flexo

Respuesta

3

aquí puede tener un tamaño diferente en diferentes ordenadores e impresoras. El código puede verse bien en la computadora original, pero en otra computadora o en una copia impresa, el espaciado puede parecer extraño.

Con espacios, el código será el mismo, independientemente de la computadora.

+9

sí, pero la ventaja de las pestañas, sin embargo, es que puede establecer el ancho de la pestaña sin afectar realmente la fuente. Gracias por la explicación de la impresión. No pensé en eso (ya que no imprimo código) –

+3

Y comienza la guerra nuclear. :) Solo indicando por qué a la mayoría de las personas les gustan los espacios. – Starkey

+0

Juro que no quiero una llama en esto. Quiero escuchar más ventajas de los espacios sobre la pestaña. (Personalmente utilizo espacios para sangrías, principalmente porque seguí las guías, pero algunos amigos me instan a cambiar a las pestañas; no soy capaz de aportar ningún otro argumento válido que no sea 'es lo que hacen los chicos grandes ') –

4

conseguir pestañas se vean depende en gran medida de la derecha de la configuración/opciones de todo el software de código fuente puede ser muestra o imprime. Si tiene un conjunto restringido de dicho software y encuentra que no es un problema práctico para usted, eso es genial, apúntelo si ve el valor. Pero tenga en cuenta que cuando una línea está sangrada con pestañas, continúa en las líneas siguientes donde desea una sangría basada en la posición de un paréntesis de apertura, para alinear las comillas, etc. - estará mezclando pestañas y espacios de una manera Visualmente imposible verificar la corrección de (a menos que su editor muestre las pestañas de manera diferente). Contrarrestar eso, usar las teclas de flecha para cruzar las pestañas, o eliminar, puede ser más rápido pero también más confuso y frustrante. Es raro que diferentes personas que usan anchos de pestañas diferentes trabajen limpiamente en el mismo código, que es quizás la principal promesa de las pestañas. Personalmente, uso espacios.

+2

+1 para la mezcla de pestañas y espacios argumento – Gevorg

+0

También podría señalarse que intentar alinear cosas entre líneas es una tontería intentarlo de todos modos, ya que la parte de la primera línea con la que intenta alinearse puede cambiar debido a un cambio de nombre. Vea la charla de Kevlin Henney, Siete costumbres de codificación ineficaces en una alternativa "perfecta" que hace que cualquier excusa de "alinear cosas arriba" se desinfle. –

+1

@JacobZimmerman parece una guerra religiosa más :-). Personalmente, me gusta mantener mis opciones abiertas y hacer lo que creo que es óptimo en un código específico. –