Está en la página 1de 36

Programacin en Visual Basic .

NET

Aplicaciones en Windows

P ro gram aci n e n .N ET

Introducci n

Introduccin a Visual Basic .NET


Qu es .NET ? En primera instancia .NET parece ser slo un concepto de marketing, una forma de evitar otro nmero al final de Visual Basic, pero es mucho ms que eso. .NET representa todo un rango de tecnologas y conceptos que conforman una plataforma en la cual se pueden desarrollar aplicaciones. Microsoft .NET es una plataforma de desarrollo y ejecucin de aplicaciones. Esto quiere decir que no slo nos brinda todas las herramientas y servicios que se necesitan para desarrollar modernas aplicaciones empresariales y de misin crtica, sino que tambin nos provee de mecanismos robustos, seguros y eficientes para asegurar que la ejecucin de las mismas sea ptima. .NET es la nueva tecnologia desarrollada y ofrecida por Microsoft que permite hacer mas fcil an la construccin y desarrollo de programas y aplicaciones para Internet. La plataforma .Net es el conjunto de nuevos servicios que ofrece Microsoft para permitir que las aplicaciones aprovechen posibilidades como la Web con gran sencillez. La plataforma .NET es un amplio conjunto de bibliotecas de desarrollo que pueden ser utilizadas por otras aplicaciones para acelerar enormemente el desarrollo y obtener de manera automtica caractersticas avanzadas de seguridad, rendimiento, etc... Pero en realidad .NET es mucho ms que eso ya que ofrece un entorno gestionado de ejecucin de aplicaciones, nuevos lenguajes de programacin y compiladores, y permite el desarrollo de todo tipo de funcionalidades: desde programas de consola o servicios Windows hasta aplicaciones para dispositivos mviles, pasando por desarrollos de escritorio o para Internet, es decir Microsoft .NET es un conjunto de tecnologas de software, compuesto de varios lenguajes de programacin que se ejecutan bajo el .NET Framework. Es adems un ento rno completamente orientado a objetos y que es capaz de ejecutarse bajo cualquier plataforma. En otras palabras la Plataforma .NET provee los cimientos para la nueva generacin de software. Utiliza los Servicios Web como un medio para poder interoperar con distintas tecnologas. Permite conectar distintos sistemas operativos, dispositivos fsicos, informacin y usuarios. Les da a los desarrolladores las herramientas y tecnologas para hacer rpidamente soluciones de negocios que involucran distintas aplicaciones, dispositivos fsicos y organizaciones. La idea central detrs de la plataforma .NET es la de servicio. Ms concretamente software como servicio y de cmo construir, instalar, consumir, integrar o agregar estos servicios para que puedan ser accedidos mediante Internet. Esto es posible 2|P a g e

P ro gram aci n e n .N ET

Introducci n

debido a que se cuenta con la infraestructura de comunicacin global que es Internet cada vez ms rpida y a un costo cada vez menor, y adems, a la capacidad de los procesadores que contina incrementndose ao tras ao. El usuario de Internet puede con un explorador de Internet no solamente acceder a contenido como texto, imgenes o sonido, tambin puede hacer uso de servicios Web. Estos son los bloques de construccin o componentes sobre los cuales se basa el modelo de computacin distribuida en Internet. La plataforma .NET permite usar Internet y su capacidad de distribucin para que los usuarios accedan desde cualquier dispositivo, en cualquier sistema operativo y lugar a la funcionalidad que los servicios Web proveen. Los desarrolladores por su parte tienen la infraestructura y herramientas para crearlos y hacer uso de ellos en programas. Es decir, se trata de aprovechar la capacidad de distribucin a gran escala de Internet para acceder a servicios de software. Tambin se trata de aprovechar el incremento en la capacidad de procesamiento de los nuevos dispositivos mviles llamados "Smart Devices" (dispositivos inteligentes) para que el usuario haga uso de la funcionalidad que proveen los servicios Web con interfases cada vez ms sencillas y naturales como la voz o la escritura. El nuevo modelo de computacin basado en Internet implica que la empresas no solamente tengan sitios donde el contenido puede ser accedido de manera visual como hasta ahora, con un explorador de Internet. Si quieren ser exitosas deben crear componentes que implementen servicios relacionados con su actividad para que usuarios o sitios los integren y utilicen. Por ejemplo, una aerolnea puede hacer componentes para la reserva de pasajes y desde una aplicacin de una empresa de turismo llamar a este componente. O un usuario desde un dispositivo mvil (por ejemplo un celular) puede tambin invocar el componente de reserva de pasajes areos directamente para ver la disponibilidad y hacer reservaciones. La empresa turstica puede exponer un servicio Web que incluya la llamada al servicio Web de la aerolnea. .NET rene en una misma plataforma un conjunto interesante de caractersticas, como independencia de plataforma, independencia de lenguaje, soporte de bases de datos, soporte para XML, servicios Web y aplicaciones Web, entre otras, pero las ms importantes de destacar son la independencia de lenguaje y la independencia de plataforma. Es importante mencionar con respecto a la independencia de lenguaje que bajo la plataforma .NET se puede desarrollar aplicaciones en mltiples lenguajes, pero lo ms interesante, es que una aplicacin puede tener diferentes partes desarrolladas en diferentes lenguajes, y todas estas pueden comunicarse entre s, transparentemente, sin tener que utilizar ningn tipo de capa intermedia que posibilite esta comunicacin. Esto permite a su vez una gran reutilizacin de cdigo, ya que las clases desarrolladas para un proyecto en un lenguaje concreto, podran ser reutilizadas en un nuevo proyecto, independientemente del lenguaje en el que se desarrolle ste. 3|P a g e

P ro gram aci n e n .N ET

Introducci n

Y con respecto a la independencia de plataforma, se puede decir que el cdigo .NET no se compila a cdigo mquina, sino a un cdigo en un formato intermedio, independiente de la plataforma. Esto permite llevar los binarios producidos de una plataforma a otra. Para que esto sea posible, en la plataforma .NET existe el Common Language Runtime (CLR), que se encarga de ejecutar el cdigo intermedio o Common Intermediate Language (CIL). Para Resumir Net es bsicamente: La infraestructura .NET comprendida por: el Framework .NET, Microsoft Visual Studio .NET, .NET Enterprises Servers y Microsoft Windows .NET. Servicios de Internet, (.NET Building Block Services) o la posibilidad de acceso por programa a ciertos servicios como obtener la temperatura actual en cualquier lugar del mundo, el valor de cambio actualizado de cualquier moneda, almacenamiento de archivos, comprobacin de identidad, etc. Programas .NET que acceden a esto servicios.

Lo ms visible de .NET es la infraestructura, a esto es a lo que uno hace referencia cuando dice .NET, y se trata de todas las tecnologas que conforman el nuevo entorno que permite a los desarrolladores crear y ejecutar aplicaciones. En definitiva .NET es entonces una nueva filosofa en cuanto a entornos de desarrollo. Este entorno puede utilizar varios lenguajes diferentes para escribir programas y todos se apoyarn en las herramientas que ofrece para conseguir aplicaciones .NET. El alma de este entorno es el .NET Framework.

En el diagrama se puede observar que la plataforma Microsoft.NET es denominada de Ejecucin Intermedia justamente porque se ubica entre el Sistema Operativo y las aplicaciones finales con las que interactan los usuarios, actuando como intermediario entre ambos.

4|P a g e

P ro gram aci n e n .N ET ARQUITECTRURA DEL .NET FRAMEWORK Se podra dividir entonces el entorno .NET en las siguientes partes:

Introducci n

NET Framework, que es el entorno de trabajo de la plataforma .NET y que la engloba completamente. Toda la plataforma .NET forma parte de .NET framework. Lenguajes .NET. Destacan C#, VB.NET, J#, aunque existen ms lenguajes. El Common Runtime Language CRL, que es el motor de ejecucin comn a todos los lenguajes .NET. MSIL, Microsoft Intermedial language, es el lenguaje intermedio al que compilan las apliaciones (Asemmblies) .NET. Este lenguaje intermedio es interpretado por el CRL en tiempo de ejecucin. CLS, Common Language Specification, que engloban las pautas que deben cumplir los lenguajes .NET. Es sta caracterstica la que va a permitir a otras compaias producir lenguajes compatibles con .NET. ADO.NET, es la nueva interfaz de bases de datos. No se trata de una evolucin de ADO, sino que se trata de una interfaz completamente nueva. ASP.NET, es la nueva tecnologa para pginas web dinmicas completamente integrada dentro del entorno .NET. Representa una autntica revolucin en el desarrollo Web (Internet e Intranet). Biblioteca de clases .NET, es el conjunto de clases que componen el .NET framework y que nos permiten realizar casi cualquier tarea de una manera fcil y rpida. En la actualidad existen varias versiones del Framework .NET, estas versiones han tenido mejoras sustanciales pero han mantenido la arquitectura.

