Desarrollo de softwareTexto diseado para ensear en profundidad a
desarrollar aplicaciones basadas en la plataforma .NET Framework,
utilizando Visual Basic .NET como lenguaje. El texto cubre tanto
aspectos bsicos como avanzados, abordando el lenguaje, programacin
orientada a objetos (OOP), el entorno de desarrollo de aplicaciones
(IDE) de Visual Studio .NET, etc. Se trata de un manual de muy
amplio contenido en documentacin, adems de numerosos ejemplos
listos para ser utilizados desde Visual Basic .NET. Entre los
requisitos previos, basta con conocimientos de fundamentos de
programacin, conocer al menos un lenguaje, sea este el que sea y
conocer el S.O. Windows a nivel de usuario.
PROGRAMACIN EN VISUAL BASIC .NETLUIS MIGUEL BLANCO
ADVERTENCIA LEGALTodos los derechos de esta obra estn reservados
a Grupo EIDOS Consultora y Documentacin Informtica, S.L. El editor
prohbe cualquier tipo de fijacin, reproduccin, transformacin,
distribucin, ya sea mediante venta y/o alquiler y/o prstamo y/o
cualquier otra forma de cesin de uso, y/o comunicacin pblica de la
misma, total o parcialmente, por cualquier sistema o en cualquier
soporte, ya sea por fotocopia, medio mecnico o electrnico, incluido
el tratamiento informtico de la misma, en cualquier lugar del
universo. El almacenamiento o archivo de esta obra en un ordenador
diferente al inicial est expresamente prohibido, as como cualquier
otra forma de descarga (downloading), transmisin o puesta a
disposicin (an en sistema streaming). La vulneracin de cualesquiera
de estos derechos podr ser considerada como una actividad penal
tipificada en los artculos 270 y siguientes del Cdigo Penal. La
proteccin de esta obra se extiende al universo, de acuerdo con las
leyes y convenios internacionales. Esta obra est destinada
exclusivamente para el uso particular del usuario, quedando
expresamente prohibido su uso profesional en empresas, centros
docentes o cualquier otro, incluyendo a sus empleados de cualquier
tipo, colaboradores y/o alumnos. Si Vd. desea autorizacin para el
uso profesional, puede obtenerla enviando un e-mail [email protected]
o al fax (34)-91-5017824. Si piensa o tiene alguna duda sobre la
legalidad de la autorizacin de la obra, o que la misma ha llegado
hasta Vd. vulnerando lo anterior, le agradeceremos que nos lo
comunique al e-mail [email protected] o al fax (34)-91-5012824). Esta
comunicacin ser absolutamente confidencial. Colabore contra el
fraude. Si usted piensa que esta obra le ha sido de utilidad, pero
no se han abonado los derechos correspondientes, no podremos hacer
ms obras como sta. Luis Miguel Blanco, 2002 Grupo EIDOS Consultara
y Documentacin Informtica, S.L., 2002 ISBN 84-88457-53-7
Programacin en Visual Basic .NETLuis Miguel BlancoResponsable de
la edicin Paco Marn ([email protected]) Autoedicin Magdalena Marn
([email protected]) Luis Miguel Blanco ([email protected]) Grupo
EIDOS C/ Tllez 30 Oficina 2 28007-Madrid (Espaa) Tel: 91 5013234
Fax: 91 (34) 5017824 www.grupoeidos.com/www.eidos.es
www.LaLibreriaDigital.com Coordinacin de la edicin Antonio Quirs
([email protected])
3
A Olga y David, por las horas que les he robado para escribir
este texto que ahora tienes en tus manos
A mis padres
A Roberto y Carlos, mis hermanos pequeos, en edad, pero no en
altura
5
ndiceNDICE
..................................................................................................................................................
7
INTRODUCCIN...............................................................................................................................
21 UNA VERSIN LARGO TIEMPO ESPERADA
..........................................................................................
21 AQUELLOS DIFCILES TIEMPOS DE LA PROGRAMACIN EN WINDOWS
.............................................. 22 SLO PARA LOS
ELEGIDOS
.................................................................................................................
22 EL PROYECTO
THUNDER....................................................................................................................
23 UN PRODUCTO REVOLUCIONARIO
.....................................................................................................
23 EL PASO A OLE Y ODBC
..................................................................................................................
23 PASO A 32 BITS Y ORIENTACIN A OBJETO
........................................................................................
23 ACTIVEX Y
ADO...............................................................................................................................
24 PROGRAMACIN EN INTERNET
..........................................................................................................
24 LOS PROBLEMAS PARA EL DESARROLLO EN LA RED
.........................................................................
25 EL PANORAMA ACTUAL
.....................................................................................................................
25 LAS SOLUCIONES APORTADAS POR VB.NET
....................................................................................
25 EL PRECIO DE LA RENOVACIN
.........................................................................................................
25 COMENZAMOS
...................................................................................................................................
26 LA EVOLUCIN HACIA .NET
.......................................................................................................
27 LAS RAZONES DEL CAMBIO
...............................................................................................................
27 LA DIFCIL DECISIN DE ABANDONAR ANTERIORES TECNOLOGAS
.................................................. 28 LA
PROBLEMTICA DE WINDOWS
DNA............................................................................................
28
ASP....................................................................................................................................................
28 ADO
..................................................................................................................................................
28
VISUAL BASIC
...................................................................................................................................
29 CONFLICTOS CON DLLS
...................................................................................................................
29 TRAS LOS PASOS DE COM
.................................................................................................................
29 .NET FRAMEWORK, NUEVOS CIMIENTOS PARA LA NUEVA GENERACIN DE
APLICACIONES
................................................................................................................................
31 ALGO EST CAMBIANDO
...................................................................................................................
31 QU ES
.NET?..................................................................................................................................
32 .NET FRAMEWORK
...........................................................................................................................
34 EL CLR, COMMON LANGUAGE RUNTIME
.........................................................................................
35 EL CTS, COMMON TYPE SYSTEM
.....................................................................................................
36 Qu es un tipo dentro de .NET
Framework?...............................................................................
36 Los tipos de datos son
objetos.......................................................................................................
37 Categoras de
tipos........................................................................................................................
39 La disposicin de los datos en la memoria
...................................................................................
39 Embalaje y desembalaje de tipos por valor
..................................................................................
42 METADATA (METADATOS)
................................................................................................................
44 SOPORTE MULTI-LENGUAJE
...............................................................................................................
44 EL CLS (COMMON LANGUAGE SPECIFICATION)
..............................................................................
45 EJECUCIN ADMINISTRADA
...............................................................................................................
45 Cdigo
administrado.....................................................................................................................
46 Datos
administrados......................................................................................................................
46 Recoleccin de memoria no
utilizada............................................................................................
46 Recoleccin de memoria en VB6 y versiones
anteriores...............................................................
47 Recoleccin de memoria en .NET
Framework..............................................................................
47 LA EJECUCIN DE CDIGO DENTRO DEL CLR
...................................................................................
47 El IL, Intermediate Language
.......................................................................................................
47 Compilacin instantnea del IL y ejecucin
.................................................................................
48 Compilacin bajo
demanda...........................................................................................................
49 Independencia de plataforma
........................................................................................................
50 DOMINIOS DE APLICACIN
................................................................................................................
50 SERVIDORES DE ENTORNO
.................................................................................................................
51 NAMESPACES
.....................................................................................................................................
52 LA JERARQUA DE CLASES DE .NET FRAMEWORK
............................................................................
55 ENSAMBLADOS
..................................................................................................................................
56 La problemtica tradicional de los
componentes..........................................................................
57 Ensamblados, una respuesta a los actuales
conflictos..................................................................
57 Tipos de ensamblado segn modo de creacin
.............................................................................
57 El contenido de un
ensamblado.....................................................................................................
58 El manifiesto del
ensamblado........................................................................................................
58 Tipos de ensamblado segn contenido
..........................................................................................
59 Tipos de ensamblado segn
mbito...............................................................................................
61 Ubicacin de ensamblados
compartidos.......................................................................................
61 Identificacin mediante claves integradas en el propio
ensamblado............................................ 62 Versiones
de
ensamblados.............................................................................................................
62 Compatibilidad a nivel de
versin.................................................................................................
63 Ejecucin conjunta de ensamblados
.............................................................................................
63 Ficheros de
configuracin.............................................................................................................
64 Localizacin de ensamblados por parte del
CLR..........................................................................
64 Optimizacin de la carga de
ensamblados....................................................................................
65 INSTALACIN DE VISUAL STUDIO
.NET..................................................................................
67 PREPARACIN DEL ENTORNO DE
TRABAJO........................................................................................
67 .NET Framework SDK
..................................................................................................................
67 Visual Studio .NET
........................................................................................................................
67
REQUISITOS HARDWARE
....................................................................................................................
68 SISTEMA OPERATIVO
.........................................................................................................................
68 RECOMENDACIONES
PREVIAS............................................................................................................
68 INSTALACIN DE VISUAL STUDIO .NET
...........................................................................................
69 BASES DE DATOS DE EJEMPLO
...........................................................................................................
75 LA PRIMERA
APLICACIN...........................................................................................................
79 UN HOLA MUNDO DESDE VB.NET
...................................................................................................
79 INICIAR EL IDE DE VS.NET
..............................................................................................................
79 CREAR UN NUEVO PROYECTO
............................................................................................................
81 OBJETOS, PROPIEDADES Y MTODOS
................................................................................................
82 FORMULARIOS
...................................................................................................................................
82 EL FORMULARIO COMO UN OBJETO
...................................................................................................
83 ACCESO A LAS PROPIEDADES DE UN FORMULARIO
...........................................................................
83 CONTROLES
.......................................................................................................................................
85 LABEL
................................................................................................................................................
86 EJECUTANDO LA APLICACIN
...........................................................................................................
87 EL CDIGO DE LA APLICACIN
..........................................................................................................
88 DISECCIONANDO EL CDIGO FUENTE DEL FORMULARIO
..................................................................
90 La clase del formulario
.................................................................................................................
91 El mtodo constructor New( )
.......................................................................................................
91 Configuracin del formulario y creacin de controles
.................................................................
92 Liberacin de recursos del
formulario..........................................................................................
93 ESTRUCTURA Y GRABACIN DEL PROYECTO
....................................................................................
93 ESCRITURA DE CDIGO
...............................................................................................................
95 ESCRIBIR CDIGO, EL PAPEL CLSICO DEL PROGRAMADOR
............................................................. 95 UN
PROGRAMA ESCRIBIENDO SU CDIGO
.........................................................................................
95 CREAR EL
PROYECTO.........................................................................................................................
96 UN NUEVO MDULO DE CDIGO
........................................................................................................
96 LA UBICACIN FSICA DEL CDIGO
...................................................................................................
97 COMENTARIOS DE CDIGO
................................................................................................................
98 PROCEDIMIENTOS
..............................................................................................................................
98 EL PUNTO DE ENTRADA AL PROGRAMA
.............................................................................................
99 LA CLASE MESSAGEBOX
...................................................................................................................
99 CONFIGURAR EL PUNTO DE ENTRADA DEL PROYECTO
....................................................................
100 VARIABLES
......................................................................................................................................
102 INPUTBOX( )
....................................................................................................................................
102 COMPLETANDO EL PROCEDIMIENTO
...............................................................................................
103 FINALIZAMOS EL PROGRAMA
..........................................................................................................
104 UNA APLICACIN CON FUNCIONALIDAD BSICA
............................................................ 105
INTEGRANDO LO VISTO HASTA EL MOMENTO
.................................................................................
105 UN PROGRAMA MS OPERATIVO
.....................................................................................................
105 DISEO DEL FORMULARIO
...............................................................................................................
105 CONTROLES Y EVENTOS
..................................................................................................................
108 OTRO MODO DE ESCRIBIR EL CDIGO DE UN EVENTO
.....................................................................
109 GRABANDO TEXTO EN UN FICHERO
.................................................................................................
110 UNA PUNTUALIZACIN SOBRE LOS EVENTOS
..................................................................................
112 EL ENTORNO DE DESARROLLO INTEGRADO (IDE), DE VISUAL STUDIO
.NET......... 113 EL IDE, UN ELEMENTO A VECES MENOSPRECIADO
.........................................................................
113 EL LARGO CAMINO HACIA LA CONVERGENCIA
...............................................................................
114 VISUAL STUDIO .NET, EL PRIMER PASO DE LA TOTAL
INTEGRACIN............................................. 114 LA
PGINA DE INICIO
.......................................................................................................................
1149
PRINCIPALES ELEMENTOS EN NUESTRO ENTORNO DE TRABAJO
..................................................... 116 VENTANA
PRINCIPAL DE TRABAJO
..................................................................................................
117 MANEJO DE VENTANAS ADICIONALES DEL IDE
..............................................................................
119 EL EXPLORADOR DE SOLUCIONES
...................................................................................................
124 Agregar nuevos elementos a un
proyecto....................................................................................
126 Propiedades del
proyecto............................................................................................................
127 Propiedades de la solucin
.........................................................................................................
128 Agregar proyectos a una
solucin...............................................................................................
128 EL MEN CONTEXTUAL
...................................................................................................................
130 EL DISEADOR DEL FORMULARIO
...................................................................................................
130 LA VENTANA DE PROPIEDADES
.......................................................................................................
131 EL IDE DE VISUAL STUDIO .NET. HERRAMIENTAS Y
EDITORES.................................. 135 EL CUADRO DE
HERRAMIENTAS
......................................................................................................
135 Organizacin en
fichas................................................................................................................
136 Manipulacin de fichas
...............................................................................................................
137 Organizacin de controles
..........................................................................................................
137 Manipulacin de
controles..........................................................................................................
139 Agregar
controles........................................................................................................................
140 El cuadro de herramientas como contenedor de cdigo fuente
.................................................. 141 LAS BARRAS
DE HERRAMIENTAS
.....................................................................................................
142 Barras de herramientas
personalizadas......................................................................................
143 Acople de barras de herramientas
..............................................................................................
145 OPCIONES ADICIONALES DE PERSONALIZACIN
.............................................................................
145 VENTANA DE RESULTADOS
.............................................................................................................
146 EL EDITOR DE CDIGO FUENTE
........................................................................................................
147 Ajuste de fuente y color
...............................................................................................................
148 Nmeros de
lnea.........................................................................................................................
149 Bsqueda y sustitucin de
cdigo................................................................................................
149 Ajuste de lnea
.............................................................................................................................
151 Dividir el editor de cdigo
..........................................................................................................
152 Marcadores
.................................................................................................................................
153 Mostrar espacios en blanco
........................................................................................................
154
Esquematizacin..........................................................................................................................
154 Regiones
......................................................................................................................................
155 Comentarios de cdigo en bloque
...............................................................................................
156 Ir a la definicin de un procedimiento
........................................................................................
156 IntelliSense
..................................................................................................................................
156 Cambiar a maysculas y minsculas
..........................................................................................
158 EL IDE DE VISUAL STUDIO .NET. ELEMENTOS COMPLEMENTARIOS Y
AYUDA..... 159 EDITORES DE IMGENES
..................................................................................................................
159 LISTA DE TAREAS
............................................................................................................................
160 Definicin de smbolos para
tareas.............................................................................................
161 Creacin de tareas
......................................................................................................................
161 Ventana Lista de
tareas...............................................................................................................
162 Eliminacin de
tareas..................................................................................................................
163 MOSTRAR LA PANTALLA COMPLETA
...............................................................................................
163 LA VISTA DE CLASES
.......................................................................................................................
163 EL EXPLORADOR DE OBJETOS
.........................................................................................................
164 MACROS
..........................................................................................................................................
165 El Explorador de macros
............................................................................................................
166 Ejecucin de macros
...................................................................................................................
167 Grabacin de macros
..................................................................................................................
167 Manipulacin de proyectos de
macros........................................................................................
168
El IDE de macros
........................................................................................................................
169 Escritura de macros
....................................................................................................................
170 Macro para comentar lneas de cdigo
determinadas................................................................
172 EL SISTEMA DE AYUDA
....................................................................................................................
173 Ayuda
dinmica...........................................................................................................................
174 Contenido
....................................................................................................................................
175
ndice...........................................................................................................................................
176
Buscar..........................................................................................................................................
177 Ayuda
externa..............................................................................................................................
178 Mantener temas de ayuda disponibles
........................................................................................
179 Otros modos de acceso a la
ayuda..............................................................................................
180 APLICACIONES DE CONSOLA
...................................................................................................
181 CREACIN DE UN PROYECTO DE TIPO APLICACIN DE CONSOLA
.................................................... 181 LA CLASE
CONSOLE.........................................................................................................................
182 ESCRITURA DE INFORMACIN
.........................................................................................................
183 ESCRITURA DE MLTIPLES VALORES EN LA MISMA LNEA
.............................................................. 185
LECTURA DE INFORMACIN
............................................................................................................
187 EL
LENGUAJE.................................................................................................................................
189 EL LENGUAJE, PRINCIPIO DEL DESARROLLO
...................................................................................
189 ESTRUCTURA DE UN PROGRAMA
VB.NET......................................................................................
190 MAIN( ) COMO PROCEDIMIENTO DE ENTRADA AL
PROGRAMA........................................................
191 VARIABLES
......................................................................................................................................
191
Declaracin.................................................................................................................................
191 Denominacin
.............................................................................................................................
192 Avisos del IDE sobre errores en el
cdigo..................................................................................
192 Lugar de la declaracin
..............................................................................................................
192
Tipificacin..................................................................................................................................
193 Declaracin mltiple en lnea
.....................................................................................................
195 Asignacin de
valor.....................................................................................................................
195 Valor
inicial.................................................................................................................................
197 Declaracin obligatoria
..............................................................................................................
198 Tipificacin
obligatoria...............................................................................................................
201 ARRAYS, CONCEPTOS BSICOS
.......................................................................................................
203
Declaracin.................................................................................................................................
203 Asignacin y obtencin de valores
..............................................................................................
204 Modificacin de
tamao..............................................................................................................
205 Recorrer un
array........................................................................................................................
206 CONSTANTES
...................................................................................................................................
206 CONCEPTOS MNIMOS SOBRE DEPURACIN
.....................................................................................
208 OPERADORES DEL LENGUAJE
.................................................................................................
211 ARITMTICOS
..................................................................................................................................
211 Potenciacin:
^............................................................................................................................
211 Multiplicacin: *
........................................................................................................................
212 Divisin real:
/............................................................................................................................
212 Divisin entera:
\........................................................................................................................
213 Resto: Mod
.................................................................................................................................
213 Suma: +
......................................................................................................................................
213 Resta: -
.......................................................................................................................................
214 CONCATENACIN: &,
+..................................................................................................................
215 OPERADORES ABREVIADOS DE ASIGNACIN
...................................................................................
215 Potencia: ^=
...............................................................................................................................
215 Multiplicacin: *=
.....................................................................................................................
21611
Divisin real:
/=.........................................................................................................................
216 Divisin entera: \=
.....................................................................................................................
216 Suma: +=
...................................................................................................................................
217 Resta:
-=.....................................................................................................................................
217 Concatenacin:
&=....................................................................................................................
218 COMPARACIN
................................................................................................................................
218 Comparacin de cadenas
............................................................................................................
219 La funcin Asc( )
.........................................................................................................................
220 La funcin Chr(
).........................................................................................................................
221 Comparacin de cadenas en base a un patrn. El operador Like
.............................................. 221 Comparacin de
objetos. El operador Is
....................................................................................
224 LGICOS Y A NIVEL DE BIT
..............................................................................................................
225 And
..............................................................................................................................................
225 Uso de parntesis para mejorar la legibilidad de expresiones
................................................... 226 Not
...............................................................................................................................................
227 Or
................................................................................................................................................
228
Xor...............................................................................................................................................
229 AndAlso
.......................................................................................................................................
230
OrElse..........................................................................................................................................
231 PRIORIDAD DE OPERADORES
...........................................................................................................
231 USO DE PARNTESIS PARA ALTERAR LA PRIORIDAD DE OPERADORES
............................................ 233 RUTINAS DE
CDIGO...................................................................................................................
235 DIVISIN DE UNA LNEA DE
CDIGO................................................................................................
235 ESCRITURA DE VARIAS SENTENCIAS EN LA MISMA
LNEA...............................................................
236 PROCEDIMIENTOS
............................................................................................................................
236 Sintaxis de un procedimiento
Sub................................................................................................
237 Llamada a un procedimiento
Sub................................................................................................
238 Sintaxis de un procedimiento Function
.......................................................................................
238 Llamada a un procedimiento Function
.......................................................................................
240 Paso de parmetros a procedimientos
........................................................................................
241 Protocolo de llamada o firma de un
procedimiento....................................................................
241 Tipo de dato de un parmetro
.....................................................................................................
241 Paso de parmetros por valor y por referencia
..........................................................................
242 Paso por valor
(ByVal)............................................................................................................
242 Paso por referencia (ByRef)
....................................................................................................
243 Paso de parmetros por posicin y por nombre
.........................................................................
244 Parmetros
opcionales................................................................................................................
245 Array de parmetros
...................................................................................................................
246 Sobrecarga de
procedimientos....................................................................................................
247 Lista desplegable Nombre de mtodo, en el editor de cdigo
................................................ 251 BIFURCACIN Y
MBITO DEL CDIGO
................................................................................
253 ESTRUCTURAS DE CONTROL
............................................................................................................
253
Seleccin......................................................................................................................................
253 If...End If
.................................................................................................................................
253 Select Case...End Select
..........................................................................................................
257
Repeticin....................................................................................................................................
259 While...End While
...................................................................................................................
259
Do...Loop.................................................................................................................................
260
For...Next.................................................................................................................................
262 For
Each...Next........................................................................................................................
264 ORGANIZACIN DEL PROYECTO EN FICHEROS Y MDULOS DE CDIGO
.......................................... 265 Agregar un nuevo
mdulo (y fichero) de
cdigo.........................................................................
266 Crear un nuevo mdulo dentro de un fichero
existente...............................................................
267
Cambiar el nombre de un fichero de cdigo
...............................................................................
268 Aadir al proyecto un fichero de cdigo
existente......................................................................
269 Lista desplegable Nombre de clase, en el editor de
cdigo.................................................... 269
Excluir y eliminar ficheros de cdigo del
proyecto.....................................................................
270 REGLAS DE MBITO
.........................................................................................................................
271 mbito de procedimientos
...........................................................................................................
271
Pblico.....................................................................................................................................
271 Privado
....................................................................................................................................
273 mbito de
variables.....................................................................................................................
274 mbito a nivel de procedimiento
............................................................................................
274 mbito a nivel de bloque
........................................................................................................
275 mbito a nivel de mdulo
.......................................................................................................
276 mbito a nivel de proyecto
.....................................................................................................
277 PERIODO DE VIDA O DURACIN DE LAS VARIABLES
........................................................................
278 VARIABLES STATIC
.........................................................................................................................
278 FUNCIONES COMPLEMENTARIAS DEL
LENGUAJE...........................................................
281 CONVENCIONES DE NOTACIN
........................................................................................................
281 FUNCIONES DE COMPROBACIN DE TIPOS DE DATOS
......................................................................
283 FUNCIONES DEL LENGUAJE
.............................................................................................................
285
Numricas....................................................................................................................................
285 Cadena de
caracteres..................................................................................................................
286 Fecha y
hora................................................................................................................................
292 CREAR MLTIPLES ENTRADAS AL PROGRAMA MEDIANTE DISTINTOS MAIN(
)............................... 292 PROGRAMACIN ORIENTADA A OBJETO
(OOP)................................................................
295 LAS VENTAJAS DE LA PROGRAMACIN ORIENTADA A OBJETO
....................................................... 295 DEL
ENFOQUE PROCEDURAL AL ENFOQUE ORIENTADO A OBJETO
.................................................. 295 ABORDANDO UN
PROBLEMA MEDIANTE PROGRAMACIN PROCEDURAL
........................................ 295 LOS FUNDAMENTOS DE LA
PROGRAMACIN ORIENTADA A OBJETO
............................................... 297 OBJETOS
..........................................................................................................................................
298 CLASES
............................................................................................................................................
298 INSTANCIAS DE UNA CLASE
.............................................................................................................
299 CARACTERSTICAS BSICAS DE UN SISTEMA ORIENTADO A OBJETO
............................................... 300
Abstraccin..................................................................................................................................
300 Encapsulacin
.............................................................................................................................
300 Polimorfismo
...............................................................................................................................
301 Herencia
......................................................................................................................................
301 JERARQUAS DE CLASES
..................................................................................................................
302 RELACIONES ENTRE OBJETOS
..........................................................................................................
302 Herencia
......................................................................................................................................
302
Pertenencia..................................................................................................................................
303 Utilizacin
...................................................................................................................................
303 REUTILIZACIN
...............................................................................................................................
303 ANLISIS Y DISEO ORIENTADO A OBJETOS
....................................................................................
303 CREACIN DE
CLASES......................................................................................................................
304 ORGANIZACIN DE CLASES EN UNO O VARIOS FICHEROS DE CDIGO
............................................. 305 CDIGO DE CLASE Y
CDIGO CLIENTE
............................................................................................
306 REGLAS DE MBITO GENERALES PARA
CLASES...............................................................................
306 INSTANCIACIN DE OBJETOS
...........................................................................................................
306 MIEMBROS DE LA CLASE
.................................................................................................................
307 DEFINIR LA INFORMACIN DE LA CLASE
.........................................................................................
307 CREACIN DE CAMPOS PARA LA CLASE
..........................................................................................
308 CREACIN DE PROPIEDADES PARA LA CLASE
..................................................................................
309 VENTAJAS EN EL USO DE PROPIEDADES
..........................................................................................
31013
ENCAPSULACIN A TRAVS DE PROPIEDADES
................................................................................
310 PROPIEDADES DE SLO LECTURA O SLO
ESCRITURA.....................................................................
312 PROPIEDADES VIRTUALES
...............................................................................................................
314 NOMBRES DE PROPIEDAD MS NATURALES
....................................................................................
315 PROPIEDADES PREDETERMINADAS
..................................................................................................
316 ELIMINACIN DE LA PALABRA CLAVE SET PARA ASIGNAR OBJETOS
.............................................. 317 MTODOS Y
ESPACIOS DE NOMBRE
......................................................................................
319 CREACIN DE MTODOS PARA LA CLASE
........................................................................................
319 CUNDO CREAR UNA PROPIEDAD Y CUNDO UN MTODO?
.......................................................... 323 LA
ESTRUCTURA WITH...END WITH
................................................................................................
325 RESULTADOS DISTINTOS EN OBJETOS DE LA MISMA CLASE
............................................................ 325
USO DE ME Y MYCLASS PARA LLAMAR A LOS MIEMBROS DE LA PROPIA CLASE
........................... 326 SOBRECARGA DE MTODOS O
POLIMORFISMO, EN UNA MISMA CLASE
........................................... 327 ENLACE (BINDING) DE
VARIABLES A REFERENCIAS DE OBJETOS
.................................................... 329 Enlace
temprano..........................................................................................................................
329 Enlace tardo
...............................................................................................................................
330 ESPACIOS DE NOMBRES (NAMESPACES)
..........................................................................................
333 ACCESO A ESPACIOS DE NOMBRE DE OTROS ENSAMBLADOS
.......................................................... 337
CONSTRUCTORES Y
HERENCIA...............................................................................................
341 MTODOS CONSTRUCTORES
............................................................................................................
341 HERENCIA
........................................................................................................................................
343 TODAS LAS CLASES NECESITAN UNA CLASE BASE
..........................................................................
344 REGLAS DE MBITO ESPECFICAS PARA CLASES
.............................................................................
345 Protected
.....................................................................................................................................
346 Friend
..........................................................................................................................................
347 Protected
Friend..........................................................................................................................
348 HERENCIA Y SOBRECARGA DE MTODOS
........................................................................................
348 MYBASE, ACCESO A LOS MTODOS DE LA CLASE BASE
..................................................................
350 HERENCIA Y SOBRE-ESCRITURA DE MTODOS
................................................................................
350 DIFERENCIAS ENTRE SOBRECARGA Y SOBRE-ESCRITURA EN BASE AL TIPO
DE ENLACE ................. 353 OCULTAMIENTO DE MIEMBROS DE UNA
CLASE
...............................................................................
355 COMPORTAMIENTO DE LAS PALABRAS CLAVE ME, MYCLASS Y MYBASE ANTE
LA SOBREESCRITURA DE MTODOS
.................................................................................................................
359 HERENCIA Y MTODOS
CONSTRUCTORES........................................................................................
360 CLASES SELLADAS O NO HEREDABLES
............................................................................................
362 CLASES ABSTRACTAS O NO INSTANCIABLES
...................................................................................
362 ELEMENTOS COMPARTIDOS E
INTERFACES......................................................................
365 COMPROBACIN DEL TIPO DE UN OBJETO Y MOLDEADO (CASTING)
............................................... 365 MIEMBROS
COMPARTIDOS (SHARED) DE UNA CLASE
......................................................................
368 DEFINIR UNA CLASE COMO PUNTO DE ENTRADA DE LA APLICACIN
.............................................. 370 DESTRUCCIN DE
OBJETOS Y RECOLECCIN DE
BASURA................................................................
371 INTERFACES
.....................................................................................................................................
373 ESTRUCTURAS
.................................................................................................................................
378 Creacin y manipulacin de
estructuras.....................................................................................
378 Estructuras o clases, cul debemos utilizar?
............................................................................
380 La estructura del sistema
DateTime............................................................................................
382 ENUMERACIONES
............................................................................................................................
383 APLICANDO UN ENFOQUE ENTERAMENTE OOP EN EL
CDIGO................................. 387 LOS TIPOS DE DATOS
TAMBIN SON OBJETOS
..................................................................................
387 MANIPULACIN DE CADENAS CON LA CLASE
STRING.....................................................................
388 OPTIMIZANDO LA MANIPULACIN DE CADENAS CON LA CLASE
STRINGBUILDER.......................... 393
CONVERSIN DE TIPOS CON LA CLASE
CONVERT............................................................................
394 LA ESTRUCTURA CHAR
...................................................................................................................
395 EL TIPO DATE (FECHA)
....................................................................................................................
396 OPERACIONES ARITMTICAS, LA CLASE
MATH...............................................................................
396 FORMATEO DE VALORES
.................................................................................................................
397 Fechas
.........................................................................................................................................
398 Modificando el formato estndar para las
fechas.......................................................................
400 Nmeros
......................................................................................................................................
402 Formateando directamente en la consola
...................................................................................
403 Usando la clase String para formatear
.......................................................................................
403 Usando una clase para crear formatos
personalizados..............................................................
403 DELEGACIN DE CDIGO Y
EVENTOS..................................................................................
407 DELEGADOS (DELEGATES)
..............................................................................................................
407 DECLARACIN DE DELEGADOS
.......................................................................................................
407 CREACIN DE DELEGADOS
..............................................................................................................
408 EXTENDER LAS FUNCIONALIDADES DE UNA CLASE A TRAVS DE DELEGADOS
.............................. 411 EVENTOS. QU ES UN
EVENTO?.....................................................................................................
414 EVENTOS EN
.NET...........................................................................................................................
414 PROGRAMACIN ESTRICTAMENTE PROCEDURAL
............................................................................
414 UN ESCENARIO DE TRABAJO SIN EVENTOS
......................................................................................
414 PROGRAMACIN BASADA EN EVENTOS
...........................................................................................
415 ESQUEMA BSICO DE UN SISTEMA ORIENTADO A EVENTOS
............................................................ 415 EL
EMISOR DE EVENTOS
..................................................................................................................
416 EL RECEPTOR DE EVENTOS
..............................................................................................................
417 CONEXIN DE UN EMISOR DE EVENTOS CON UN MANIPULADOR DE EVENTOS
................................ 417 ENLACE ESTTICO DE EVENTOS
......................................................................................................
418 ENLACE DINMICO DE EVENTOS
.....................................................................................................
420 UN EVENTO ES UN DELEGADO
.........................................................................................................
421 LA CLASE EVENTARGS, O CMO OBTENER INFORMACIN DEL OBJETO EMISOR
DEL EVENTO ....... 422 ARRAYS
............................................................................................................................................
427 ASPECTOS BSICOS
.........................................................................................................................
427 LA CLASE ARRAY
............................................................................................................................
428 ADECUACIN DE LOS ARRAYS EN VB CON LOS ARRAYS DE LA PLATAFORMA
.NET ..................... 428 El primer ndice de un array debe ser
siempre cero
...................................................................
429 No es posible crear arrays con rangos de ndices
......................................................................
429 Todos los arrays son dinmicos
..................................................................................................
429 DECLARACIN
.................................................................................................................................
430 ASIGNACIN Y OBTENCIN DE VALORES
........................................................................................
431 RECORRER EL CONTENIDO
..............................................................................................................
431 MODIFICACIN DE TAMAO
............................................................................................................
433 USO DEL MTODO CREATEINSTANCE( ) PARA ESTABLECER EL NMERO DE
ELEMENTOS EN UN ARRAY
.............................................................................................................................................
434 PASO DE ARRAYS COMO PARMETROS, Y DEVOLUCIN DESDE
FUNCIONES................................... 435 CLONACIN
.....................................................................................................................................
435
COPIA...............................................................................................................................................
436 INICIALIZACIN DE VALORES
..........................................................................................................
437 ORDENACIN
...................................................................................................................................
439
BSQUEDA.......................................................................................................................................
439 ARRAYS MULTIDIMENSIONALES
.....................................................................................................
440 COLECCIONES
...............................................................................................................................
443 COLECCIONES, LA ESPECIALIZACIN DE LOS ARRAYS
....................................................................
443 EL ESPACIO DE NOMBRES SYSTEM.COLLECTIONS
..........................................................................
44415
LA CLAVE SE HALLA EN LOS INTERFACES
.......................................................................................
444 LA CLASE ARRAYLIST
.....................................................................................................................
445 Instanciacin de objetos
ArrayList..............................................................................................
445 Agregar valores a un
ArrayList...................................................................................................
445 Recorrer y obtener valores de un
ArrayList................................................................................
446 Capacidad y valores en una coleccin
ArrayList........................................................................
447 Obtencin de subarrays a partir de un objeto ArrayList
............................................................ 449
Bsquedas en colecciones ArrayList
...........................................................................................
451 Borrado de elementos en una coleccin ArrayList
.....................................................................
451 Ordenar elementos en un objeto ArrayList
.................................................................................
453 LA CLASE HASHTABLE
....................................................................................................................
453 Manejo bsico de colecciones
Hashtable....................................................................................
453 Operaciones varias con colecciones
Hashtable..........................................................................
455 Traspaso de elementos desde una coleccin Hashtable a un array
bsico ................................ 457 LA CLASE SORTEDLIST
....................................................................................................................
458 LA CLASE
QUEUE.............................................................................................................................
459 Manipulacin de valores en una coleccin
Queue......................................................................
459 LA CLASE STACK
.............................................................................................................................
462 COLECCIONES
PERSONALIZADAS..........................................................................................
465 CUANDO EL TIPO DE ARRAY QUE NECESITAMOS NO EXISTE
........................................................... 465
UTILIZANDO LA HERENCIA PARA CREAR UNA NUEVA COLECCIN
................................................. 465 IMPLEMENTANDO
UN INTERFAZ PARA CREAR UNA NUEVA COLECCIN
......................................... 467 MANIPULACIN DE
ERRORES..................................................................................................
473 ERRORES, ESE MAL COMN
.............................................................................................................
473 Errores de escritura
....................................................................................................................
473 Errores de ejecucin
...................................................................................................................
474 Errores
lgicos............................................................................................................................
474 ERRORES Y
EXCEPCIONES................................................................................................................
474 MANIPULADORES DE EXCEPCIONES
................................................................................................
475 TIPOS DE TRATAMIENTO DE ERROR EN
VB.NET.............................................................................
475 MANIPULACIN ESTRUCTURADA DE ERRORES
...............................................................................
475 La estructura Try...End
Try.........................................................................................................
475 La clase
Exception.......................................................................................................................
478 Captura de excepciones de diferente tipo en el mismo
controlador de errores.......................... 479 Establecer una
condicin para un manipulador de excepciones
................................................ 480 La influencia
del orden de los manipuladores de excepciones
................................................... 482 Forzar la
salida de un controlador de errores mediante Exit Try
.............................................. 483 Creacin de
excepciones
personalizadas....................................................................................
484 MANIPULACIN NO ESTRUCTURADA DE ERRORES
..........................................................................
486 El objeto
Err................................................................................................................................
486 On
Error......................................................................................................................................
486 On Error Goto Etiqueta
..............................................................................................................
486 On Error Resume Next
................................................................................................................
487 Creacin de errores con el objeto Err
........................................................................................
488 On Error Goto
0..........................................................................................................................
488 OPERACIONES DE ENTRADA Y SALIDA (I/O). GESTIN DEL SISTEMA DE
ARCHIVOS
.............................................................................................................................................................
491 LA REMODELACIN DEL VIEJO ESQUEMA DE ENTRADA Y SALIDA
.................................................. 491 SYSTEM.IO,
EL PUNTO DE
PARTIDA.................................................................................................
491 OBJETOS STREAM
............................................................................................................................
492 LAS CLASES TEXTREADER Y TEXTWRITER
....................................................................................
492 LA CLASE STREAMWRITER
.............................................................................................................
492
LA CLASE STREAMREADER
.............................................................................................................
494 LAS CLASES STRINGWRITER Y STRINGREADER
.............................................................................
496 LA CLASE STREAM (FLUJO DE DATOS)
............................................................................................
496 LA CLASE FILESTREAM
...................................................................................................................
496 MANEJO DE DATOS BINARIOS
..........................................................................................................
498 MANIPULACIN DE ARCHIVOS MEDIANTE FILE Y FILEINFO
........................................................... 498
MANIPULACIN DE ARCHIVOS MEDIANTE DIRECTORY Y DIRECTORYINFO
................................... 500 LA CLASE PATH
...............................................................................................................................
502 MONITORIZACIN DEL SISTEMA DE ARCHIVOS CON FILESYSTEMWATCHER
................................. 503 Ajuste preciso de filtros
para el monitor de archivos
.................................................................
505 Establecer el procedimiento de evento con AddHandler
............................................................ 505
Consideraciones sobre la ruta de archivos
.................................................................................
506 DETECCIN CON ESPERA, DE EVENTOS PRODUCIDOS SOBRE ARCHIVOS
......................................... 507 MANIPULACIN DE
ARCHIVOS MEDIANTE FUNCIONES ESPECFICAS DE VISUAL BASIC
................. 507 FORMULARIOS
WINDOWS.........................................................................................................
509 INTERFACES DE VENTANA. FORMULARIOS Y CONTROLES
.............................................................. 509
SYSTEM.WINDOWS.FORMS
.............................................................................................................
510 LA CLASE FORM
..............................................................................................................................
510 CREACIN DE UN FORMULARIO BSICO
..........................................................................................
510 EL CDIGO DEL FORMULARIO
.........................................................................................................
512 CAMBIANDO EL NOMBRE DEL FORMULARIO
...................................................................................
513 CREACIN DE FORMULARIOS DESDE CDIGO
.................................................................................
514 INICIAR EL FORMULARIO DESDE MAIN( )
........................................................................................
515 TRABAJO CON CONTROLES
..............................................................................................................
517 EL CUADRO DE HERRAMIENTAS
......................................................................................................
517 INSERTAR UN CONTROL EN EL
FORMULARIO...................................................................................
518 AJUSTE DE LA CUADRCULA DE DISEO DEL
FORMULARIO.............................................................
519 ORGANIZACIN-FORMATO MLTIPLE DE CONTROLES
....................................................................
520 ANCLAJE DE CONTROLES
.................................................................................................................
522 ACOPLE DE CONTROLES
..................................................................................................................
523 CONTROLES WINDOWS
..............................................................................................................
525 CONTROLES MS HABITUALES
........................................................................................................
525 BUTTON
...........................................................................................................................................
526 CODIFICACIN DE LOS EVENTOS DE CONTROLES
............................................................................
527 CODIFICANDO OTROS EVENTOS DE UN CONTROL
............................................................................
528 ESCRITURA DEL MANIPULADOR DE EVENTO SIN USAR EL NOMBRE
PROPORCIONADO POR EL EDITOR
.........................................................................................................................................................
530 RESPONDIENDO A LOS EVENTOS DE UN FORMULARIO
....................................................................
530 LABEL
..............................................................................................................................................
531 FOCO DE ENTRADA
..........................................................................................................................
532 TEXTBOX
.........................................................................................................................................
532 ORDEN DE TABULACIN DE CONTROLES
.........................................................................................
535 SELECCIN DE TEXTO EN UN TEXTBOX
..........................................................................................
535 CHECKBOX
......................................................................................................................................
538 RADIOBUTTON Y GROUPBOX
.........................................................................................................
540 LISTBOX
..........................................................................................................................................
542 COMBOBOX
.....................................................................................................................................
547 CODIFICACIN AVANZADA DE CONTROLES Y HERENCIA VISUAL
........................... 549 COMPARTIENDO CDIGO ENTRE
CONTROLES..................................................................................
549 CREACIN DE CONTROLES DESDE CDIGO
......................................................................................
553 Cdigo para el interfaz de
usuario..............................................................................................
553 Cdigo para eventos del formulario, conectando con Handles
.................................................. 55517
Cdigo para eventos de controles, conectando con
Handles...................................................... 555
Cdigo para eventos de controles, conectando con AddHandler
............................................... 556 Cdigo para
eventos de controles, asociando y separando dinmicamente con
AddHandler y RemoveHandler
...........................................................................................................................
557 RECORRIENDO LOS CONTROLES DE UN FORMULARIO
.....................................................................
559 TEMPORIZADORES
...........................................................................................................................
560 CREAR UNA CLASE DERIVADA DE UN CONTROL
..............................................................................
563 HERENCIA VISUAL
...........................................................................................................................
565 El formulario
base.......................................................................................................................
566 Agregar un proyecto con un formulario derivado
......................................................................
567 Crear un formulario heredado desde un proyecto
independiente............................................... 570
MENS
..............................................................................................................................................
575 CONTROLES DE TIPO MEN
.............................................................................................................
575 Men Principal. MainMenu
........................................................................................................
575 Men Contextual.
ContextMenu..................................................................................................
580 Creacin de mens desde cdigo
................................................................................................
582 PROGRAMACIN CON HEBRAS
...............................................................................................
585 MANIPULACIN DE HEBRAS DE EJECUCIN
....................................................................................
585 LA CLASE THREAD
..........................................................................................................................
586 EJECUTAR UN PROCESO EN UNA HEBRA
..........................................................................................
586 CONTROL DE PROCESOS INDEFINIDOS
.............................................................................................
588 EJECUCIN MULTIHEBRA
................................................................................................................
590 EJECUCIN MULTIHEBRA DE MLTIPLES PROCESOS
.......................................................................
591 DETECTANDO EL ESTADO DE FINALIZACIN
...................................................................................
593 EJECUCIN PARALELA DE PROCESOS A DISTINTOS RITMOS
............................................................ 594
SINCRONIZACIN DE HEBRAS
..........................................................................................................
596 CREAR UN PROCESO DE MONITORIZACIN
......................................................................................
597 INICIOS DE APLICACIN CON DOS FORMULARIOS, EMPLEANDO HEBRAS
........................................ 599 FORMULARIOS DE
INTERFAZ MLTIPLE (MDI)
................................................................
601 APLICACIONES DE ESTILO SDI
........................................................................................................
601 APLICACIONES DE ESTILO MDI
.......................................................................................................
601 CREACIN DE MENS DE TIPO VENTANA, EN FORMULARIOS
MDI................................................. 604 BLOQUEO DE
OPCIONES DE MEN EN FORMULARIOS MDI
............................................................. 606
RECORRER LOS FORMULARIOS HIJOS DE UN MDI
...........................................................................
607 COMPORTAMIENTO NO MODAL (MODELESS) DE FORMULARIOS
................................................... 608
COMPORTAMIENTO MODAL DE FORMULARIOS
...............................................................................
608 CONTROLES DE CUADROS DE DILOGO DEL SISTEMA
.....................................................................
611 ColorDialog
................................................................................................................................
611 FontDialog
..................................................................................................................................
612
SaveFileDialog............................................................................................................................
614
OpenFileDialog...........................................................................................................................
615 FORMULARIOS DEPENDIENTES Y CONTROLES AVANZADOS
...................................... 617 FORMULARIOS DEPENDIENTES
Y FIJOS EN PRIMER PLANO
.............................................................. 617
VALIDACIN DE CONTROLES
...........................................................................................................
626 CONTROLES AVANZADOS
................................................................................................................
627
IMAGELIST.......................................................................................................................................
628
TOOLBAR.........................................................................................................................................
629 STATUSBAR
.....................................................................................................................................
631 DATETIMEPICKER
...........................................................................................................................
633 NUMERICUPDOWN
..........................................................................................................................
634
DOMAINUPDOWN............................................................................................................................
635
MONTHCALENDAR
..........................................................................................................................
635 LINKLABEL
......................................................................................................................................
636 CREACIN Y MANIPULACIN DE ELEMENTOS EN EJECUCIN
......................................................... 637
NOTIFYICON
....................................................................................................................................
638 GDI+. ACCESO AL SUBSISTEMA GRFICO DE WINDOWS
............................................... 641 SYSTEM.DRAWING
..........................................................................................................................
642 DIBUJO CON LAS CLASES GRAPHICS Y PEN
.....................................................................................
642 LA CLASE BRUSH
.............................................................................................................................
646 DIBUJO DE TEXTO EN EL FORMULARIO
............................................................................................
649 PERSONALIZACIN DE LA IMAGEN DE FONDO DEL FORMULARIO
................................................... 650 Manipulacin
de los eventos de pintado en la clase Form
......................................................... 650
Empleo del control PictureBox
...................................................................................................
651 MANIPULANDO EL GRADO DE OPACIDAD DEL FORMULARIO
.......................................................... 652
MODIFICACIN DE LA FORMA DEL FORMULARIO
............................................................................
655 INTEGRANDO ELEMENTOS. UN VISUALIZADOR DE
GRFICOS.........................................................
656 ACCESO A DATOS CON ADO
.NET............................................................................................
663 COMPARATIVA DE ADO /ADO .NET
.............................................................................................
664 BENEFICIOS DE ADO .NET
.............................................................................................................
666
Interoperabilidad.........................................................................................................................
666
Mantenimiento.............................................................................................................................
666
Programacin..............................................................................................................................
666
Rendimiento.................................................................................................................................
667
Escalabilidad...............................................................................................................................
667 ARQUITECTURA DE DATOS DESCONECTADOS
.................................................................................
667 DataSet
........................................................................................................................................
669 ADO .NET y
XML........................................................................................................................
669 UNA VISIN GENERAL DE ADO .NET
.............................................................................................
670 ESPACIOS DE NOMBRES Y CLASES EN ADO
.NET...........................................................................
671 LAS CLASES CONNECTION
...............................................................................................................
673 LAS CLASES
COMMAND...................................................................................................................
676 LAS CLASES DATAREADER
.............................................................................................................
680 CONJUNTOS DE DATOS Y ENLACE (DATA BINDING)
........................................................ 683 LA
CLASE DATASET
........................................................................................................................
683 LAS CLASES DATAADAPTER
...........................................................................................................
686 NAVEGACIN Y EDICIN DE REGISTROS EN MODO DESCONECTADO
.............................................. 689 DATA BINDING.
ENLACE DE DATOS A CONTROLES
.........................................................................
694 Tipos de Data
Binding.................................................................................................................
694 Elementos integrantes en un proceso de Data
Binding...............................................................
694 EMPLEO DE DATA BINDING SIMPLE PARA NAVEGAR Y EDITAR DATOS
.......................................... 694 EL CONTROL DATAGRID,
RELACIONES Y VISTAS
............................................................ 701
DATAGRID
.......................................................................................................................................
701 CREACIN DE UN DATAGRID A TRAVS DE LOS ASISTENTES DEL
IDE........................................... 703 CONFIGURAR LAS
PROPIEDADES DEL DATAGRID
...........................................................................
708 CONFIGURAR POR CDIGO LAS PROPIEDADES DEL
DATAGRID....................................................... 708
SELECCIN DE TABLA EN EL DATAGRID
.........................................................................................
710 RELACIONES ENTRE TABLAS MEDIANTE OBJETOS DATARELATION
............................................... 711 Obtener tablas
relacionadas mediante
cdigo............................................................................
711 Visualizar datos relacionados en modo maestro-detalle en un
DataGrid .................................. 713 Mostrar una relacin
maestro-detalle en dos
DataGrid.............................................................
714 RELACIN MAESTRO-DETALLE EN MLTIPLES DATAGRID
............................................................. 715
VISTAS Y ORDENACIN DE DATOS CON LA CLASE DATAVIEW
....................................................... 71619
VISTAS POR CDIGO Y DEFAULTVIEW
............................................................................................
717 FILTROS CON OBJETOS DATAVIEW
.................................................................................................
718 BSQUEDAS CON DATAVIEW
..........................................................................................................
720 ORDENACIN DE FILAS MEDIANTE DATAVIEW
..............................................................................
721 OBTENER EL ESQUEMA DE UN
DATASET.........................................................................................
723
IntroduccinUna versin largo tiempo esperadaCon la aparicin de
.NET Framework, y de Visual Basic .NET, como una de las
herramientas estrella para el desarrollo sobre esta nueva
plataforma de trabajo, estamos asistiendo a una evolucin/revolucin
sin precedentes en el mundo de la informtica, que sita a este
clsico de la programacin en una posicin difcil de igualar y menos
an de superar. Visual Basic .NET (VB.NET a partir de ahora), como
cada nueva versin de las que han aparecido en el mercado de este
producto, incorpora, como es natural, un buen conjunto de
novedades. Sin embargo, la inclusin de Visual Basic en el entorno
de .NET, aade tambin un compendio de drsticos cambios para los
programadores de versiones anteriores, derivados en su conjunto, de
la necesidad de afrontar con garantas de xito el desarrollo de la
nueva generacin de aplicaciones para Internet, objetivo perseguido
por todas las herramientas de desarrollo actuales. Tales cambios,
como decimos, son necesarios para la plena integracin de Visual
Basic con el resto de lenguajes del entorno de .NET; un alto
porcentaje, suponen la mejora sobre ciertas caractersticas del
lenguaje y la eliminacin de aspectos obsoletos, arrastrados por una
compatibilidad, que en ocasiones como la actual, es necesario dejar
atrs; en otros casos, se trata de adaptar nuestras costumbres a
nuevos modos y hbitos de programar. Para comprender un poco mejor,
la razn que ha llevado a los diseadores de Microsoft al punto
actual, hagamos un breve repaso histrico a la programacin con
Windows y Visual Basic.
Programacin con Visual Basic .NET
Grupo EIDOS
Aquellos difciles tiempos de la programacin en WindowsLa
aparicin de Windows a mediados de los aos ochenta, sobre todo a raz
del lanzamiento de la versin 3.1, supuso una gran revolucin en el
mundo del PC. Los usuarios de esta plataforma, disponan ahora de un
entorno grfico de trabajo, que facilitaba en gran medida su labor y
dejaba atrs paulatinamente la aridez del trabajo en el modo comando
(la interfaz MS