Curso de ASP.NET

Cursos Relacionados:

1.3 La clase base .NET

Una de las ventajas de las clases que nos ofrece .NET es que tenemos una enorme cantidad e material para trabajar con él en la "biblioteca de clase base". Esta contiene una enorme cantidad e funciones disponibles para nuestros programas y que nos simplificará las tareas mas comunes.

La clase base contiene muchas funciones diferentes. Por ejemplo necesitamos mostrar un texto pero ¿qué pasa si en lugar de hacerlo de la forma básica lo hacemos a través de unas operaciones mas especializadas y versátiles? por ejemplo para incluir o incrustarlo automáticamente con rectángulos, gráficos animados... Estas funciones están agrupadas en un "spacename" o espacio de nombres llamado "System.Drawing"

Un spacename o espacio de nombres es simplemente una forma de agrupar las distintas clases del mismo tipo. Por ejemplo System.Drawing agrupa todas las clases para trabajar con gráficos, otros como veremos mas adelante agrupan acceso a ficheros, a bases de datos...

Pero de momento no te líes, simplemente que podemos utilizar como una especie de grupos de instrucciones y otros componentes añadiendo o utilizando "namespaces" a nuestros programas. De esta forma mantenemos los recursos de las aplicaciones en diferentes sitios reduciendo los conflictos.

Hay espacios de nombres específicos por ejemplo para los gráficos y otros para trabajar con bases de datos, así los tenemos organizados de una forma mas cómoda para localizarlo y referirnos a ellos en el código.

Para que nuestras páginas reconozcan este grupo de clases incluiremos una "directiva" en la parte superior del código. Por ejemplo si vamos a utilizar el spacename System.Drawing escribiremos esto en la parte superior de la página:

import Namespace=System.Drawing

Las directivas son unas instrucciones especiales que se aplican para todo el programa o toda la página. Al incluir la directiva al comienzo de ella se reconocerá todo el código que hagamos referencia a System.Drawing. De no haberla puesto nos habría dado error al intentar utilizar estos objetos.

Hay varios spacenames pero no te preocupes son siempre los mismos y con varios ejemplos verás que se repiten continuamente. Pero ¿porque hace falta esto y .NET no reconoce ya todo al comienzo? La razón principal es el rendimiento, al manejar todas clases de golpe el programa es mas grande y complejo, si le indicamos los grupos de instrucciones que necesitaremos pues mejor.


Inscríbete ahora y accede a 3 unidades gratis

Evalua el curso de ASP.NET y accede a las 3 unidades gratis con acceso completo al aula virtual donde podrás disfrutar de la inestimable ayuda del tutor y una gran variedad de recursos como videotutoriales, ejercicios resueltos, foros, enlaces, bibliografía, etc....


2. Visual Basic .NET


Inscríbete ahora y accede a 3 unidades gratis

Evalua el curso de ASP.NET y accede a las 3 unidades gratis con acceso completo al aula virtual donde podrás disfrutar de la inestimable ayuda del tutor y una gran variedad de recursos como videotutoriales, ejercicios resueltos, foros, enlaces, bibliografía, etc....


2.1 Las variables y los tipos de datos.

Las variables como ya conoces son partes fundamentales de los programas y sirven para almacenar datos en memoria bajo un nombre descriptivo. Existen muchos tipos de variables dependiendo de lo que queramos almacenar: fechas, cadenas de caracteres, enteros, reales ... y en nuestros programas debemos definir cuantas y de que tipo utilizaremos.

Para los que venís de ASP buenas y malas noticias. La buena es que por fin hay declaraciones de variables de verdad y además están fuertemente tipificadas (adiós a los variant) y la mala es que hay que abandonar el vicio de no declarar variables.

VB.NET es un lenguaje "fuertemente tipificado" es decir, debemos declarar todas las variables que vayamos a utilizar y además decirle de que tipo de datos es. Esta obviedad no existía hasta ahora ya que en ASP no existían las variables y en el antiguo Visual Basic (hasta la versión 6) era un poco caótico la utilización correcta de las variables por la supuesta ventaja de no decir que de tipo son las variables al declararlas. Tranquilo iremos despacio con este tema...