5|P a g e

P ro gram aci n e n .N ET Versiones Anteriores a la Tecnologa .NET

Introducci n

Visual Basic es un lenguaje de programacin desarrollado por Alan Cooper para Microsoft. El lenguaje de programacin es un dialecto de BASIC, con importantes aadidos. BASIC es un lenguaje de programacin desarrollado por los estadounidenses John Kemeny y Thomas Kurtz en el Dartmouth College. La versin original del lenguaje Basic fue creada en el ao 1964, un lenguaje que es fcil de aprender y usar por los principiantes, ganndose una enorme popularidad gracias sobre todo a dos implementaciones, Tiny BASIC y Microsoft BASIC, que convirtieron a este lenguaje en la primera lengua franca de los microordenadores. Su xito lo llev durante los siguientes aos a tener un amplio squito de seguidores y empresas que generaron compiladores e intrpretes para l. En esos tiempos, BASIC sola ensearse a los programadores principiantes porque era "fcil" de utilizar y de comprender, y adems porque contena los mismos conceptos fundamentales que muchos otros lenguajes considerados ms "difciles", como Pascal, C y COBOL, las cuales a su vez, eran muy populares entre los programadores, mientras que haba una especie de desprecio hacia Basic, por tratarse de un lenguaje para principiantes". En 1975, cuando Microsoft naca como empresa, uno de sus primeros productos, fue una versin muy exitosa del lenguaje BASIC. Microsoft BASIC, y su sucesor Quick BASIC (o QB tambin como se lo conoce), se convirtieron en las versiones ms disponibles de BASIC para PC. Quick BASIC estuvo disponible para Windows cuando apareci, pero era difcil codificar una interfaz de tipo Windows con l, debido a que no estaba muy bien acoplado a este entorno. Visual Basic 1.0 Sin embargo, Microsoft lanz un nuevo producto, uno que combinaba el lenguaje popular y fcil de usar BASIC con un entorno de desarrollo que permita a los programadores generar graficamente la interfaz de usuario de un programa. Este producto, fue Visual Basic 1.0. Al principio no tuvo una buena aceptacin, pero ofreci un entorno rpido para desarrollar una interfaz grfica de usuario (GUI). A modo de comentario tambin existi una version de Visual Basic para DOS, aunque fue olvidada rpidamente.

6|P a g e

P ro gram aci n e n .N ET

Introducci n

La primera version de Visual Basic 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. Es interesante conocer el por qu Visual Basic se llama Visual Basic. Lo de "VISUAL" es sencillo de intuir por lo que la mayora sabe a que se refiere, y esto es, a que es un lenguaje con un entorno visual, con un entorno grfico, es decir, un lenguaje que incluye una interfaz de desarrollo grfico. La otra parte es BASIC, a qu exactamente se refiere cuando decimos BASIC o VISUAL BASIC ?. B.A.S.I.C. significa: Beginners All-purpose Symbolic Instruction Code, es decir, Cdigo de instrucciones de uso universal para principiantes. Basic es un lenguage de programacin que acta como un intermediario entre el operador y el computador. Mediante el vocabulario y las reglas Basic, se le ordena al computador lo que se quiere que haga y el PC transforma estas instrucciones para poder ejecutarlas. BASIC es traducido a cdigo binario, tambin se puede escribir programas en cdigo binario pero es muy dificil por eso crearon el Basic. Es as que, construir estas aplicaciones ricas en grficos no era un proceso trivial antes de la introduccin de Visual Basic 1.0. Las antiguas aplicaciones de MS-DOS mucho distaban ya de las modernas y visuales de Windows, pero, claro, hacer aplicaciones para ese nuevo sistema operativo era un real privilegio, que muy pocos estudiosos de la programacin en C podan experimentar. Ese ao, Visual Basic 1.0 vio la luz, y revolucion el desarrollo de aplicaciones para Windows, especialmente por su facilidad y por la rapidez con la que permitia crearlas. Usando Visual Basic, los programadores podan, por primera vez,

7|P a g e

P ro gram aci n e n .N ET

Introducci n

implementar aplicaciones de Windows en un ambiente intuitivo y grfico, simplemente arrastrando controles sobre un formulario. Inicialmente, Visual Basic fue pensado para ser un producto muy tctico. Microsoft tena varias iniciativas en el desarrollo que lideraba Visual Basic 1.0, todas fueron pensadas para convertirse en las herramientas de programacin a largo plazo, estratgicas, grficas y orientadas a objetos. Como siempre ocurre con los productos en su versin 1.0, el equipo de Visual Basic 1.0 fue forzado a cortar caractersticas de su larga lista de ideas para entregar realmente el producto al mercado. Consecuentemente, la primera versin incluy poco ms que la tecnologa Embedded Basic que haba sido desarrollada originalmente en Microsoft QuickBasic 4.0 y una herramienta compiladora de diseo simple originalmente diseada para Windows 3.0 pero que nunca fue utilizada para tal fin. La popularidad de Visual Basic creci con el tiempo. Una simple caracterstica fue fundamental para su xito: la facultad de que Microsoft, el programador y otras personas generaran componentes personalizados que podan agregarse a los programas. Las empresas rpidamente se concentraron en este mercado y generaron componentes para agregar diversas caractersticas a las aplicaciones de Visual Basic, como la graficacin, el procesamiento de imgenes, las conexiones por mdem, entre otras. Estos componentes permitieron al programador de Visual Basic generar aplicaciones ms potentes co n la combinacin de diversos componentes con su propio cdigo. Esto aument en gran medida el desarrollo rpido con Visual Basic, y contribuy para que se convirtiera en uno de los lenguajes de programacin ms populares y ayud a Visual Basic a pasar de ser un logro de software a convertirse en un descubrimiento tecnolgico. Aproximadamente 12 meses despus, el desarrollo y mejora de la versin 1.0 comenz, Microsoft sac al mercado una herramienta desarrolladora para cubrir la exigencia en ese momento del mercado cuyo nombre en clave fue "Thunder"(Trueno). Desde el inicio bastante desfavorable vino un resultado igualmente difcil de comprender: un impacto en la industria informtica tan profundo que cambi para siempre el curso del desarrollo del software y cre una explosin en el mercado de las aplicaciones de Windows. Aos ms tarde, parece muy obvio pero en esa poca, cuando solamente un pequeo y selecto grupo de personas, era capaz de desarrollar aplicaciones para Windows, Visual Basic 1.0 represent un cambio gigantesco en el diseo de aplicaciones. Visual Basic 2.0 Cuando an no haba pasado un ao de su salida inicial al mercado, Visual Basic ya haba evolucionado rpidamente a un kit desarrollador altamente estratgico. Microsoft haba comenzado a utilizar Visual Basic internamente en algunos de sus propios proyectos que estaba desarrollando. A medida que la demanda de Visual Basic aumentaba, quedaba claro que los desarrolladores requeriran un Visual Basic mejor y ms capacitado. Para tratar a esta necesidad creciente, Microsoft 8|P a g e

P ro gram aci n e n .N ET

Introducci n

anunci la disponibilidad de Visual Basic 2.0 en noviembre de 1992 . La segunda versin de Visual Basic, distribuida en la edicin estndar y profesional, provea a los desarrolladores un funcionamiento perceptiblemente mejorado y mayor capacidad para crear aplicaciones de tamao mayor y ms sofisticadas. Inclua tambin una ayuda para mejorar la puesta a punto y depuracin, provea de la capacidad de conectarse a bases de datos mediante ODBC, y nuevas y productivas herramientas, por ejemplo, la ventana de propiedades, sintaxis del cdigo en color, y completo soporte para la Interfaz de Mltiples Documentos (MDI).

Visual Basic 3.0 Mientras la adopcin de Visual Basic en las corporaciones se expanda, tambin lo haca la necesidad de una herramienta para el desarrollador que permitiera aplicaciones data-aware robustas y a que nos referimos cuando hablamos de dataaware, simplemente a que por ejemplo los componentes visuales de base de datos son los que ponemos directamente en la forma para desplegar informacin y permitir al usuario editarla. Todos los componentes de este tipo son llamados "Data-aware", y tienen el prefijo "DB". De este modo, un componente de edicin "Edit" en su versin "Data Aware" es llamado "DBEdit". ComboBox se convierte en "DBComboBox". Muchos de los componentes visuales (Incluyendo el Grid) tienen una versin "Data Aware". Adems, cualquier programador puede crear sus propios componentes data aware. Visual Basic 3.0, anunciado solamente seis meses despus de la salida al mercado de la versin 2.0, solucionaba esta necesidad combinando el motor de la base de datos de Microsoft Access 1.1 con un conjunto rico de controles data-aware. Por primera vez, los desarrolladores podan conectar fcilmente a las bases de datos en un ambiente cliente/servidor usando un diseador visual intuitivo. La complementacin de estas caractersticas era los Data Access Object (Objetos de 9|P a g e

P ro gram aci n e n .N ET

Introducci n

Acceso a Datos) (DAO), un completo paquete de los objetos que proporcionaban al acceso mediante cdigo a la base de datos. Finalmente, Visual Basic 3.0 ampli la capacidad de la herramienta de desarrollo incluyendo los Crystal Reports, un motor para visualizar datos extrados en una variedad de formatos personalizables.

