You are on page 1of 8

Visual Basic

Visual Basic
Visual Basic Desarrollador(es) Microsoft [1] msdn.microsoft.com/en-us/vbasic/default.aspx Informacin general Extensiones comunes Paradigma Apareci en Diseado por .bas, .frm, .exe, .vbp Dirigida por eventos 1993 Alan Cooper

ltima versin estable 6.0 (1998) Tipo de dato Influido por Sistema operativo Licencia Esttico, fuerte QuickBASIC Microsoft Windows, MS-DOS Propietario

Visual Basic es un lenguaje de programacin dirigido por eventos, desarrollado por Alan Cooper para Microsoft. Este lenguaje de programacin es un dialecto de BASIC, con importantes agregados. Su primera versin fue presentada en 1991, con la intencin de simplificar la programacin utilizando un ambiente de desarrollo completamente grfico que facilitara la creacin de interfaces grficas y, en cierta medida, tambin la programacin misma. La ltima versin 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 comn de libreras, independiente de la versin del sistema operativo, .NET Framework, a travs de Visual Basic .NET (y otros lenguajes como C Sharp (C#) de fcil transicin de cdigo entre ellos); fue el sucesor de Visual Basic 6. Aunque Visual Basic es de propsito general, tambin 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 edicin del cdigo fuente, un depurador, un compilador (y enlazador) y un editor de interfaces grficas o GUI.

Historia
Todas las versiones de Visual Basic para Windows son muy conocidas, aunque la Microsoft Visual Basic 1.0 desarrollada para el sistema operativo MS-DOS (ediciones Profesional y Estndar), que data de 1992, fue menos difundida. Esta provea un entorno que, aunque en modo texto, inclua un diseador de formularios en el que se podan arrastrar y soltar distintos controles. La ltima versin que slo generaba aplicaciones de 16 bits fue la 3.0, y no inclua una biblioteca detallada de componentes para toda clase de usos. Durante la transicin de los sistemas Windows 3.11 a Windows 95, en 1995, hizo su aparicin la versin 4.0 de Visual Basic; sta poda generar programas tanto de 16 como de 32 bits, a partir del mismo cdigo fuente, aunque a costa de un gran aumento en el tamao de los archivos necesarios en tiempo de ejecucin ("runtime"). Adems, se sustituyeron los controles denominados VBX por los nuevos OCX. Con la siguiente versin, la 5.0, se estuvo a punto de implementar por primera vez la posibilidad de compilar a cdigo

Visual Basic nativo, obteniendo una mejora de rendimiento considerable. Tanto esa como la sucesora 6.0 soportaban ciertas caractersticas propias de los lenguajes orientados a objetos, pero carecan de algunas importantes, tales como herencia y sobrecarga; pero, de hecho, no fue pensado como lenguaje orientado a objetos. La versin 6.0, que puede generar cdigo ejecutable directo en 32 bits, contina an utilizndose masivamente, y es compatible con las ltimas versiones de los sistemas Windows, como Windows 7 y Windows 8. Visual Basic evolucion para integrar la plataforma .NET; all perdi su propia identidad como lenguaje nico adquirible, pasando a integrar un paquete de productos, llamado precisamente Microsoft .NET; dentro de ese paquete o framework se encuentra el nuevo y llamado Visual Basic .NET, que trabaja sobre el entorno Microsoft Visual Studio. Esta nueva versin del lenguaje posee profundas diferencias en la forma de programar respecto de Visual Basic 6, pero gran semejanza en su sintaxis bsica. Cabe mencionar que, aunque fue menos conocido, se desarroll tambin una versin gratuita de Visual Basic 5.0, orientada al desarrollo de controles y componentes; su nombre especfico era Microsoft Visual Basic 5.0 Control Creation Edition (Visual Basic 5 CCE). Tambin hubo versiones orientadas al desarrollo de aplicaciones para dispositivos mviles basados en Windows CE y Pocket PC, conocidas como Embedded (Visual Basic).

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 constitua en realidad la siguiente versin 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 grfica. Visual Basic 2.0 fue liberado en noviembre de 1992. Vena en versiones Standard y Professional. El entorno de programacin era ms fcil 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 mdulos de clase, que ms tarde se ofreceran en la versin 4. Visual Basic 3.0 sali al mercado en verano de 1993, en versiones Standard y Profesional. Inclua la versin 1.1 de Microsoft Jet Database Engine, que permita acceso a bases de datos Access. Visual Basic 4.0, surgida en agosto de 1995, fue la primera versin que generaba aplicaciones tanto de 16 como de 32 bits para Windows. Haba incompatibilidades entre las distintas realeases de esta versin que causaban fallas de instalacin y problemas de operacin. Mientras las anteriores utilizaban controles VBX, con la 4.0 se comenzaron a utilizar controles OLE en archivos OCX, que ms tarde se llamaran controles ActiveX. En febrero de 1997, Microsoft lanz Visual Basic 5.0, versin que generaba programas de 32 bits exclusivamente. Los programadores que an preferan desarrollar aplicaciones en 16 bits deban necesariamente utilizar VB 4.0, siendo transportables en cdigo fuente a VB 5.0 y viceversa. En la versin 5 se tena la posibilidad de crear controles personalizados; tambin permita compilar a cdigo ejecutable nativo de Windows, logrando con ello incrementar la velocidad de ejecucin de los programas generados, ms notablemente en los de clculo. Visual Basic 6, salido a mediados de 1998, muy mejorado, increment el nmero de reas[2] 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 ms modernas, como Windows Vista, Windows Server 2008, Windows 7 y Windows 8.[3][4] El soporte estndar para Microsoft Visual Basic 6.0 finaliz el 31 de marzo de 2005, pero el extendido termin en marzo de 2008.[5] La comunidad de usuarios de Visual Basic expres su grave preocupacin y se firm una peticin para mantener el producto vivo.[6] Microsoft se ha negado hasta el momento a cambiar su posicin sobre el asunto. Irnicamente, en esa poca (2005) se da a conocer que el software antiespa 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 cdigo C++.[7]

Visual Basic

Caractersticas
Los compiladores de Visual Basic generan cdigo que requiere una o ms libreras de enlace dinmico para que funcione, conocidas comnmente como DLL (sigla en ingls 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 versin) y en otros en VBRUNXXX.DLL ("Visual Basic Runtime X.XX"). Estas bibliotecas DLL proveen las funciones bsicas implementadas en el lenguaje, conteniendo rutinas en cdigo ejecutable que son cargadas bajo demanda en tiempo de ejecucin. Adems de las esenciales, existe un gran nmero de bibliotecas del tipo DLL con variedad de funciones, tales como las que facilitan el acceso a la mayora de las funciones del sistema operativo o las que proveen medios para la integracin con otras aplicaciones. Dentro del mismo Entorno de desarrollo integrado (IDE) de Visual Basic se puede ejecutar el programa que est desarrollndose, es decir en modo intrprete (en realidad pseudo-compila el programa muy rpidamente y luego lo ejecuta, simulando la funcin de un intrprete puro). Desde ese entorno tambin se puede generar el archivo en cdigo ejecutable (exe); ese programa as generado en disco puede luego ser ejecutado sin requerir del ambiente de programacin (incluso en modo stand alone), aunque s ser necesario que las libreras DLL requeridas por la aplicacin desarrollada se encuentren tambin instaladas en el sistema para posibilitar su ejecucin. El propio Visual Basic provee soporte para empaquetado y distribucin; es decir, permite generar un mdulo instalador que contiene al programa ejecutable y las bibliotecas DLL necesarias para su ejecucin. Con ese mdulo la aplicacin desarrollada se distribuye y puede ser instalada en cualquier equipo (que tenga un sistema operativo compatible). As como bibliotecas DLL, hay numerosas aplicaciones desarrolladas por terceros que permiten disponer de variadas y mltiples funciones, incluso mejoras para el propio Visual Basic; las hay tambin para el empaquetado y distribucin, y hasta para otorgar mayor funcionalidad al entorno de programacin (IDE). Entorno de desarrollo Existe un nico entorno de desarrollo para Visual Basic, desarrollado por Microsoft: Microsoft Visual Basic x.0, correspondientes a versiones desde la 1.0 hasta la 6.0, (con respectivas diferencias entre versiones del lenguaje). El entorno de desarrollo es muy similar al de otros lenguajes. Realizando una instalacin tpica del producto, las caractersticas bsicas se presentan de la siguiente forma: En la parte superior aparecen tres elementos, en este orden: la barra de ttulo donde figura el nombre del proyecto en curso y su estado (diseo o ejecucin); la barra de men con 13 opciones desplegables y una barra de herramientas; esta ltima se puede personalizar, posibilitando la inclusin de prcticamente 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 cdigo fuente de los mdulos, los objetos y los controles que contienen las ventanas de la aplicacin y el panel de controles. El panel de controles, que aunque es mvil normalmente est ubicado a la derecha, por defecto cuenta con los siguientes controles: PictureBox: Caja de imgenes Label: Etiqueta TextBox: Caja de texto Frame: Marco CommandButton: Botn de comando CheckBox: Casilla de verificacin

OptionButton: Botn de opcin ComboBox: Lista desplegable

Visual Basic ListBox: Lista HScrollBar: Barra de desplazamiento horizontal VScrollBar: Barra de desplazamiento vertical Timer: Temporizador DriveListBox: Lista de unidades de disco DirListBox: Lista de directorios FileListBox: Lista de archivos Shape: Figura Line: Lnea Image: Imagen Data: Conexin a origen de datos OLE: Contenedor de documentos embebidos compatibles con Object Linking and Embedding Adems 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 extensin OCX. Las ventanas de proyecto, aunque mviles, se encuentran en el panel lateral derecho y contienen dos vistas principales: El Explorador de proyectos, que muestra todos los elementos que componen el proyecto o grupos de proyectos (formularios, interfaz de controles, mdulos de cdigo, mdulos de clase, etc.) El Panel de propiedades, donde se muestran todos los atributos de los objetos, controles, formularios, informacin de mdulos clase, entre muchos otros. La Ventana inmediato, por defecto se encuentra en la parte inferior, aunque puede no estar visible (se presionan las teclas Ctrl+G, en ese caso, para mostrar la ventana). Esta ventana resulta una herramienta muy til a la hora de depurar el programa o bien para realizar pruebas rpidas, ya que permite imprimir mensajes de texto desde el cdigo y ejecutar sentencias y comandos simples inmediatamente (slo sentencias que se puedan escribir en una sola lnea). Por ejemplo, de la aplicacin en curso, se puede consultar el valor de una variable o llamar a un mtodo declarado en el mdulo que se est depurando. Se puede ejecutar cdigo "al vuelo", por ejemplo con sentencias como: ? sqr(2) siendo el signo ? un reemplazo natural del comando Print en Basic, al ejecutar la sentencia se mostrara por pantalla el valor de la raz cuadrada de 2. Tambin se pueden usar variables del propio programa, o sentencias de cdigo tales como:
Msgbox "Prueba de cuadro de mensaje de error.", vbCritical, "Ttulo del mensaje"

A la hora de la depuracin puede ser til para consultar el valor de variables del programa, o el cdigo de error como: ? Err.Number

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, comnmente la accin que realiza el usuario sobre el objeto, que como resultado puede, por ejemplo, provocar un cambio en alguna propiedad de un objeto. Por ejemplo: Visual Basic tiene un evento llamado KeyPress, que ocurre cuando el usuario presiona una tecla; ese evento se puede asociar a la caja de texto, y en l

Visual Basic definir (por programacin) qu accin se tomar cuando se oprima una tecla. En sntesis, un objeto posee propiedades, responde a eventos y puede ejecutar mtodos asociados a l. Algunos eventos comunes definidos en Visual Basic son: Click: ocurre cuando se presiona y suelta un botn del mouse sobre un objeto. DblClick: ocurre cuando se presiona y suelta dos veces un botn del mouse sobre un objeto. DragDrop: ocurre al arrastrar y soltar un determinado objeto con el mouse. DragOver: ocurre si una operacin de arrastrar y soltar est en curso. GotFocus: ocurre cuando un objeto recibe el control o foco, ya sea mediante una accin del usuario como hacer click en un objeto ventana, o cambiando el foco de objeto desde el programa, mediante el mtodo SetFocus. LostFocus: contrario al anterior, este evento ocurre cuando el objeto pierde el enfoque, sea mediante accin del usuario o efectuado desde la aplicacin. KeyDown: ocurre cuando el usuario mantiene presionada una tecla. KeyUp: ocurre cuando el usuario deja de presionar una tecla. Este evento sucede precisamente al terminar el evento KeyDown. KeyPress: ocurre como cuando se presiona y suelta una tecla. MouseDown: ocurre cuando el usuario presiona un botn del mouse.

MouseUp: se produce cuando el usuario suelta el botn del mouse. MouseMove: este evento ocurre mientras el usuario mueve o desplaza el puntero del mouse sobre un objeto. Imagnese un auto como un objeto; el auto tiene diversas propiedades como color, modelo, etc. Algunas con slo 2 posibles valores, como encendido y apagado, incluso otras que a simple vista no se ven, como podra ser la cantidad de gasolina. Para definir el color de este objeto Auto, segn Visual Basic, se hara de la siguiente manera: Auto.color = rojo y para definirle un evento podra ser como el siguiente ejemplo: Sub girarllave( ) Auto.encendido=true end sub.

Ejemplo de cdigo
El siguiente fragmento de cdigo muestra un cuadro de mensaje, en una ventana, que dice "Hola, mundo!": Private Sub Form_Load() MsgBox ("Hola, mundo!") End Sub

Ventajas
Posee una curva de aprendizaje muy rpida. Integra el diseo e implementacin de formularios de Windows. Permite usar con facilidad la plataforma de los sistemas Windows, dado que tiene acceso prcticamente total a la API de Windows, incluidas libreras actuales. Es uno de los lenguajes de uso ms extendido, por lo que resulta fcil encontrar informacin, documentacin y fuentes para los proyectos. Fcilmente extensible mediante libreras DLL y componentes ActiveX de otros lenguajes. Posibilita aadir soporte para ejecucin de scripts, VBScript o JScript, en las aplicaciones mediante Microsoft Script Control [8].

Visual Basic Tiene acceso a la API multimedia de DirectX (versiones 7 y 8). Tambin est disponible, de forma no oficial, un componente para trabajar con OpenGL 1.1.[9] Existe una versin, 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 clculo y bases de datos (Access). Si bien permite desarrollar grandes y complejas aplicaciones, tambin provee un entorno adecuado para realizar pequeos prototipos rpidos.

Inconvenientes
Las crticas hechas en las ediciones de Visual Basic anteriores a VB.NET son variadas;[10] se citan entre ellas: Problema de versionado asociado con varias libreras runtime DLL, conocido como DLL Hell Soporte pobre para programacin orientada a objetos[11] Incapacidad para crear aplicaciones multihilo, sin tener que recurrir a llamadas de la API de Windows. Dependencia de complejas y frgiles entradas de registro COM[12] La capacidad de utilizar controles en un slo formulario es muy limitada en comparacin a otras herramientas. DLL Hell DB, Libro Programando en Visual Basic,2002

Alternativas multiplataforma o externas a Windows


Existen mltiples alternativas dentro y fuera de Windows que intentan imitar este lenguaje y su mecnica de desarrollo. El ms conocido y popular es Gambas: Gambas es un proyecto libre para implementar programacin visual con Basic en GNU/Linux. Est derivado principalmente de Visual Basic, adaptndose a partir de su lenguaje y su entorno de desarrollo, para implementar su propia variante, parcialmente compatible con Visual Basic, aportando y enriqueciendo con las oportunidades que brinda GNU/Linux. Otras opciones conocidas son Real Basic [13] o PureBasic, que permiten desarrollar bajo Windows, Linux, Mac OS e independientemente. PureBasic permite desarrollar tambin para Amiga OS. A diferencia de Gambas, estas son soluciones comerciales y no son libres.

Referencias
[1] http:/ / msdn. microsoft. com/ en-us/ vbasic/ default. aspx [8] http:/ / www. microsoft. com/ downloads/ details. aspx?FamilyId=D7E31492-2595-49E6-8C02-1426FEC693AC& displaylang=en [13] http:/ / www. realsoftware. com/ realbasic/ ?lang=es

Enlaces externos
Visual Basic 2005 Express Edition - Sitio web de la edicin gratis de Visual Basic .NET (http://www.microsoft. com/express/download/) Service Pack 6 para Visual Basic 6.0: Paquete de redistribucin de archivos de tiempo de ejecucin (vbrun60sp6.exe) (http://www.microsoft.com/downloads/details. aspx?familyid=7B9BA261-7A9C-43E7-9117-F673077FFB3C&displaylang=es) en Microsoft Microsoft Visual Basic 6.0 Common Controls (http://www.microsoft.com/downloads/info.aspx?na=22& p=3&SrcDisplayLang=es&SrcCategoryId=&SrcFamilyId=&u=/downloads/details. aspx?FamilyID=25437d98-51d0-41c1-bb14-64662f5f62fe&DisplayLang=es) en Microsoft VB 6.0 (http://msdn.microsoft.com/vbrun/default.aspx) en MSDN Visual Basic Recursos (http://www.vb-mundo.com) en Recursos

Visual Basic Visual Basic (http://dmoz.org/World/Espaol/Computadoras/Programacin/Lenguajes/Visual_Basic/) en Open Directory Project.

Fuentes y contribuyentes del artculo

Fuentes y contribuyentes del artculo


Visual Basic Fuente: http://es.wikipedia.org/w/index.php?oldid=68304977 Contribuyentes: -jem-, 3coma14, 987654321ajs, Abece, Alejandrocaro35, Aleposta, Alhen, Andreasmperu, Angelito7, Angus, Antonio Irazabal, Antonorsi, Antur, Argentinoo, Ascnder, Asegim77, Axxgreazz, Aipni-Lovrij, Baiji, Banfield, Barteik, Bboccioz, Bcoto, Bedwyr, Biasoli, Bitarray, BlackBeast, Briancarloscondenanza, Bryant1410, Bucephala, BuenaGente, CF, Cad, Cansado, Carcediano, Carlos tenorio ortega, Cinabrium, Cmontero, Cobalttempest, ColdWind, Comae, Cookie, Dalmiant, Danathor, Dangelin5, Dark, David0811, Deleatur, Diamondland, Dianai, Diego Godoy, Diegusjaimes, Dodo, Doublebassjihh, Dreitmen, Durero, Dweigel, Eamezaga, Edmenb, Edub, Elamericanono, Elisardojm, Emmanuele, Er Komandante, Error de inicio de sesin, Especiales, Ezarate, Fcr, FedericoMP, Felipewiki, Fenririel, Fernando Estel, Filipo, Fremen, Fsalas4000, GLuky, Gacq, Gaeddal, Galandil, Galaxy4, GermanX, Greek, Gusgus, Gustavo.ovalle, HUB, Halfdrag, Helmy oved, Hispa, Hubert Stiven, Humbefa, Humberto, Igna, Ignacio Icke, Innv, Isha, JJLR, Jacina, Jaimemf, Jarisleif, Javierito92, Jesuja, Jkbw, Jlboya, Jogacrack, Jorge 2701, Jorgechp, Jugones55, Jurgens, Jynus, Kenbill, Kn, Kved, La concha de tu hermana 22, Lasneyx, Laura Fiorucci, Lecturalia, Leonpolanco, Lex Sparrow, Locos epraix, Logongas, Lraingele, Lucien leGrey, Luis ademir, Luismiad, Magister Mathematicae, Mahadeva, Manuel Trujillo Berges, Manw, Mara 95, MarcoAurelio, Markoszarrate, Marsal20, Matdrodes, MercurioMT, Metronomo, Miguelo on the road, Montgomery, Mortadelo2005, Mrchuseau, Murphy era un optimista, Nachojr99, Netito777, Nicolasdavel, Nicoobe, Nicop, Nocker, Norberto Perez G., Obelix83, Ortisa, Pablo.cl, Pacovila, Patricio.lorente, PeiT, Pelutnik, Penelopina, Petronas, Pilaf, Platonides, Pmisiones, Porao, Plux, Qwertymith, Rafael1193, Retama, Ricpelo, RoyFocker, Rubpe19, SAulVillalobos, Sakhal, SantiBadia, Savh, Schummy, SergioN, Sergiosh, Seykron, Shooke, Sidcc, Snakefang, Snakeyes, Sobreira, Sodaxp, SuperBraulio13, Superzerocool, Taichi, Tajampi, Takachan, Technopat, TheXDS, Tirithel, Tolo Cunill, Tomatejc, Tony Rotondas, Travelour, Tripy, Ugly, Un Mercenario, Uswikisa, VanKleinen, Vic Fede, Vitamine, X.Cyclop, XalD, Y0rx, Yeza, Zeioth, Zohar, GaRvA, uo Martnez, 1011 ediciones annimas

Licencia
Creative Commons Attribution-Share Alike 3.0 Unported //creativecommons.org/licenses/by-sa/3.0/