Visual Basic 2010 - 1 - Implicit Line o línea implícita - Jorge Serrano - MVP Visual Developer - Visual Basic

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.

Published 27/2/2010 17:30 por Jorge Serrano
Archivado en:
Comparte este post:

Comentarios

Saturday, February 27, 2010 5:46 PM por Jorge Serrano - MVP Visual Developer - Visual Basic

# Visual Basic 2010 - 0 - Introducción

Introducción A partir de ahora y durante el tiempo que dure, voy a tratar de hablar de las novedades

Sunday, February 28, 2010 8:03 PM por WhiteSkull

# re: Visual Basic 2010 - 1 - Implicit Line o línea implícita

interesante

Monday, April 19, 2010 4:38 AM por school grants

# thanks for the post

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!

Saturday, June 12, 2010 1:07 AM por conquistar a una mujer

# conquistar a una mujer

Este blog tiene excelentes consejos sobre como conquistar mujeres

Thursday, October 28, 2010 12:36 AM por Diseño Web

# re: Visual Basic 2010 - 1 - Implicit Line o línea implícita

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.