Visual Basic 4.0 En los aos venideros, la industria informtica comenzara a abrazar el movimiento a la programacin en 32-bits. La salida al mercado de Microsoft Windows 95 y de Microsoft Windows NT condujeron a esta adopcin y destac la necesidad de herramientas de desarrollo ms potentes que podran soportar la nueva arquitectura. Fue entonces cuando la revista Windows Watcher seal que Visual Basic estaba adoptado por ms compaas (30 por ciento) que cualquier otro lenguaje de programacin. Llevar una base instalada tan grande del desarrollo de aplicaciones en 16-bits a 32-bits sera una tarea de migracin importante, pero asegurara la existencia prolongada del lenguaje de programacin Visual Basic y de su comunidad. La versin 32-bit de Visual Basic- versin 4.0-fue anunciada en septiembre de 1995 e inclua la edicin estndar y profesional as como una nueva edicin destinada al nivel empresarial y el desarrollo en equipo. La edicin empresarial ofreca nuevas capacidades tales como automatizacin remota, control de datos remoto, y una versin integrada de Microsoft Visual SourceSafe para la direccin de la configuracin y realizacin de diferentes versiones. En la versin 4.0 poda generar programas de 16 y 32 bits a partir de un mismo cdigo fuente, a costa de un gran aumento en el tamao de los archivos "Runtime" necesarios.

10 | P a g e

P ro gram aci n e n .N ET

Introducci n

Visual Basic 5.0 Cada versin mejorada de Visual Basic agreg caractersticas que la convirtieron en una herramienta de desarrollo totalmente capaz. Un cambio en particular importante era la forma en que los programas de Visual Basic eran ejecutados. Hasta que se present la versin 5.0 en marzo de 1997, Visual Basic era un lenguaje interpretado, que result en un bajo rendimiento comparado con el de Visual C++, Delphi y otros lenguajes compilados. Visual Basic 5.0 hizo posible la generacin de versiones compiladas o interpretadas de las aplicaciones, y el rendimiento se mejor en forma considerable. Caractersticas de la versin 5.0 1. Generales: 1. Los ficheros .EXE generados son ms pequeos y ms rpidos. 2. Visual Basic 5.0 proporciona un marco de aplicaciones propio(Control Development framework) y ya no est basado en el marco proporcionado por MFC. 3. Se proporcionan Wizards de todo tipo: Application Wizard, Class Builder Add-in, ActiveX Control Wizard, Data Form Wizard, Setup Wizard, PropertyPage Wizard, Wizard Manager, etc. 2. Controles: 1. Nuevos controles, tales como Animation, Chart, MSFlexGrid, Internet Tranfer, WebBrowser, WinSock, etc. 2. La mayor parte de los controles admiten la tcnica de "arrastrar y soltar" (drag & drop) entre aplicaciones OLE. 3. Informacin sobre los controles (ToolTips). Con ello, se puede visualizar cualquier texto sobre un objeto cuando el puntero del ratn se deje sobre l. 4. Nuevas opciones de formato, como por ejemplo, dimensionamiento y alineamiento de grupos de controles. 11 | P a g e

P ro gram aci n e n .N ET

Introducci n

3. Implementacin interna: 1. Versin 2.0 de RDO (Remote Data Objects): sobre todo ofrece mejoras en tamao y rendimiento. 2. Compilador de cdigo nativo: Por fin es posible crear ejecutables con cdigo nativo en Visual Basic 5.0. De esta forma aumenta bastante la rapidez en la ejecucin. No obstante, se puede compilar utilizando el cdigo P tradicional. 3. El soporte de clases se ha mejorado: Con Friend un mtodo est disponible para todas las clases de un proyecto, con Implements se crean interfaces de clase. Tambin es posible generar y recibir eventos definidos por el usuario, y se pueden incluir formularios no modales en DLL. Una propiedad de clase puede ser marcada como propiedad por defecto (al igual que para controles). 4. Otras caractersticas nuevas del lenguaje: Debug.Assert permite verificar la ejecucin de cdigo desde el entorno de desarrollo, sin que ello afecte al fichero .EXE. AddressOf permite subclasificar ventanas y realizar llamadas de tipo callback a funciones API de Win32. El tipo Decimal basado en Variant aumenta el grado de precisin. 5. Objetos globales: Es posible crear clases sin declararlas o instanciarlas. Es decir, no es necesario declarar un New Clase1 para hacer uso de Clase1.

Visual Basic 6.0 Visual Basic 6.0 fue lanzado al mercado en junio de 1998 y forma parte de un paquete de lenguajes y herramientas para el desarrollo de aplicaciones bajo la plataforma Windows. Dicho paquete se conoce con el nombre de Visual Studio e incluye: Visual Basic 6.0, Visual C++ 6.0, Visual FoxPro 6.0, Visual InterDev 6.0, Visual J++ 6.0, y muchas unidades ms.

12 | P a g e

P ro gram aci n e n .N ET

Introducci n

Visual Basic 6.0 es un lenguaje de programacin visual, tambin llamado lenguaje de 4 generacin. Esto quiere decir que un gran nmero de tareas se realizan sin escribir cdigo, simplemente con operaciones grficas realizadas con el ratn sobre la pantalla. Es tambin un programa basado en objetos, aunque no orientado a objetos como C++ o Java. La diferencia est en que Visual Basic 6.0 utiliza objetos con propiedades y mtodos, pero carece de los mecanismos de herencia y polimorfismo propios de los verdaderos lenguajes orientados a objetos como Java y C++. Visual Basic no es solo un producto, tambin es tecnologa aplicada: Su parte "Visual" est basada en tecnologa orientada a objetos, su parte "Basic" es de tipo procedural, y la mezcla de estas dos tecnologas dan lugar a productos hbridos, orientados a eventos. Visual Basic 6.0 est orientado a la realizacin de programas para Windows, pudiendo incorporar todos los elementos de este entorno informtico: ventanas, botones, cajas de dilogo y de texto, botones de opcin y de seleccin, barras de desplazamiento, grficos, mens, etc. Prcticamente todos los elementos de interaccin con el usuario de los que dispone Windows 95/98/NT pueden ser programados en Visual Basic 6.0 de un modo muy sencillo. En ocasiones bastan unas pocas operaciones con el ratn y la introduccin a travs del teclado de algunas sentencias para disponer de aplicaciones con todas las caractersticas de Windows 95/98/NT. Las versiones de Visual Basic tanto la 5.0 como la 6.0 representaron un paso importante hacia dar posibilidad a los desarrolladores en Visual Basic a programar en los nuevos niveles del funcionamiento en el ambiente libre que representa Internet. Las caractersticas tales como el compilador del cdigo nativo introdujeron aumentos del funcionamiento de hasta el 2.000 por ciento. El Webclass designer (diseador de clases Web) simplific la creacin de las aplicaciones del Web proporcionando un modelo intuitivo del objeto para el servidor web. Y el diseador de pginas DHTML permiti la creacin de aplicaciones para Microsoft Internet Explorer 4.0- que combinaron la riqueza de HTML dinmico (DHTML) con el funcionamiento y la productividad de Visual Basic. Finalmente, con la Control Creation Edition (Edicin de Creacin de Controles), los desarrolladores de Visual Basic podran construir fcilmente los controles Microsoft ActiveX de alto rendimiento y con un amplio alcance que estaban destinados a Internet. Este lenguaje resulta ideal para crear aplicaciones de uso general, como por ejemplo: 13 | P a g e Aplicaciones y utilitarios para Windows de cualquier ndole. Aplicaciones que manejen bases de datos de pequeo y mediano tamao (por ejemplo, las basadas en el motor Jet de Microsoft, implementada en el conocido Access). Aplicaciones multimedia o publicaciones electrnicas en CD. Juegos sencillos.

P ro gram aci n e n .N ET Ediciones de Visual Basic 6.0

Introducci n

Visual Basic posee tres ediciones, cada una de las cuales est orientada a unos requisitos de programacin especficos.

Edicin de Aprendizaje: Permite a los programadores crear aplicaciones robustas para Microsoft Windows. Incluye el CD "Aprenda Visual Basic ya" junto con el "MSDN", que es la documentacin completa en pantalla de Microsoft.