Esto del tipificado significa por ejemplo que definíamos una variable "a" y no hacía falta decirle que tipo de datos iba a contener, así que podía admitir un número entero, con decimales, una fecha, una cada de caracteres... esto hacía que si el resultado de una operación o asignación no eran correcto el programa ni se enteraba.

El primer paso será aprender qué son, cómo se definen y cómo funcionan las  variables


Inscríbete ahora y accede a 3 unidades gratis

Evalua el curso de ASP.NET y accede a las 3 unidades gratis con acceso completo al aula virtual donde podrás disfrutar de la inestimable ayuda del tutor y una gran variedad de recursos como videotutoriales, ejercicios resueltos, foros, enlaces, bibliografía, etc....


2.2 Variables, constantes y otros conceptos relacionados

Una variable es un identificador que guarda un valor que puede ser modificado a lo largo del programa, por ejemplo asignarle a la palabra "edad" el valor "39". El concepto de constante, es algo que permanece inalterable a lo largo del programa. Por ejemplo podemos asignarle a la palabra "euro" el valor 166,386.

Las variables son "nombres" que pueden contener un valor, ya sea de tipo numérico como de cualquier otro tipo. Esos nombres son convenciones que nosotros usamos para facilitarnos las cosas, ya que para los ordenadores, una variable es una dirección de memoria en la que se guarda un valor o un objeto.

Existen distintos tipos de valores que se pueden asignar a una variable, por ejemplo, se puede tener un valor numérico o se puede tener un valor de tipo alfanumérico o de cadena, (string), pero en cualquier caso, la forma de hacerlo siempre es de la misma, por ejemplo si queremos guardar el número 10 en una variable, haremos algo como esto:

i = 10

En este caso i es la variable, mientras que 10 sería una constante, (10 siempre vale 10), la cual se asigna a esa "posición" de memoria a la que llamamos i, para facilitarnos las cosas... ya que, realmente no nos interesa saber dónde se guarda ese valor, lo único que nos interesa es saber que se guarda en algún lado para en cualquier ocasión poder volver a usarlo.

Al ser una variable podemos alterar su valor, por ejemplo, si en cualquier ocasión posterior hacemos esto: i = 25, el valor de la variable i cambiará, de forma que el valor anterior se modificará y el que se almacenará será el nuevo.

También podemos aplicar expresiones al asignar una variable, una expresión es un cálculo que queremos hacer, por ejemplo: i = x * 25, en este caso x * 25 se dice que es una expresión, cuyo resultado, (el resultante de multiplicar lo que vale la variable x por la constante 25), se almacenará en la variable i.

Si x vale 3, (es decir el valor de la variable x es tres), el resultado de multiplicarlo por 25, se guardará en la variable i, es decir i valdrá 75.

Cuando se asignan valores de cadenas de caracteres ó alfanuméricos (string) el contenido de la variable debe ponerse entre comillas "". Para asignar una cadena de caracteres a una variable, se haría algo como esto: s = "Hola"

De esta forma, la variable s contiene el valor constante "Hola". Podemos cambiar el valor de s, asignándole un nuevo valor: s = "adiós".

Pero no es suficiente saber qué es una variable, lo importante es saber cómo decirle al VB.NET que queremos usar un espacio de memoria para almacenar un valor, ya sea numérico, de cadena o de cualquier otro tipo. Para esto utilizaremos las declaraciones de variables. La declaración de una variable es el proceso por el que le decimos s VB.NET que cree una variable y le indicaremos su nombre y su tipo. Es necesario, aunque no obligatorio, declarar las variables según el tipo de datos que va a almacenar. Esto es una de las cosas que mas nos pueden chocar al  principio de VB.NET (en general de VB): las variables podemos declararlas o no.

Ya hablaremos de esto mas adelante pero si no hace falta declararlas... ¿para qué tanta teoría e instrucciones? Bueno pues porque existen las dos posibilidades y la de no declarar variables puede ser muy cómodo al principio pero muy complejo mas adelante. Las normas del buen programador obligan a declarar todas las variables que utilicemos en el programa. Esto puede dar un poco mas de trabajo pero es imprescindible para escribir un buen código.

Para declarar una variable utilizaremos las palabras clave: DIM, PRIVATE, PUBLIC ó STATIC, dependiendo de cómo queremos que se comporte.

