miércoles, 4 de mayo de 2016

Lenguaje de programación Visual Basic

Lenguaje de programación Visual Basic

1.1  Historia
Visual Basic es un lenguaje de programación dirigido por eventos, desarrollado por Alan Cooper para Microsoft. Este lenguaje de programación es un dialecto de BASIC, con importantes agregados. Su primera versión fue presentada en 1991, con la intención de simplificar la programación utilizando un ambiente de desarrollo que facilitó en cierta medida la programación misma.
La última versión fue la 6, liberada en 1998, para la que Microsoft extendió el soporte hasta marzo de 2008.
En 2001 Microsoft propuso abandonar el desarrollo basado en la API Win32 y pasar a un framework o marco común de librerías, independiente de la versión del sistema operativo, .NET Framework, a través de Visual Basic .NET (y otros lenguajes como C Sharp (C#) de fácil transición de código entre ellos); fue el sucesor de Visual Basic 6.
Aunque Visual Basic es de propósito general, también provee facilidades para el desarrollo de aplicaciones de bases de datos usando Data Access Objects, Remote Data Objects o ActiveX Data Objects.
Visual Basic contiene un entorno de desarrollo integrado o IDE que integra editor de textos para edición del código fuente, un depurador, un compilador (y enlazador) y un editor de interfaces gráficas o GUI.

1.2  Aplicaciones
Application Events
Muestra los eventos de aplicación a los que se obtiene acceso a través del Diseñador de proyectos.

ClickOnce
Implementa y actualiza una aplicación mediante ClickOnce.

Console Application
Muestra un ejemplo de entrada y salida utilizando la ventana de la consola.

Consuming a Web Service

Muestra cómo consumir diversos servicios Web de .NET Framework, incluidos los servicios que proporcionan el tiempo actual, una historieta y la conversión de divisas.
Excel
Muestra cómo usar Visual Basic para iniciar Excel, crear un libro a partir de una plantilla, actualizar las celdas de una hoja de cálculo que, a continuación, rellenan los gráficos del libro, así como realizar otras tareas.

Game
Muestra la característica My, la programación orientada a objetos y el dibujo.
Logging
Utiliza el objeto My.Application.Log para registrar información en los archivos y registros de eventos.

Multithreading
Muestra dos maneras diferentes de implementar las tareas multiproceso.
de automatización de Office
Muestra la automatización de Microsoft Agent, Microsoft Word y Microsoft Excel.

PowerPoint
Muestra cómo iniciar PowerPoint, crear una presentación en blanco, agregar una diapositiva y contenido, imprimir diapositivas, guardar los cambios y salir de PowerPoint desde una aplicación de Visual Basic.

Reflexión
Utiliza la reflexión para descubrir información de tipo en un ensamblado.

Resources and Settings
Muestra los objetos My.Settings y My.Resources.

Send Mail
Muestra cómo enviar un mensaje de correo electrónico a través de SMTP utilizando clases del espacio de nombres System.Web.Mail.

Stack Frame Inspection
Muestra cómo se recupera información mediante programación sobre la pila de llamadas en cualquier punto desde el código en ejecución.

System and Environment Information
Muestra el uso de varias clases que proporcionan información del entorno.

 TCP Remoting
Muestra cómo se utiliza la arquitectura remota de .NET Framework.

User Information
Proporciona información general sobre el objeto My.User y la plantilla Formulario de inicio de sesión. En este ejemplo se implementa una autenticación personalizada sencilla.
 de actualización de Visual Basic 6.0
Presenta el ejemplo de Visual Basic 6.0 VCR en código de Visual Basic 6.0 y de Visual Basic 2005.

 WCF Chat
Muestra cómo implementar una aplicación de chat con la participación de varios grupos mediante PeerChannel.

WCF Windows Forms
Muestra un servicio que implementa un contrato que define un modelo de comunicación de solicitud y respuesta.

1.3  Versiones
·         Visual Basic 1.0 para Windows se liberó en mayo de 1991.

·         Visual Basic 1.0 para MS-DOS fue liberada en septiembre de 1992. Poco popular, este lenguaje no era compatible con Visual Basic para Windows, ya que constituía en realidad la siguiente versión de los compiladores BASIC vigentes para DOS, denominados QuickBASIC y BASIC PDS (Profesional Development System). Usaba una interfaz de texto, con caracteres ASCII extendidos que daban la apariencia de una interfaz gráfica.

·         Visual Basic 2.0 fue liberado en noviembre de 1992. Venía en versiones Standard y Professional. El entorno de programación era más fácil de usar que el anterior, y su velocidad de proceso fue mejorada. En particular, los formularios se convirtieron en objetos instanciables, sentando así los conceptos fundamentales para módulos de clase, que más tarde se ofrecerían en la versión 4.

·         Visual Basic 3.0 salió al mercado en verano de 1993, en versiones Standard y Profesional. Incluía la versión 1.1 de Microsoft Jet Database Engine, que permitía acceso a bases de datos Access.

·         Visual Basic 4.0, surgida en agosto de 1995, fue la primera versión que generaba aplicaciones tanto de 16 como de 32 bits para Windows. Había incompatibilidades entre las distintas realeases de esta versión que causaban fallas de instalación y problemas de operación. Mientras las anteriores utilizaban controles VBX, con la 4.0 se comenzaron a utilizar controles OLE en archivos OCX, que más tarde se llamarían controles ActiveX.

·         En febrero de 1997, Microsoft lanzó Visual Basic 5.0, versión que generaba programas de 32 bits exclusivamente. Los programadores que aún preferían desarrollar aplicaciones en 16 bits debían necesariamente utilizar VB 4.0, siendo transportables en código fuente a VB 5.0 y viceversa. En la versión 5 se tenía la posibilidad de crear controles personalizados; también permitía compilar a código ejecutable nativo de Windows, logrando con ello incrementar la velocidad de ejecución de los programas generados, más notablemente en los de cálculo.

·         Visual Basic 6.0, salido a mediados de 1998, muy mejorado, incrementó el número de áreas e incluyó la posibilidad de crear aplicaciones basadas en Web. Microsoft retiró el soporte de VB6 en marzo de 2008, pero a pesar de ello las aplicaciones que genera son compatibles con plataformas más modernas, como Windows Vista, Windows Server 2008, Windows 7 y Windows 8.
·         El soporte estándar para Microsoft Visual Basic 5.7 finalizó el 31 de marzo de 2005, pero el extendido terminó en marzo de 2008. La comunidad de usuarios de Visual Basic expresó su grave preocupación y se firmó una petición para mantener el producto vivo.5 Microsoft se ha negado hasta el momento a cambiar su posición sobre el asunto. Irónicamente, en esa época (2005) se da a conocer que el software antiespía ofrecido por Microsoft, "Microsoft AntiSpyware" (parte de la GIANT Company Software), fue codificado en Visual Basic 6.0; su posterior sustituto, Windows Defender, fue reescrito en código C++.

1.4  Desarrollo
El entorno de desarrollo es muy similar al de otros lenguajes. Realizando una instalación típica del producto, las características básicas se presentan de la siguiente forma:
En la parte superior aparecen tres elementos, en este orden: la barra de título donde figura el nombre del proyecto en curso y su estado (diseño o ejecución); la barra de menú con 13 opciones desplegables y una barra de herramientas; esta última se puede personalizar, posibilitando la inclusión de prácticamente la totalidad de los comandos del IDE.
En la parte central, cubriendo la franja de mayor área, se encuentra el espacio de trabajo. Éste incluye y muestra las ventanas del proyecto, las vistas del código fuente de los módulos, los objetos y los controles que contienen las ventanas de la aplicación y el panel de controles.
El panel de controles, que aunque es móvil normalmente está ubicado a la derecha, por defecto cuenta con los siguientes controles:
§  PictureBox
§  Label
§  TextBox
§  Frame
§  CommandButton
§  CheckBox
§  OptionButton
§  ComboBox
§  ListBox
§  HScrollBar
§  VScrollBar
§  Timer
§  DriveListBox
§  DirListBox
§  FileListBox
§  Shape
§  Line
§  Image
§  Data
§  OLE
Además de los listados, se pueden agregar todo tipo de controles de terceros, y hay una gran cantidad de ellos que se proveen con el propio Visual Basic 6.0. Los controles vienen embebidos dentro de archivos con extensión OCX.

1.5  Características

Los compiladores de Visual Basic generan código que requiere una o más librerías de enlace dinámico para que funcione, conocidas comúnmente como DLL (sigla en inglés de dynamic-link library ); en algunos casos reside en el archivo llamado MSVBVMxy.DLL (siglas de "MicroSoft Visual Basic Virtual Machine x.y", donde x.y es la versión) y en otros en VBRUNXXX.DLL ("Visual Basic Runtime X.XX").

 Estas bibliotecas DLL proveen las funciones básicas implementadas en el lenguaje, conteniendo rutinas en código ejecutable que son cargadas bajo demanda en tiempo de ejecución. Además de las esenciales, existe un gran número de bibliotecas del tipo DLL con variedad de funciones, tales como las que facilitan el acceso a la mayoría de las funciones del sistema operativo o las que proveen medios para la integración con otras aplicaciones.

Dentro del mismo Entorno de desarrollo integrado (IDE) de Visual Basic se puede ejecutar el programa que esté desarrollándose, es decir en modo intérprete (en realidad pseudo-compila el programa muy rápidamente y luego lo ejecuta, simulando la función de un intérprete puro).

1.6  Objetos y eventos

Se designa como objeto cualquier elemento, por ejemplo, un formulario, una imagen, un control, tal como una caja de texto; a su vez, los objetos tienen propiedades, que en el caso de la caja de texto una es la propiedad "text" que se encarga de contener el texto que aparecerá en la caja. A los objetos se les puede asociar eventos. Un evento es la ocurrencia de un suceso, comúnmente la acción que realiza el usuario sobre el objeto, que como resultado puede, por ejemplo, provocar un cambio en alguna propiedad de un objeto.

Algunos eventos comunes definidos en Visual Basic son:

*      Click
*      DblClick
*      DragDrop
*      DragOver
*      GotFocus
*      LostFocus
*      KeyDown
*      KeyUpKeyPress
*      MouseDown
*      MouseUp
*      MouseMove

1.7  Ventajas y desventajas
Ventajas
Ø  Posee una curva de aprendizaje muy rápida.
Ø  Integra el diseño e implementación de formularios de Windows.
Ø  Permite usar con facilidad la plataforma de los sistemas Windows, dado que tiene acceso prácticamente total a la API de Windows, incluidas librerías actuales.
Ø  Es uno de los lenguajes de uso más extendido, por lo que resulta fácil encontrar información, documentación y fuentes para los proyectos.
Ø  Fácilmente extensible mediante librerías DLL y componentes ActiveX de otros lenguajes.
Ø  Posibilita añadir soporte para ejecución de scripts, VBScript o JScript, en las aplicaciones mediante Microsoft Script Control.
Ø  Tiene acceso a la API multimedia de DirectX (versiones 7 y 8). También está disponible, de forma no oficial, un componente para trabajar con OpenGL 1.1.
Ø  Existe una versión, VBA, integrada en las aplicaciones de Microsoft Office, tanto Windows como Mac, que permite programar macros para extender y automatizar funcionalidades en documentos, hojas de cálculo y bases de datos (Access).
Ø  Si bien permite desarrollar grandes y complejas aplicaciones, también provee un entorno adecuado para realizar pequeños prototipos rápidos.

Desventajas

ü  Problema de versionado asociado con varias librerías runtime DLL, conocido como DLL Hell

ü  Soporte pobre para programación orientada a objetos.

ü  Incapacidad para crear aplicaciones multihilo, sin tener que recurrir a llamadas de la API de Windows.

ü  Dependencia de complejas y frágiles entradas de registro COM.

ü  La capacidad de utilizar controles en un sólo formulario es muy limitada en comparación a otras herramientas. DLL Hell DB, Libro Programando en Visual Basic,2002








1.8  Ejemplos de códigos

Los temas siguientes muestran ejemplos útiles de código, por característica, en la documentación de Visual Basic.
Código para aplicaciones de formularios Windows Forms
Enumera los ejemplos de código de la sección "Crear aplicaciones para Windows" de la documentación.
Código para controles de formularios Windows Forms
Enumera los códigos de ejemplo de la sección "Controles de formularios Windows Forms" de la documentación.
Código para el acceso a datos
Enumera los ejemplos de código de la sección "Acceso a datos" de la documentación.
Código para aplicaciones Web
Enumera los ejemplos de código de la sección "Crear aplicaciones y servicios Web" de la documentación.
Código para controles de formularios Web Forms
Enumera los códigos de ejemplo de la sección "Controles de servidor ASP.NET" de la documentación.
Código para la programación de componentes
Enumera los ejemplos de código de la sección "Programar con componentes" de la documentación.
1.9  Objeto de Click
En Visual Basic 6.0, los eventos están ligados a objetos específicos y tienen su código de control de eventos. Por ejemplo, en un formulario con un botón y un menú, cada uno tiene su evento Click; hay que escribir código para cada uno en el controlador de eventos, aunque los dos realicen la misma función.
Ejm
' Visual Basic 6.0
Private Sub HelpButton_Click()
    HelpButton.Caption = "Help me!"
End Sub
Private Sub HelpMenu_Click()
    HelpMenu.Caption = "Help me!"
End Sub


1.9.1        Doble click


Este, se produce cuando se hace una doble pulsación, doble click.

Si estás controlando estos cuatro eventos, además de hacer tus propias comprobaciones, deberías saber que normalmente se producen en este orden:
Primero el MouseDown, seguido de un MouseUp, a continuación un Click seguido de un DblClick y por último un MouseUp.
Todo esto lo puedes comprobar con el siguiente código:

'
'Pruebas para la entrega 23 del curso básico            (04/Oct/98)
'
Option Explicit

Private Sub Form_Click()
    Debug.Print "Se ha pulsado sobre el formulario (Click)"
End Sub

Private Sub Form_DblClick()
    Debug.Print "Doble pulsación en el formulario (DblClick)"
End Sub

Private Sub Form_MouseDown(Button As Integer, Shift As Integer, X As Single, Y As Single)
    Debug.Print "Se ha pulsado el botón del ratón (MouseDown)"
End Sub

Private Sub Form_MouseUp(Button As Integer, Shift As Integer, X As Single, Y As Single)
    Debug.Print "Se ha soltado el botón del ratón (MouseUp)"
End Sub

1.9.2        Click

Este evento se produce cuando se hace "click" en un control... es una combinación del MouseDown seguido de un evento MouseUp... debes tener en cuenta que si estás gestionando los eventos MouseDown, MouseUp y Click te encontrarás con que se producen los tres eventos en ese orden, es decir, primero se presiona, después se suelta y por último se produce el Click.




1 comentario: