Visual Basic 2010 – 1 – Implicit Line o línea implícita
Introducción
Una de las novedades más destacables de Visual Basic 2010 se denomina Implicit Line o línea implícita.
Todo recordaremos que para escribir una sentencia de Visual Basic en varias líneas, debíamos hacer uso del caracter especial guión bajo (_).
Un ejemplo de esto es el siguiente (Visual Basic 2008 y anteriores, incluyendo Visual Basic 6 y anteriores):
MessageBox.Show( _
«Ejemplo»)
¿Cómo funciona la línea implícita en Visual Basic 2010?
La novedad incorporada en el lenguaje, en Visual Basic 2010, nos permite escribir también código como por ejemplo:
Dim value As Integer = 1
MessageBox.Show(
«Valor « &
value)
Dim information As String = String.Empty
For I As Integer = 0 To 10
information &=
I & Environment.NewLine
Next
MessageBox.Show(information)
En este ejemplo, podemos ver como hemos concatenado diferentes partes del código pertenecientes a la misma instrucción, incluyendo el uso del símbolo & ó &=.
¿Cómo se utiliza?
Por un lado, no debemos olvidar que esto no es la panacea, es decir, no se puede utilizar así queramos y como queramos. Es necesario aplicar algunas reglas y sobre todo el sentido común.
Escribir lo siguiente por ejemplo:
For I As Integer = 0 To 10
information &=
I
& Environment.NewLine
Next
Hará que el compilador nos devuelva un error en tiempo de diseño: Syntax error.
El mensaje de error creo que es significativo y muy claro. Se trata de un error de sintáxis, y es que Visual Basic 2010 permite escribir instrucciones más o menos, como nos venga en gana, pero no realmente como queramos, sino como Visual Basic nos permita.
La forma de resolver el problema anterior es escribiendo el siguiente código:
For I As Integer = 0 To 10
information &=
I _
& Environment.NewLine
Next
Nótese que hemos indicado detrás de la letra I el carácter guión bajo (_) que indica que la instrucción continúa en la siguiente línea.
Del mismo modo, tampoco sería correcto emplear algo similar a:
For I As Integer = 0 To 10
information &=
I & Environment.NewLine
Next
En este ejemplo, hemos escrito un salto de carro (Intro) entre information &= y la siguiente parte de su instrucción.
Una vez más, para resolver este problema, deberíamos haber utilizado el carácter de continuación de línea, dejando nuestro ejemplo como:
For I As Integer = 0 To 10
information &=
_
I & Environment.NewLine
Next
De esta manera, hay varias reglas muy generales y útiles. Me dejaré alguna seguramente, pero con sentido común se pueden obtener.
Así, no se puede hacer uso de línea implícita después de un atributo, después de una coma o de un punto (invocación de método), después de un operador binario o de una claúsula LINQ, después de un carácter (, {, ), }, <% ó >%.
Hay más situaciones, y no es cuestión de enumerar una a una cuales son, pero sirva esto como patrón a tener en cuenta, sin olvidarnos del caracter de separación de toda la vida (_) y de un uso adecuado de esta característica.
¿Y esto de la línea implícita es bueno?
La palabra «bueno» es muy genérica, quizás podríamos decir ¿apropiado?.
Como todo, tiene sus pros y sus contras.
Es cierto que es más cómodo, ahora bien, esto en manos de un talibán informático, un destroyer del código o un descerebrado programador, puede ser una herramienta con efectos similares al una bomba H.
Podríamos pensar en el código spaguetti o en la ofuscación… teniendo esto… ¿para qué queremos esas herramientas?.
A veces es bueno llevar algo al borde del caos para organizar y ordenar las tareas y todo lo que nos rodea. Esta característica es un buen ejemplo de ello.
A mí me gusta y me parece interesante, pero debemos ser consecuentes con su uso. Podríamos caer en la tentación de usarlo por sistema y hacer un código difícilmente mantenible.
Es por ello, que debemos hacer un uso moderado e inteligente de esta característica, tabular si es preciso, comentar el código y ordenarlo su fuera preciso, y actuar de forma responsable.
Lo demás, será actuar como un poseso salido de sí y generando código que tenga un efecto colateral más dañino que el propio beneficio que se trataba de buscar.
Así que… usarlo sí, pero con inteligencia.
5 Responsesso far
Introducción A partir de ahora y durante el tiempo que dure, voy a tratar de hablar de las novedades
interesante
Pretty nice post. I just stumbled upon your blog and wanted to say that I have really enjoyed browsing your blog posts. In any case I’ll be subscribing to your feed and I hope you write again soon!
Este blog tiene excelentes consejos sobre como conquistar mujeres
Quiero felicitarte por este gran blog, la verdad llegué a tú por recomendación de un amigo y realmente le agradezco ya que he encontrado información muy valiosa en tú sitio, espero sigas así.
Un saludo.