solomon segun psicologia michael kotler gratis edicion consumidor comportamiento capitulo autores ruby string

ruby - segun - comportamiento del consumidor solomon capitulo 2



¿Qué estilo de cita de cuerdas de Ruby prefieres? (8)

Uso comillas simples a menos que necesite interpolación. El argumento de que es problemático cambiar más adelante cuando necesita cambios de interpolación en la otra dirección también: tiene que cambiar de doble a simple cuando descubrió que había un # o un / en su cadena que causó un escape que no hizo. Tengo la intención.

La ventaja de utilizar las comillas por defecto es que, en una base de código que adopta esta convención, el tipo de cita actúa como una señal visual de si se esperan o no expresiones interpoladas. Esto es aún más pronunciado cuando su editor o IDE resalta los dos tipos de cadenas de manera diferente.

Utilizo la sintaxis% {.....} para cadenas de varias líneas.

¿Qué estilo de cita de cuerdas de Ruby prefieres? Hasta ahora siempre he usado ''single quotes'' menos que la cadena contenga ciertas secuencias de escape o interpolación, en cuyo caso obviamente tengo que usar "double quotes" .

Sin embargo, ¿hay realmente alguna razón para no usar simplemente cadenas de comillas dobles en todas partes?


Siempre uso comillas simples a menos que necesite interpolación.

¿Por qué? Se ve mejor. Cuando tienes toneladas de cosas en la pantalla, muchas comillas simples te dan menos "desorden visual" que muchas comillas dobles.

Me gustaría señalar que esto no es algo que deliberadamente decidí hacer, solo algo que he ''evolucionado'' a lo largo del tiempo para tratar de lograr un código que se vea mejor.

Ocasionalmente usaré% q o% Q si necesito comillas en línea. Solo he usado heredocs tal vez una o dos veces.


Uso comillas simples a menos que necesite interpolación, o la cadena contiene comillas simples.

Sin embargo, acabo de aprender el truco delimitador arbitrario de la respuesta de Dejan, y creo que es genial. =)


Usualmente uso comillas dobles a menos que específicamente necesite deshabilitar el escape / interpolación.


Solía ​​usar comillas simples hasta que supe que necesitaba interpolación. Luego descubrí que estaba perdiendo mucho tiempo cuando volvía y tenía que cambiar algunas comillas simples por comillas dobles. Las pruebas de rendimiento no mostraron un impacto medible en la velocidad del uso de comillas dobles, por lo que recomiendo usar siempre comillas dobles.

La única excepción es cuando se utiliza sub / gsub con referencias anteriores en la cadena de reemplazo. Entonces deberías usar comillas simples, ya que es más simple.

mystring.gsub( /(fo+)bar/, ''/1baz'' ) mystring.gsub( /(fo+)bar/, "//1baz" )


Veo argumentos para ambos:

Para usar la mayoría de las comillas dobles:

  • Es más fácil buscar un foobar de cadena buscando "foobar" si fue consistente con las comillas. Sin embargo, no soy. Entonces busco [''"] foobar [''"] activando las expresiones regulares.

Para usar alguna combinación de comillas dobles simples:

  • Sepa si necesita buscar la interpolación de cadenas.
  • Puede ser un poco más rápido (aunque tan leve que no fue suficiente para afectar la guía de estilo github).

Al igual que muchos programadores, trato de ser tan específico como práctico. Esto significa que trato de hacer que el compilador haga el menor trabajo posible haciendo que mi código sea lo más simple posible. Entonces, para cuerdas, utilizo el método más simple que es suficiente para mis necesidades para esa cuerda.

<<END For strings containing multiple newlines, particularly when the string is going to be output to the screen (and thus formatting matters), I use heredocs. END %q[Because I strongly dislike backslash quoting when unnecessary, I use %Q or %q for strings containing '' or " characters (usually with square braces, because they happen to be the easiest to type and least likely to appear in the text inside).] "For strings needing interpretation, I use %s."%[''double quotes''] ''For the most common case, needing none of the above, I use single quotes.''

Mi primera prueba simple de la calidad del resaltado de sintaxis proporcionada por un programa es ver qué tan bien maneja todos los métodos de cotización.