Por ejemplo, en el caso anterior, la variable i era de tipo numérico y la variable s era de tipo cadena. Esas variables habría que declararlas de la siguiente forma: (después veremos otras formas de declarar las variables numéricas)

Dim i As Integer
Dim s As String

Con esto le estamos diciendo al vb.NET que reserve espacio en su memoria para guardar un valor de tipo Integer, (numérico), en la variable i y que en la variable s vamos a guardar valores de cadena de caracteres.

Vale, existe un tipo de datos para los valores numéricos y otro para los alfanuméricos... ahora veamos en una tabla todos los tipos existentes y comentaremos cuales debemos utilizar:


Inscríbete ahora y accede a 3 unidades gratis

Evalua el curso de ASP.NET y accede a las 3 unidades gratis con acceso completo al aula virtual donde podrás disfrutar de la inestimable ayuda del tutor y una gran variedad de recursos como videotutoriales, ejercicios resueltos, foros, enlaces, bibliografía, etc....


2.3 Tipos de datos de Visual Basic.NET y su equivalente en el Common Language Runtime (CLR)

Tipo de Visual Basic Tipo en CLR
(Framework)
Espacio de memoria que ocupa Valores que se pueden almacenar
y comentarios
Boolean System.Boolean 2 bytes Un valor verdadero o falso.
Valores: True o False.

En VB se pueden representar por -1 o 0, en CLR serán 1 y 0, aunque no es recomendable usar valores numéricos, es preferible usar siempre True o False.
Dim b As Boolean = True

Byte System.Byte 1 byte Un valor positivo, sin signo, para contener datos binarios.
Valores: de 0 a 255

Puede convertirse a: Short, Integer, Long, Single, Double o Decimal sin recibir overflow
Dim b As Byte = 129

Char System.Char 2 bytes Un carácter Unicode.
Valores: de 0 a 65535 (sin signo).

No se puede convertir directamente a tipo numérico.
Para indicar que una constante de cadena, realmente es un Char, usar la letra C después de la cadena:
Dim c As Char = "N"c

Date System.DateTime 8 bytes Una fecha.
Valores: desde las 0:00:00 del 1 de Enero del 0001 hasta las 23:59:59 del 31 de Diciembre del 9999.

Las fechas deben representarse entre almohadillas # y por lo habitual usando el formato norteamericano: #m-d-yyyy#
Dim d As Date = #10-27-2001#

Decimal System.Decimal 16 bytes Un número decimal.
Valores:
de 0 a +/-79,228,162,514,264,337,593,543,950,335 sin decimales;
de 0 a +/-7.9228162514264337593543950335 con 28 lugares a la derecha del decimal;
el número más pequeño es:
+/-0.0000000000000000000000000001 (+/-1E-28).

En los literales se puede usar la letra D o el signo @ para indicar que el valor es Decimal.
Dim unDecimal As Decimal = 9223372036854775808D
Dim unDecimal2 As Decimal = 987654321.125@

Double System.Double 8 bytes Un número de coma flotante de doble precisión.
Valores:
de -1.79769313486231570E+308 a
-4.94065645841246544E-324 para valores negativos;
de 4.94065645841246544E-324 a 1.79769313486231570E+308 para valores positivos.

Se puede convertir a Decimal sin recibir un overflow.
Se puede usar como sufijo el signo almohadilla # o la letra R para representar un valor de doble precisión:
Dim unDoble As Double = 125897.0235R
Dim unDoble2 As Double = 987456.0125#

Integer System.Int32 4 bytes Un número entero (sin decimales)
Valores:
de -2,147,483,648 a 2,147,483,647.

Se puede convertir a Long, Single, Double o Decimal sin producir overflow.
Se puede usar la letra I o el signo % para indicar que es un número entero:
Dim unEntero As Integer = 250009I
Dim unEntero2 As Integer = 652000%

Long
(entero largo)
System.Int64 8 bytes Un entero largo (o grande)
Valores:
de -9,223,372,036,854,775,808 a 9,223,372,036,854,775,807.

Se puede convertir a Single, Double o Decimal sin producir overflow.
Se puede usar la letra L o el signo & para indicar que es un número Long:
Dim unLong As Long = 12345678L
Dim unLong2 As Long = 1234567890&