Edicin Profesional: Est pensado para profesionales, contiene las herramientas que permiten desarrollar aplicaciones para terceros. Incluye todas las caractersticas de la edicin de aprendizaje, as como incorpora "ActiveX Visual Database Tools and Data". Incluye adems el libro "Caractersticas empresariales de Visual Studio", y los CDs de Microsoft Network que contienen documentacin completa en pantalla.

14 | P a g e

P ro gram aci n e n .N ET

Introducci n

Edicin Empresarial: Permite a los profesionales crear slidas aplicaciones distribuidas en un entorno de equipo. Incluye todas las caractersticas de la "Edicin Profesional", SQL Server, IIS, SNA Server, Visual SourceSafe, etc. Incluye el mismo material de documentacin que la edicin profesional.

Visual Basic 6.0 combina la sencillez de Basic con el poder de un lenguaje de programacin visual que permite desarrollar robustas aplicaciones de 32 bits. Visual Basic ya no es solo un lenguaje para los mas novatos, sino que representa una excelente alternativa para programadores de todos los niveles. Se han agregado nuevas caractersticas a Visual Basic, pero todo se ha generado con base en lo ya existente. Esto no es extrao. La mayora de las herramientas de desarrollo evoluciona de esta forma, pero esto tiene un desafortunado efecto 15 | P a g e

P ro gram aci n e n .N ET

Introducci n

colateral de arrastrar basura. Las nuevas versiones de una herramienta intentan conservar la compatibilidad con todos los aspectos de las versiones anteriores. Es casi inconcebible volver a escribir un lenguaje desde el inicio. El trabajo requerido sera enorme, y no es bueno romper la compatibilidad con el cdigo existente del usuario. El beneficio de este cambio sera una implementacin totalmente limpia y nueva que podra mantener lo bueno y deshacerse del lastre del lenguaje. Eso es exactamente lo que Microsoft hizo al ir de Visual Basic 6.0 a Visual Basic .NET Visual Basic .NET Los Formularios de Windows con formas, los ricos grficos, las construcciones orientadas al objeto, y la integracin del servicio Web de XML son todo parte de Visual Basic .NET. A travs de los aos, Visual Basic ha evolucionado de un juguete de un aficionado a una herramienta imprescindible que contina cambiando el mundo. Ha revolucionado la manera que se trabaja con la informacin, la manera de comunicarse, y la forma en la que se construyen aplicaciones. Visual Basic .Net tiene una gran cantidad de caractersticas nuevas y mejoradas como la herencia, las interfaces y la sobrecarga que la convierten en un lenguaje eficaz de programacin orientado a objetos. Otras caractersticas nuevas del lenguaje son el subprocesamiento libre y el control de excepciones estructurado. Visual Basic integra .NET Framework y Common Language Runtime completamente, que conjuntamente proporcionan interoperabilidad del lenguaje, recoleccin de elementos no utilizados, seguridad ampliada y compatibilidad de versiones mejorada. Visual Basic .Net admite herencia nica y crea lenguaje intermedio de Microsoft (MSIL) como entrada de compiladores de cdigo nativo. Visual Basic .Net es, comparativamente, fcil de aprender y utilizar, y se ha convertido en el lenguaje de programacin elegido por cientos de programadores. El conocimiento de Visual Basic se puede aprovechar de distintas maneras, por ejemplo, escribiendo macros en Visual Studio o programando en aplicaciones como Microsoft Excel, Access y Word. Visual Basic proporciona prototipos de algunos de los tipos de proyectos ms comunes, incluyendo: Aplicacin para Windows, Biblioteca de clases, Biblioteca de control de Windows, Aplicacin Web ASP.NET, Servicio Web ASP.NET, Biblioteca de control Web, Aplicacin de consola, Servicio de Windows. Las versiones anteriores de Visual Basic estaban orientadas a aplicaciones cliente de Microsoft Windows. Visual Basic .NET est pensado para crear adems aplicaciones de servicio Web XML. Para este propsito, Visual Basic .NET genera cdigo administrado para Common Language Runtime. Esto supone cambios en el propio lenguaje. Los cambios en Visual Basic .NET estn proyectados para: Simplificar el lenguaje y hacerlo ms coherente. Agregar nuevas caractersticas solicitadas por usuarios. 16 | P a g e

P ro gram aci n e n .N ET Hacer el cdigo ms sencillo de leer y mantener.

Introducci n

Ayudar a los programadores a evitar los errores de programacin. Crear aplicaciones ms slidas y ms sencillas de depurar. Visual Basic .NET ofrece numerosas caractersticas nuevas y mejoradas, como herencia, interfaces y sobrecarga, que lo convierten en un eficaz lenguaje de programacin orientado a objetos. Con Visual Basic, ahora se puede crear aplicaciones multiproceso y escalables utilizando subprocesamiento mltiple explcito. Otra caracterstica nueva de Visual Basic .NET incluye el control estructurado de excepciones, atributos personalizados y compatibilidad con CLS (Common Language Specification, Especificacin de lenguajes comunes). CLS es un conjunto de reglas que estandariza cosas como tipos de datos y el modo en que se exponen e interoperan los objetos. Visual Basic .NET agrega varias caractersticas que aprovechan las ventajas de CLS. Cualquier lenguaje compatible con CLS puede utilizar las clases, los objetos y los componentes que se crean en Visual Basic .NET. Y el usuario de Visual Basic, puede tener acceso a las clases, los componentes y los objetos desde otros lenguajes de programacin compatibles con CLS sin tener en cuenta diferencias especficas del lenguaje como los tipos de datos. Las caractersticas de CLS que utilizan los programas de Visual Basic .NET son los ensamblados, espacios de nombres y atributos. Visual Basic .NET ofrece numerosas caractersticas de lenguaje orientado a objetos nuevas o mejoradas como la herencia, la sobrecarga, la palabra clave Overrides, interfaces, miembros compartidos y constructores. Visual Basic .NET 2002 (VB 7.0) Si Visual Basic .NET debe considerarse una mera versin de Visual Basic, o si debe considerarse como un nuevo lenguaje de programacin es un tema que ha trado mucha discusin, y que an la trae. A pesar de que la sintaxis bsica es prcticamente la misma entre VB y VB.NET, con la excepcin de los aadidos para soportar nuevas caractersticas como el control estructurado de excepciones, la programacin orientada a objetos, o los Genricos, las diferencias entre VB y VB.NET son profundas, sobre todo en cuanto a metodologa de programacin y bibliotecas, pero ambos lenguajes siguen manteniendo un gran parecido, cosa que facilita notablemente el paso de VB a VB.NET. El 13 de febrero de 2002, nacio oficialmente Visual Basic .NET, junto con el resto de la familia de Visual Studio .NET. Visual Basic .NET no es un simple upgrade; es un cambio realmente profundo y radical, puesto que supone la introduccin de la plataforma .NET de microsoft y por eso lo convierte en uno de los lenguajes mas poderosos de la actualidad, con caractersticas avanzadas, como verdadera orientacin a objetos, multi-threading, y la posibilidad de crear Web Services, por nombrar solo tres aspectos, fue la primera versin de Visual Studio en introducir el 17 | P a g e

P ro gram aci n e n .N ET

Introducci n

framework .NET. Esta versin de Visual Studio introdujo, junto con el Framework .NET tres nuevos lenguajes de programacin, C#, VB.NET y Visual J#. En esta primera versin de Visual Studio .NET se podan programar aplicaciones Windows.Forms (aplicaciones de escritorio) y aplicaciones ASP.NET (Aplicaciones Web). Como se mencion antes en esta versin se produjo un cambio sustancial, .NET es una plataforma de ejecucin intermedia multilenguaje, de forma que los programas desarrollados en .NET no se compilan en lenguaje mquina, sino en un lenguaje intermedio (CIL - Common Intermediate Language) denominado Microsoft Intermediate Language (MSIL). En una aplicacin MSIL, el cdigo no se convierte a lenguaje mquina hasta que sta se ejecuta, de manera que el cdigo puede ser independiente de plataforma (al menos de las soportadas actualmente por .NET). Las plataformas han de tener una implementacin de Infraestructura de Lenguaje Comn (CLI) para poder ejecutar programas MSIL. Actualmente se pueden ejecutar programas MSIL en Linux y Mac OS X usando implementaciones de .NET que no son de Microsoft, tales cmo Mono y DotGNU. Visual Studio .NET 2002 supuso tambin la introduccin del lenguaje C#, un lenguaje nuevo diseado especficamente para la plataforma .NET, basado en C++ y Java. Se present tambin el lenguaje J# -sucesor de J++- el cual, en lugar de ejecutarse en una mquina virtual de Java, se ejecuta nicamente en el framework .NET. El lenguaje Visual Basic fue remodelado completamente y evolucion para adaptarse a las nuevas caractersticas de la plataforma .NET, hacindolo mucho ms verstil y dotndolo con muchas caractersticas de las que careca. Algo similar se llev a cabo con C++, aadiendo extensiones al lenguaje llamadas Managed Extensions for C++ con el fin de que los programadores pudieran crear programas en .NET. Por otra parte, Visual FoxPro pas a ser comercializado por separado. Todos los lenguajes se unifican en un nico entorno. La interfaz se mejora notablemente en esta versin, siendo ms limpia y personalizable. Visual Studio .NET puede usarse para crear programas basado s en Windows (usando Windows Forms en vez de COM), aplicaciones y sitios web (ASP.NET y servicios web), y dispositivos mviles (usando el .NET Compact Framework). Esta versin requiere un sistema operativo basado en NT. La versin interna de Visual Studio .NET es la 7.0.

Visual Basic .NET 2003 (VB 7.1) Visual Studio .NET 2003 supone una actualizacin menor de Visual Studio .NET. Se actualiza el .NET Framework a la version 1.1. Tambin se aade soporte con el fin de escribir aplicaciones para determinados dispositivos mviles, ya sea con 18 | P a g e

P ro gram aci n e n .N ET

Introducci n

ASP.NET o con el .NET Compact Framework. Adems el compilador de Visual C++ se mejora para cumplir con ms estndares, el Visual C++ Toolkit 2003. Visual Studio 2003 se lanza en 4 ediciones: Academic, Professional, Enterprise Developer, y Enterprise Architect. La edicin Enterprise Architect inclua una implentacin de la tecnologa de modelado Microsoft Visio, que se centraba en la creacin de representaciones visuales de la arquitectura de la aplicacin basadas en UML. Tambin se introdujo "Enterprise Templates", para ayudar a grandes equipos de trabajo a estandarizar estilos de programacin e impulsar polticas de uso de componentes y asignacin de propiedades. Microsoft lanz el Service Pack 1 para Visual Studio 2003 el 13 de Septiembre de 2006. La versin interna de Visual Studio .NET 2003 es la 7.1 aunque el formato del archivo es 8.0.

Visual Basic .NET 2005 (VB 8.0) Visual Studio 2005 se empez a comercializar a travs de Internet a partir del 4 de Octubre de 2005 y lleg a los comercios a finales del mes de Octubre en ingls. En castellano no sali hasta el 4 de Febrero de 2006. Microsoft elimin .NET, pero eso no indica que se alejara de la plataforma .NET, de la cual se incluy la versin 2.0. La actualizacin ms importante que recibieron los lenguajes de programacin fue la inclusin de tipos genricos, similares en muchos aspectos a las plantillas de C#. Con esto se consigui encontrar muchos ms errores en la compilacin en vez de en tiempo de ejecucin, incitando a usar comprobaciones estrictas en reas donde 19 | P a g e

P ro gram aci n e n .N ET

Introducci n

antes no era posible. C++ tiene una actualizacin similar con la adicin de C++/CLI como sustituto de C# manejado. Se incluy un diseador de implantacin, que permite que el diseo de la aplicacin sea validado antes de su implantacin. Tambin se incluy un entorno para publicacin web y pruebas de carga para comprobar el rendimiento de los programas bajo varias condiciones de carga. Visual Studio 2005 tambin aadi soporte de 64-bit. Aunque el entorno de desarrollo sigue siendo una aplicacin de 32 bits Visual C++ 2005 soporta compilacin para x86-64 (AMD64 e Intel 64) e IA-64 (Itanium). El SDK incluy compiladores de 64 bits as como versiones de 64 bits de las libreras. Visual Studio 2005 tiene varias ediciones radicalmente distintas entre s: Express, Standard, Professional, Tools for Office, y 5 ediciones Visual Studio Team System. stas ltimas se proporcionaban conjuntamente con suscripciones a MSDN cubriendo los 4 principales roles de la programacin: Architects, Software Developers, Testers, y Database Professionals. La funcionalidad combinada de las 4 ediciones Team System se ofreca como la edicin Team Suite. Las ediciones Express se disearon para principiantes, aficionados y pequeos negocios, todas disponibles gratuitamente a travs de la pgina de Microsoft, se incluy una edicin independiente para cada lenguaje: Visual Basic, Visual C++, Visual C#, Visual J# para programacin .NET en Windows, y Visual Web Developer para la creacin de sitios web ASP.NET. Las ediciones express carecan de algunas herramientas avanzadas de programacin as cmo de opciones de extensibilidad. Se lanz el service Pack 1 para Visual Studio 2005 el 14 de Diciembre de 2006. La versin interna de Visual Studio 2005 es la 8.0, mientras que el formato del archivo es la 9.0.

Visual Studio 2005 Beta 1 20 | P a g e

P ro gram aci n e n .N ET

Introducci n

Visual Studio 2005 Beta 2

Visual Studio Express Edition

Visual Basic 2005 Express Edition Beta 2

21 | P a g e

P ro gram aci n e n .N ET

Introducci n

Visual Studio 2005 Professional Edition

Visual Studio .Net Enterprice Architect Visual Basic Express Edition A partir de la introduccin en el mercado de la versin 2005 de Visual Studio , como se mencion anteriormente, Microsoft public lo que se conoce como ediciones Express de distintos programas. Las versiones Express contenan versiones limitadas pero gratuitas, pensadas para usos no profesionales (principiantes, aficionados y pequeos negocios), existiendo una edicin independiente para cada lenguaje. Visual Basic Express Edition fue una versin de Visual Studio limitada. Esta versin permite slo programar en VB.NET, y adems limita el tipo de proyectos que se pueden desarrollar. Visual Web Developer Express Edition permite programar pginas ASP.NET en VB. Se lanz el service Pack 1 para Visual Studio 2005 el 14 de diciembre de 2 006. 22 | P a g e

P ro gram aci n e n .N ET Visual Studio 2008 (VB 9.0)

Introducci n

Visual Studio 2008 (antes llamado Orcas Code Name) fue publicado el 17 de Noviembre de 2007 en ingls, mientras que la versin en castellano no fue publicada hasta el 2 de Febrero de 2008. El nuevo framework (.Net 3.5) estaba diseado para aprovechar las ventajas que ofreca el nuevo sistema operativo "Windows Vista" a travs de sus subsistemas "Windows Communication Foundation" (WCF) y "Windows Presentation Foundation" (WPF). El primero tuvo como objetivo la construccin de aplicaciones orientadas a servicios mientras que el ltimo apuntaba a la creacin de interfaces de usuario ms dinmicas que las conocidas hasta el momento. A las mejoras de desempeo, escalabilidad y seguridad con respecto a la versin anterior, se agregan entre otras, las siguientes novedades. La mejora en las capacidades de Pruebas Unitarias permitan ejecutarlas ms rpido independientemente de si lo hacan en el entorno IDE o desde la lnea de comandos. Se incluy adems un nuevo soporte para diagnosticar y optimizar el sistema a travs de las herramientas de pruebas de Visual Studio. Con ellas se podran ejecutar perfiles durante las pruebas para que ejecuten cargas, prueben procedimientos contra un sistema y registren su comportamiento; y utilizar herramientas integradas para depurar y optimizar. Con Visual Studio Tools for Office (VSTO) integrado con Visual Studio 2008 fue posible desarrollar rpidamente aplicaciones de alta calidad basadas en la interfaz de usuario (UI) de Office que personalicen la experiencia del usuario y mejoren su productividad en el uso de Word, Excel, PowerPoint, Outlook, Visio, InfoPath y Project. Una completa compatibilidad para implementacin con ClickOnce garantizaba el entorno ideal para una fcil instalacin y mantenimiento de las soluciones Office. Visual Studio 2008 permiti incorporar caractersticas del nuevo Windows Presentation Foundation sin dificultad tanto en los formularios de Windows existentes como en los nuevos. Es posible actualizar el estilo visual de las aplicaciones al de Windows Vista debido a las mejoras en Microsoft Foundation Class Library (MFC) y Visual C++. Visual Studio 2008 permiti mejorar la interoperabilidad entre cdigo nativo y cdigo manejado por .NET. Esta integracin ms profunda simplific el trabajo de diseo y codificacin. LINQ (Language Integrated Query) es un nuevo conjunto de herramientas diseado para reducir la complejidad del acceso a Base de Datos, a travs de extensiones para C++ y Visual Basic as como para Microsoft .NET Framework. Permite filtrar, enumerar, y crear proyecciones de muchos tipos y colecciones de datos utilizando todos la misma sintaxis, prescindiendo del uso de lenguajes especializados como SQL o XPath. Visual Studio 2008 permiti la creacin de soluciones multiplataforma adaptadas para funcionar con las diferentes versiones de .Net Framework: 2.0. (Incluido con Visual Studio 2005), 3.0 (incluido en Windows Vista) y 3.5 (incluido con Visual Studio 2008).

23 | P a g e

P ro gram aci n e n .N ET

Introducci n

.NET 3.5 incluye biblioteca ASP.NET AJAX para desarrollar aplicaciones web ms eficientes, interactivas y altamente personalizadas que funcionen para todos los navegadores ms populares y utilicen las ltimas tecnologas y herramientas Web, incluyendo Silverlight y Popfly.

Caractersticas Multi Targeting Visual Studio "Orcas" es la primer versin de Visual Studio que permite a los desarrolladores usar distintas versiones del .NET Framework, esto significa que se puede abrir o crear proyectos que fueron desarrollados con cualquiera de las versiones del .NET Framework 2.0, 3.0 y 3.5. Esto gracias a que Visual Studio automaticamente muestra la barra de controles, filtra el intellisense, muestra las referencias de la ventana "add reference" (y otras cosas mas) acorde especificamente a la version del .NET Framework en la que se va a trabajar. El gran beneficio de esto es que ahora la mayor parte de las nuevas funcionalidades (por ejemplo: todo lo de el diseador WYSIWYG, el editor de JavaScript) se la puede usar en proyectos antiguos que se hayan hecho en versiones pasadas (2.0 o la 3.0). Esto es extraordinario ya que no hay que esperar a realizar un nuevo desarrollo para usar esta herramienta si no que ya se puede empezar a usar con los proyectos que actualmente estn en desarrollo. En la imagen a continuacion se muestra como al momento de crear un proyecto se puede especificar con cul version del .NET Framework se desea trabajar permitiendo crear un proyecto web que trabaje con el ASP.NET 2.0 si asi se lo desea, por supuesto si se eligen las versiones anteriores a la 3.5 no podran trabajar con LinQ o con Windows Presentation Foundation ya que son propios de la version 3.5.

24 | P a g e

P ro gram aci n e n .N ET Editor HTML/CSS WYSIWYG enriquecido Este editor permite entre otras cosas:

Introducci n

Dividir en 2 partes el editor, una en el modo diseo y la otra en el codigo fuente HTML. Soporte enriquecido de hojas de estilo CSS (ventana de propiedades CSS, visor de herencia CSS, vista previa CSS y un CSS manager) Mejoras sustanciales de performance en el cambio de vistas (cambio de codigo fuente HTML a modo diseo es ahora casi inmediata) El layout de diseo reconoce valores almacenados en archivos CSS externos Soporte de Master Pages anidados. Visual Studio "Orcas" ahora tiene un mejor soporte de hojas de estilo CSS. La nueva ventana de propiedades "Manage Styles" permite crear y administrar las hojas de estilo CSS.

Desarrollo multiplataforma Gracias al esfuerzo que ha realizado la gente de este proyecto para implementar una versin compatible 100% con .NET que incluye la inmensa mayora de la bibliotecas y una implementacin multiplataforma de Windows.Forms, resulta posible programar para distintos sistemas operativos usando VB.NET

Visual Studio 2010 Visual Studio 2010. Es la versin ms reciente de esta herramienta, acompaada por .NET Framework 4.0. Ambas actualmente estn en su fase Beta 2.

25 | P a g e

P ro gram aci n e n .N ET

Introducci n

Qu es el .Net Framework? Cada cierto tiempo se produce una revolucin en la tecnologa empleada en el desarrollo de aplicaciones. El primer gran cambio que vivimos, fue el paso de la programacin en MSDOS a la programacin Windows (Win16), ms tarde con la evolucin de los sistemas operativos, el segundo cambio, las aplicaciones Win32, y ahora estamos viviendo la tercera de las revoluciones, lo que Microsoft llama .NET Framework o ms comnmente .NET. Un Framework, es bsicamente, un conjunto de clases que interactan en forma cooperativa para dar solucin a una determinada necesidad. Para definirlo en una forma sencilla, se podra visualizar como que todos los edificios de una ciudad son todos los tipos de software que podemos construir, supongamos que necesitamos construir un edificio, imaginmonos que tuvieramos que construir cada una de las partes del edificio, (griferia, accesorios, luces, paredes, etc) cunto tiempo nos llevara terminarlo?, lo mismo sucede con el software, si cada vez tuvieramos que construir todos los componentes que lo conforman, tardaramos mucho ms tiempo. En trminos simples un Framework es un conjunto de clases base que pueden ser reutilizadas para la construccin de un nuevo software. .NET Framework es la plataforma de desarrollo de cdigo administrado de Microsoft. Est formado por una serie de herramientas y libreras con las que se pueden crear todo tipo de aplicaciones, desde las tradicionales aplicaciones de escritorio (WPF o Windows Forms ) hasta aplicaciones para XBOX (XNA) pasando

26 | P a g e

P ro gram aci n e n .N ET

Introducci n

por desarrollo web (ASP.NET), desarrollo para mviles (compact framework), aplicaciones de servidor (WPF, WCF), etctera. El concepto Framework .NET, como el trmino en ingls dice (Framework = Armazn) es un marco en donde las aplicaciones corrern. Estas aplicaciones ya no corren directamente bajo el sistema operativo si no que corren bajo este armazn o marco. .Net Framework es el nombre que se le ha dado a una diversidad de componentes y servicios que se combinan para generar un potente entorno de desarrollo. Incluye una gran cantidad de clases (ms de 6.000) que ofrecen la mayor parte de la funcionalidad anteriormente incluida en Visual Basic o la API de Windows. Tales clases permiten escribir aplicaciones basadas en Windows y para Web, acceder a la red, generar imgenes, y otras cosas ms. El Framework de .Net es una infraestructura sobre la que se rene todo un conjunto de lenguajes y servicios que simplifican enormemente el desarrollo de aplicaciones. Mediante esta herramienta se ofrece un entorno de ejecucin altamente distribuido, que permite crear aplicaciones robustas y escalables. Evolucin del .NET Framework

En la imagen se puede visualizar las diferentes versiones del .Net Framework (empezando desde la 2.0) y las caractersticas que agregan a la programacin. El .Net Framework 2.0, con fecha de salida 07/11/2005, posee las siguientes caractersticas:

Common Language Runtime (CLR): entorno en tiempo de ejecucin que ejecuta el cdigo y proporciona servicios que facilitan el proceso de desarrollo. WinForms: es una API incluida en el Framework que se encarga de brindar aplicaciones clientes nativas de Windows. Web Services: el Framework contiene un conjunto de clases para poder desarrollar Servicios Web seguros e interoperables basados en especificaciones abiertas. Un Web Service es un conjunto de protocolos y estndares que sirven para intercambiar datos entre aplicaciones utilizando redes (como Internet).

27 | P a g e

P ro gram aci n e n .N ET

Introducci n

ASP.Net: es una tecnologa libre que permite a los programadores crear aplicaciones Web dinmicas. El Fwk 2.0 incorpora significativas mejoras en todas las reas de ASP.NET, agrega controles nuevos, posibilidad de SKINs, Master Page, WebParts, manejo de perfiles, etc. ADO.Net: se incorporaron mejoras en ADO.Net, sobretodo compatibilidad con UDT (tipos definidos por el usuario) y la posibilidad de tener varios MARS (conjuntos de resultados activos).

El Framework 3.0, con fecha de salida 06/11/2006, incluye las siguientes agregados:

Windows Communication Foundation (WCF): modelo de programacin unificado para generar aplicaciones orientadas a servicios. Permite a los programadores generar soluciones con transaccin seguras y de confianza, que se integren en diferentes plataformas y que interoperen con las inversiones existentes. Lo ms importante de WCF es que permite unificar las distintas tecnologas de servicios, haciendo posible mantener el Servicio de Aplicaci n, ms all de la implementacin fsica del mismo (configurable). Windows Presentation Foundation (WPF): proporciona a los programadores un modelo de programacin unificado con el que generar experiencias de cliente inteligentes de Windows, en las que se incorpora la interfaz de usuario, multimedia y documentos. WPF a diferencia de Windows Forms que permite crear apliaciones ms ricas en contenido y presentacin para el usuario. Windows Workflow Foundation (WF): es un componente del Framework 3.0 que provee un modelo de programacin para construir aplicaciones basadas en Workflows o Flujos de Trabajos. Un Workflow es una serie de actividades discretas involucrado en el proceso de negocio. CardSpace: es la implementacin de Microsoft de un metasistema de identidad que permite a los usuarios elegir una de una serie de identidades que les pertenecen, y utilizarla en contextos en que son aceptadas, independientemente de los sistemas de identidad subyacentes donde las identidades se originan y utilizan. O sea, es una implementacin integrada que permite hacer que los usuarios se identifiquen en distintos sistemas, sin la necesidad de mantener un usuario y contrasea en cada uno de ellos.