Object System.Object (class) 4 bytes Cualquier tipo se puede almacenar en una variable de tipo Object.
Todos los datos que se manejan en .NET están basados en el tipo Object.
Short
(entero corto)
System.Int16 2 bytes Un entero corto (sin decimales)
Valores:
de -32,768 a 32,767.

Se puede convertir a: Integer, Long, Single, Double o Decimal sin producir un overflow.
Se puede usar la letra S para indicar que es un número entero corto:
Dim unShort As Short = 32000S

Single System.Single 4 bytes Número de coma flotante de precisión simple.
Valores:
de -3.4028235E+38 a -1.401298E-45 para valores negativos;
de 1.401298E-45 a 3.4028235E+38 para valores positivos.

Se puede convertir a: Double o Decimal sin producir overflow.
Se pueden usar la letra F y el símbolo ! para indicar que es un número Single:
Dim unSingle As Single = 987.125F
Dim unSingle2 As Single = 65478.6547!

String
(cadenas de longitud variable)
System.String (clase) Depende de la plataforma Una cadena de caracteres Unicode.
Valores:
de 0 to aproximadamente 2 billones (2^31) de caracteres Unicode.

Se puede usar el símbolo $ para indicar que una variable es un String.

Tipos definidos por el usuario
(estructuras)
(heradada de  System.ValueType) Depende de la plataforma Cada miembro de la estructura tiene su rango, dependiendo del tipo de dato que representa.

Esta tabla muestra algunos de los mas importantes de ellos y los valores mínimos y máximos que puede contener, así como el tamaño que ocupa en memoria. Tenemos los tipos de datos que podemos usar en vb.NET y por tanto, de los que podemos declarar variables. Por ejemplo, si queremos tener una variable en la que guardaremos números enteros, (sin decimales), los cuales sabemos que no serán mayores de 32767 ni menores de -32768, podemos usar el tipo Short:

Dim variable As Short
 

Después podemos asignar el valor correspondiente:

    variable = 15000

Cuando asignemos valores a las variables podemos hacer esta asignaciones dependiendo del tipo que es, es decir, según el tipo de dato de la variable puede ser necesario el uso de delimitadores para encerrar el valor que vamos a asignar:

  • Tipos numéricos. Las variables no necesitan delimitadores, se asignan directamente. Si es una valor real los decimales se separan con el punto.
  • Tipos alfanuméricos o cadenas de caracteres. Las variables se encierran entre comillas: "pepe", "casado"
  • Fecha. Podemos encerrar la fecha con los signos #. Por ejemplo #01/01/2004#. o con comillas dobles. La diferencia (y muy importante) es que si utilizamos las almohadillas # el formato de la fecha es mes/día/año y si es la comilla el formato es día/mes/año (por el valor de la configuración regional de nuestro equipo).
  • Tipos lógicos (boolean). Las variables de este tipo sólo pueden tener los valores Verdadero (True) o falso (False)

Las variables las podemos declarar en cualquier parte del código pero por norma utilizaremos lo mas lógico que es declararlas al principio de nuestras rutinas o procedimientos. También podemos asignar un valor a la variable en el momento de crearla por ejemplo:

Dim valor as string="mesa"
Dim edad as long="23"

Que sería lo mismo que hacer:

Dim valor as string
Dim edad as long

valor="mesa"
edad=23

Por regla general no haremos esa asignación en la declaración simplemente porque en muchos casos no sabremos su valor predeterminado ya que estamos declarando esas variables para realizar cálculos en el código.


Inscríbete ahora y accede a 3 unidades gratis

Evalua el curso de ASP.NET y accede a las 3 unidades gratis con acceso completo al aula virtual donde podrás disfrutar de la inestimable ayuda del tutor y una gran variedad de recursos como videotutoriales, ejercicios resueltos, foros, enlaces, bibliografía, etc....


Si desea obtener un acceso sin restricciones a los contenidos del curso de ASP.NET y disfrutar de todas las herramientas del aula virtual (Videos explicativos streaming, acceso a los foros, chat, ejercicios resueltos, la ayuda del tutor, audioconferencia, estudio de grabación, test y actividades de autoevaluación, etc...) puede inscribirse completamente gratis y comenzar a realizar de forma inmediata el curso.