El Framework 3.5, con fecha de salida 19/11/2007, incluye los siguientes agregados:

LINQ: incorpora eficaces capacidades de consulta a la sintaxis de los lenguajes C# y Visual Basic en forma de patrones de consulta estndar fciles de aprender. Esta tecnologa se puede extender para que sea compatible con cualquier tipo de almacn de datos. .NET Framework 3.5 incluye ensamblados de proveedor de LINQ que habilitan el uso de LINQ para consultar colecciones de .NET Framework (LINQ to Objects), bases de datos de SQL Server (LINQ to

28 | P a g e

P ro gram aci n e n .N ET

Introducci n

SQL), conjuntos de datos ADO.NET (LINQ to DataSet) y documentos XML (LINQ to XML).

AJAX: ASP.NET agrega compatibilidad con el desarrollo de AJAX centrado en el servidor mediante un conjunto de nuevos controles de servidor y nuevas API. Puede habilitar una pgina ASP.NET 2.0 existente en AJAX agregando un control ScriptManager y un control UpdatePanel, de modo que la pgina pueda actualizarse sin que sea necesario realizar una actualizacin de la pgina completa. REST: integracin de REST en WCF. Adems modificaciones importantes en WCF, WPF y WF.

Se encuentra disponible el Framework 3.5 SP1, con fecha de salida 11/08/2008, dicho Service Pack adems de arreglar errores provee nuevas caractersticas:

ADO.NET Entity Framework: es una biblioteca de datos de alto nivel que aumenta el nivel de abstraccin que los desarrolladores necesitan para trabajar con los datos en las bases de datos relacionales. Brinda todas las clases y herramientas necesarias para poder trabajar en las aplicaciones con objetos, a partir de un modelo de datos subyacente en Base de Datos relacionales. A diferencia de LINQ to SQL, ADO.Net EF no limita sus capacidades de Bases de Datos Sql Server. ADO.NET Data Services: servicio de publicacin y federacin de datos con una interface estndar usando REST. Expone un modelo de objetos (no una base de datos) sobre la web. ASP.NET Dynamic Data: una caracterstica que permite la creacin rpida de aplicaciones web dirigidas por datos (aplicaciones con ABMs). Permite la creacin de aplicaciones web basndose en ASP.NET WebForms y ASP.NET MVC. ASP.NET Routing: define puntos de entrada a la application. Genera URLs basado en una tabla de ruteo. Es aprovechado por ASP.NET. Mejoras en ASP.NET AJAX, WCF, WPF, WinForms.

En la actualidad, la ltima versin de .NET Framework es la versin 4.0 (22 de Marzo de 2010). Esta versin agrega numerosas novedades y mejoras entre las que podemos nombrar las mejoras relativas a los lenguajes de programacin, el nuevo tipo de datos BigInteger, Windows Azure, DLR (Dynamic Language Runtime) y su soporte para trabajar con F#, IronRuby e IronPython, soporte para trabajar con contratos de cdigo (Code Contracts), caractersticas para trabajar con la plataforma de modelado Oslo y el lenguaje de programacin M, la posibilidad de trabajar con extensiones paralelas (conocida como Parallel Computing), mejoras en el GC o recolector de basura (Garbage Collector), funcionalidades relativas a la covarianza y contravarianza, mejoras en los algoritmos de comprensin (ahora son ms rpidos, con mayor ratio de compresin y con soporte para ficheros de ms de 4 Gb), 29 | P a g e

P ro gram aci n e n .N ET

Introducci n

mejoras relativas a MVC, Dynamic Data, compatibilidades CSS, soporte para jQuery e IntelliSense para JScript y jQuery (ASP.NET), y mejoras en WPF y WF.

Generics Generics (Genricos) es una caracterstica del CLR que permite declarar clases, estructuras, interfaces y mtodos sin especificar en tiempo de compilacin los tipo de dato que almacenan o utilizan, y especificando en su lugar parmetros "genricos". Los tipos reales de los datos se especifican cuando el tipo genrico es utilizado y no cuando es declarado, permitiendo definirlo una nica vez y utilizarlo muchas veces con parmetros de distinto tipo. Generics est soportado directamente por el CLR, aunque slo se puede hacer uso de esta caracterstica desde los lenguajes VB.NET, C# y C++ .NET. En otras palabras, los genricos permiten personalizar un mtodo, clase, estructura o interfaz para el tipo de datos preciso sobre el que acta. Entre los beneficios de los genricos se encuentran una mayor posibilidad de reutilizacin del cdigo y la seguridad de tipos. Los tipos genricos dan la posibilidad de tener tipos que permitan almacenar datos de distintos tipos sin perder la funcionalidad y sin la sobrecarga extra de tener que realizar conversiones (casting) al recuperar un elemento. A los genricos tambin se los conocen como tipos con argumentos de tipos annimos, tipos parametrizados o tipos con parmetros polimrficos.

30 | P a g e

P ro gram aci n e n .N ET

Introducci n

Usando los tipos genricos se puede definir una coleccin del tipo de datos que se necesite. Si la coleccin va a almacenar datos de tipo entero se puede crear, por ejemplo una lista de tipo entero, de forma que el tipo interno de dicha lista sea precisamente un tipo entero y as no habra necesidad de hacer ningn tipo de comprobacin al almacenar un dato en la lista, ni se tendra que hacer una conversin al recuperar dicho dato. Si posteriormente se pensara crear una lista para almacenar datos de tipo Cliente, pues se la crea, y sin tener la necesidad de hacer nada especial, ni tener que crear una nueva lista especialmente para almacenar los datos de tipo Cliente. Lo nico que se tendra que hacer es definir una coleccin que admita cualquier tipo de datos y cuando se cree una nueva instancia de dicha coleccin, se le indica qu tipo de datos va a almacenar y as ser el propio CLR el que se encargue de hacer todos los preparativos para que dicha coleccin slo almacene el tipo de datos que se le haya indicado. Es como que se le dijiera al compilador que la coleccin es del tipo de datos tal o cual y que slo admita valores de ese tipo en concreto. La ventaja de que los tipos de datos genricos formen parte del propio .NET Framework es que se pueden usar con cualquiera de los lenguajes de .NET y otra ventaja importante de usar Generics, son en performance y validacin en tiempo de compilacin. Performance porque se evitan las operaciones de casting y boxing/unboxing necesarias para insertar y obtener elementos de colecciones no genricas. Adems, los elementos son almacenados directamente en el tipo que especfica la instancia y no instancias completas de System.Object. Y la validacin en tiempo de compilacin asegura un cdigo con menos errores. Visual Basic, C# y Visual C++ proporcionan compatibilidad completa para definir y utilizar tipos genricos. Common Language Runtime proporciona nuevos cdigos de operacin y prefijos para admitir tipos genricos en el lenguaje intermedio de Microsoft (MSIL).

Genericos en .NET Framework:

Una definicin de tipo genrico es una declaracin de interfaz, clase o estructura que funciona como una plantilla, con marcadores de posicin para los tipos que puede contener o utilizar. Por ejemplo, la clase Dictionary(TKey, Tvalue) puede contener dos tipos: claves y valores. Dado que es slo una plantilla, no puede crear instancias de una clase, estructura o interfaz que es una definicin de tipo genrico. Los parmetros de tipo genricos, o parmetros de tipo, son los marcadores de posicin de un tipo genrico o definicin de mtodo. El tipo genrico Dictionary(TKey, Tvalue) tiene dos parmetros de tipo, TKey y TValue, que representan los tipos de sus claves y valores.

31 | P a g e

P ro gram aci n e n .N ET

Introducci n

Un tipo genrico construido, o tipo construido, es el resultado de especificar los tipos para los parmetros de tipo genrico de una definicin de tipo genrico. Un argumento de tipo genrico es cualquier tipo que se sustituye para un parmetro de tipo genrico. El trmino general "tipo genrico" incluye tanto los tipos construidos como las definiciones de tipos genricos. Las restricciones son lmites colocados en parmetros de tipo genrico. Por ejemplo, podra limitar un parmetro de tipo a los tipos que implementa la interfaz genrica Icomparer(T) para garantizar que se pueden ordenar esas instancias del tipo. Tambin puede restringir los parmetros de tipo a los tipos que tienen una clase base concreta, que tienen un constructor predeterminado o que son tipos de referencia o tipos de valor. Los usuarios del tipo genrico no pueden sustituir los argumentos de tipo que no cumplen las restricciones. Una definicin de mtodo genrico es un mtodo con dos listas de parmetros: una lista de parmetros de tipo genrico y una lista de parmetros formales. Los parmetros de tipo pueden aparecer como el tipo de valor devuelto o como los tipos de los parmetros formales, tal y como se muestra en el cdigo siguiente. Visual Basic Function Generic(Of T)(ByVal arg As T) As T Dim temp As T = arg ... End Function C# T Generic<T>(T arg) { T temp = arg; ...} Visual C++ generic<typename T> T Generic(T arg) { T temp = arg; ...}; Los mtodos genricos pueden aparecer en tipos genricos o no genricos. Es importante sealar que un mtodo no es genrico slo po rque pertenezca a un tipo genrico, o incluso porque tenga parmetros formales cuyos tipos son los parmetros genricos del tipo que los envuelve. Un mtodo slo es genrico si tiene su propia lista de parmetros de tipo.

32 | P a g e

P ro gram aci n e n .N ET Biblioteca de clases de .NET Framework

Introducci n

.NET Framework incluye clases, interfaces y tipos de valor que aceleran y optimizan el proceso de desarrollo y proporcionan acceso a la funcionalidad del sistema. Para facilitar la interoperabilidad entre lenguajes, los tipos de .NET Framework cumplen la especificacin de lenguaje comn (CLS) y, por tanto, se pueden utilizar en todos los lenguajes de programacin cuyo compilador satisfaga los requisitos de CLS. Los tipos de .NET Framework son la base sobre la que se crean aplicaciones, componentes y controles de .NET. .NET Framework incluye tipos que realizan las funciones siguientes: Representar tipos de datos base y excepciones. Encapsular estructuras de datos. Realizar E/S. Obtener acceso a informacin sobre tipos cargados. Invocar las comprobaciones de seguridad de .NET Framework. Proporcionar: acceso a datos, interfaz grfica para el usuario (GUI) independiente de cliente e interfaz GUI de cliente controlada por el servidor.

.NET Framework proporciona un conjunto completo de interfaces, as como clases abstractas y concretas (no abstractas). Se pueden utilizar las clases concretas tal como estn o, en muchos casos, derivar las clases propias de ellas. Para utilizar la funcionalidad de una interfaz se puede crear una clase que implemente la interfaz o derivar una clase de una de las clases de .NET Framework que implementa la interfaz. La biblioteca de clases de .NET Framework est constituida por espacios de nombres. Cada espacio de nombres contiene tipos que se pueden utilizar en el programa: clases, estructuras, enumeraciones, delegados e interfaces. Los espacios de nombres proporcionan mbito: dos clases con el mismo nombre pueden utilizarse simultneamente en el programa siempre que se encuentren en diferentes espacios de nombres y se califique cada nombre con el espacio de nombres correspondiente. El nombre del espacio de nombres forma parte del nombre completo del tipo (namespace.typename). Todos los espacios de nombres suministrados por Microsoft empiezan por System o por Microsoft. La funcionalidad de la biblioteca de clases de .NET Framework no reside en una nica DLL. Al distribuir la funcionalidad de las clases base entre varias DLL, un programa administrado no necesita cargar, en el inicio, una gran DLL, sino una o varias DLL ms reducidas. De esta forma, se reduce el tiempo de inicio de un programa. Para poder utilizar espacios de nombres, antes hay que definirlos en el proyecto. Sin embargo, normalmente se utilizan tipos procedentes de espacios de nombres 33 | P a g e

P ro gram aci n e n .N ET

Introducci n

que residen en una DLL administrada. Una DLL administrada se conoce tambin como ensamblado. Cuando se crea un proyecto de Visual Basic o Visual C# en Visual Studio, se sigue haciendo referencia a las DLL ms comunes de la clase base (ensamblados). No obstante, si se necesita utilizar un tipo incluido en una DLL a la que an no se hace referencia, se deber agregar la referencia de esa DLL. Convenciones de nomenclatura Los tipos de .NET Framework utilizan un esquema de nomenclatura con sintaxis de punto lo que indica la existencia de una jerarqua. Esta tcnica agrupa tipos relacionados en espacios de nombres para que se pueda buscar y hacer referencia a ellos ms fcilmente. La primera parte del nombre completo, hasta el punto situado ms a la derecha, es el nombre del espacio de nombres. La ltima parte es el nombre de tipo. Por ejemplo, System.Collections.ArrayList representa el tipo ArrayList que pertenece al espacio de nombres System.Collections. Los tipos de System.Collections se pueden utilizar para manipular colecciones de objetos. Este esquema de nomenclatura facilita a los programadores de bibliotecas la tarea de extender .NET Framework para poder crear grupos jerrquicos de tipos y asignarles nombre de forma coherente e ilustrativa. Se supone que los programadores de bibliotecas utilizarn la siguiente directriz cuando creen nombres para sus propios espacios de nombres: NombreCompaa.NombreTecnologa El uso de modelos de nomenclatura para agrupar tipos relacionados en espacios de nombres es una forma muy til de crear y documentar bibliotecas de clases. Sin embargo, este esquema de nomenclatura no influye en la visibilidad, el acceso a miembros, la herencia, la seguridad o el enlace. Se puede hacer la particin de un espacio de nombres en varios ensamblados y un ensamblado individual puede contener tipos de varios espacios de nombres. El ensamblado proporciona la estructura formal para el control de versiones, la implementacin, la seguridad, la carga y la visibilidad en Common Language Runtime. Espacios de nombres El espacio de nombres System es el espacio de nombres base para los tipos fundamentales de .NET Framework. Este espacio de nombres incluye clases que representan los tipos de datos base que utilizan todas las aplicaciones: Object (base de la jerarqua de herencia), Byte, Char, Array, Int32, String, etc. Muchos de estos tipos se corresponden con los tipos de datos primitivos que utiliza el lenguaje de programacin. Cuando se escribe cdigo utilizando tipos de .NET Framework se puede utilizar la palabra clave correspondiente del lenguaje cuando se espera un tipo de datos base de .NET Framework.

34 | P a g e

P ro gram aci n e n .N ET

Introducci n

En la tabla se muestra la clasificacin de espacios de nombres que agrupan clases con funcionalidades similares. Los ms usados son los siguientes:
Espacio de nombres System Utilidad de los tipos de datos que contiene Tipos muy frecuentemente usados, como los los tipos bsicos, tablas, excepciones, fechas, nmeros aleatorios, recolector de basura, entrada/salida en consola, etc. Colecciones de datos de uso comn como pilas, colas, listas, diccionarios, etc. Manipulacin de bases de datos. Forman la denominada arquitectura ADO.NET. Manipulacin de ficheros y otros flujos de datos. Realizacin de comunicaciones en red. Acceso a los metadatos que acompaan a los mdulos de cdigo. Acceso a objetos remotos. Acceso a la poltica de seguridad en que se basa el CLR. Manipulacin de hilos. Creacin de interfaces de usuario basadas en ventanas para aplicaciones Web. Creacin de interfaces de usuario basadas en ventanas para aplicaciones estndar. Acceso a datos en formato XML.

System.Collections System.Data System.IO System.Net System.Reflection System.Runtime.Remot ing System.Security System.Threading System.Web.UI.WebControls System.Windows.For ms System.XML

35 | P a g e

P ro gram aci n e n .N ET BIBLIOGRAFIA Libros

Introducci n

Ttulo: Microsoft Visual Basic 6.0 Manual de referencia, Autores: Baltazar Birnios y Mariano Birnios, Coleccin: Manuales USERS, Editorial: MP Ediciones, 2002. Ttulo: Aprenda Visual Basic Practicando, Autor: Jos Felipe Ramirez R., Editorial: Pearson Educacin, 2001. Ttulo: Visual Basic 6 Programacin Cliente / Servidor, Autores: Michael MacDonald y Kurt Cagle, Editorial: Paraninfo, 1999. Ttulo: Aprendiendo Visual Basic .NET en 21 Lecciones Avanzadas, Autores: Duncan Machenzie y Ken Sharkey, Editorial: Pearson Educacin, 2003.

Pginas Web http://es.wikipedia.org/wiki/Visual_Basic Programa Desarrollador Cinco Estrellas de Microsoft http://mslatam.com/latam/msdn/comunidad/dce2005/ MSDN Microsoft.- http://msdn.microsoft.com/ http://www.microsoft.com/ http://www.desarrolloweb.com/ http://www.adrformacion.com/ http://jorgesaavedra.wordpress.com/ http://www.webestilo.com/ http://canyouhearthebits.wordpress.com/ http://www.elguille.info/net/revistas/dotnetmania/pdf/dotnetmania_8.pdf http://www.devjoker.com/ http://msdn.microsoft.com/es-ar/vstudio/default.aspx http://www.microsoft.com/es/xl/default.aspx

36 | P a g e