SlideShare una empresa de Scribd logo
1 de 23
Instituto Universitario Politecnico
“Santiago Mariño”
Pto Ordaz
Escuela #43, Ing.Electrica.
PROGRAMACION
Profesor: Bachiller:
Jhohnny Herrera Michael ascanio
25.559.576
Ciudad guayana 19 de Enero de 2018
Plataforma Microsoft.NET
.NET es un framework de Microsoft que hace un énfasis en la transparencia de
redes, con independencia de plataforma de hardware y que permite un rápido
desarrollo de aplicaciones. Basada en ella, la empresa intenta desarrollar una
estrategia horizontal que integre todos sus productos, desde el sistema operativo
hasta las herramientas de mercado.
.NET podría considerarse una respuesta de Microsoft al creciente mercado de los
negocios en entornos Web, como competencia a la plataforma Java de Oracle
Corporation y a los diversos framework de desarrollo web basados en PHP
1- NET Framework
.NET Framework es un entorno de ejecución administrado que proporciona
diversos servicios a las aplicaciones en ejecución. Consta de dos componente
principales: Common Language Runtime (CLR), que es el motor de ejecución que
controla las aplicaciones en ejecución, y la biblioteca de clases de .NET
Framework, que proporciona una biblioteca de código probado y reutilizable al que
pueden llamar los desarrolladores desde sus propias aplicaciones.
Los servicios que ofrece .NET Framework a las aplicaciones en ejecución son
los siguientes:
- Administracion de la memoria.
En muchos lenguajes de programación, los programadores son responsables
de asignar y liberar memoria y de administrar la vida útil de los objetos. En las
aplicaciones de .NET Framework, CLR proporciona estos servicios en nombre
de la aplicación.
- Sistemas de tipos comunes.
En los lenguajes de programación tradicionales, el compilador define los tipos
básicos, lo que complica la interoperabilidad entre lenguajes. En .NET
Framework, los tipos básicos los define el sistema de tipos de .NET
Framework y son comunes a todos los lenguajes que tienen como destino
.NET Framework.
- Biblioteca de clases extensas.
En lugar de tener que escribir cantidades extensas de código para controlar
operaciones comunes de programacion de bajo nivel, los programadores
pueden usar una biblioteca de tipo accesible en todo momento y sus
miembros desde la biblioteca de clases de .NET Framework.
- Marcos y tecnología de desarrollos.
.NET Framework incluye bibliotecas para determinadas areas de desarrollo de
aplicaciones, como ASP.NET para aplicaciones web, ADO.NET para el acceso
a los datos y Windows Communication Foundation para las aplicaciones
orientadas a servicios.
- Interoperabilidad de Lenguajes.
Los compiladores de lenguajes cuya plataforma de destino es .NET
Framework emiten un código intermedio denominado Lenguaje Intermedio
Común (CIL), que, a su vez, se compila en tiempo de ejecución a través de
Common Language Runtime. Con esta característica, las rutinas escritas en
un lenguaje están accesibles a otros lenguajes, y los programadores pueden
centrarse en crear aplicaciones en su lenguaje o lenguajes preferidos.
- Compatibilidad de versiones.
Con raras excepciones, las aplicaciones que se desarrollan con una versión
determinada de .NET Framework se pueden ejecutar sin modificaciones en
una versión porterior.
- Ejecución en paralelo.
.NET Framework ayuda a resolver conflictos entre versiones y permite que
varias versiones de Common Language Runtime coexistan en el mismo
equipo. Esto significa que también pueden coexistir varis versiones de la
aplicaciones, y que una aplicación se puede ejecutar en la versión de .NET
Framework con la que se compilo.
- Compatibilidad con multiples versiones (multi-targeting). Al usar la biblioteca
de clases portable de .NET Framework, los desarrolladores pueden crear
ensamblados que funciones en varias plataformas, como Windows 7, Windows
8, Windows 8.1, Windows 10, Windows Phone y Xbox 360.
2- Beneficios del NET Framework
- Unifica los modelos de programación.
- Simplifica aun más el desarrollo.
- Provee un entorno de ejecución robusto y seguro.
- Es independiente del lenguaje de programación.
- Interoperabilidad con código existente.
- Simplifica la instalación y administración de las aplicaciones.
- Es extensible.
3- Lenguaje NET
C# es un lenguaje elegante con seguridad de tipos y orientado a objetos,
que perite a los desarrolladores crear una gran variedad de aplicaciones
seguras y solidas que se ejecutan en .NET Framewok .NET. Puede usar C#
para crear aplicaciones cliente de Windows, servicios web XML, componentes
distribuidos, aplicaciones cliente-servidor, aplicaciones de base de datos y
muchas, muchas más cosas. Visual C# proporciona un editor de código
avanzado, practicos diseñadores de interfaz de usuario, un depurador
integrado y muchas otras herramientas que facilitan el desarrollo de
aplicaciones basadas en el lenguaje C# y .NET Framework.
La sintaxis de C# es muy expresiva, pero también sencilla y fácil de
aprender. Cualquier persona familiarizada con C, C++ o Java, reconocerá al
instante la sintaxis de llaves de C#. Los desarrolladores que conocen
cualquiera de estos lenguajes puede empezar normalmente a trabajar en C#
de forma productiva en un espacio muy corto de tiempo.
La sintaxis de C# simplifica muchas de las complejidades de C++ y
proporciona características eficaces, como tipos de valor que aceptan valores
NULL, enumeraciones, delegados, expresiones lambda y acceso directo a
memoria, que no se encuentran en Java.
C# admite métodos y tipo genéricos, que proporcionan una mayor seguridad
de tipos y rendimiento, e iteradores, que permiten a los implementadores de
clases de colecciones definir comportamientos de iteración personalizados que
son fáciles de usar por el código de cliente. Las expresiones Language-
Integrated Query (LINQ) convierten la consulta fuertemente tipada en una
construcción de lenguaje de primera clase.
4- Componentes de NET Framework
Una aplicación de .NET se desarrolla y se ejecuta en una o
varias implementaciones de .NET. Las implementaciones de .NET incluyen .NET
Framework, .NET Core y Mono. Hay una especificación de API común a todas las
implementaciones de .NET que se denomina .NET Standard.
.NET Standard es un conjunto de API que se implementan mediante la
biblioteca de clases base de una implementación de .NET. Más formalmente, es
una especificación de API de .NET que constituyen un conjunto uniforme de
contratos contra los que se compila el código. Estos contratos se implementan en
cada implementación de .NET. Esto permite la portabilidad entre diferentes
implementaciones de .NET, de forma que el código se puede ejecutar en cualquier
parte.
.NET Standard es también una plataforma de destino. Si el código tiene como
destino una versión de .NET Standard, se puede ejecutar en cualquier
implementación de .NET que sea compatible con esa versión de .NET Standard.
Para obtener más información sobre .NET Standard y cómo tenerlo como
destino, vea el tema .NET Standard.
Implementaciones de NET
Cada implementación de .NET incluye los siguientes componentes:
- Uno o varios entornos de ejecución. Ejemplos: CLR para .NET Framework,
CoreCLR y CoreRT para .NET Core.
- Una biblioteca de clases que implementa .NET Standard y puede implementar
API adicionales. Ejemplos: biblioteca de clases base de .NET Framework,
biblioteca de clases base de .NET Core.
- Opcionalmente, uno o varios marcos de trabajo de la
aplicación. Ejemplos: ASP.NET, Windows Forms y Windows Presentation
Foundation (WPF) se incluyen en .NET Framework.
- Opcionalmente, herramientas de desarrollo. Algunas herramientas de
desarrollo se comparten entre varias implementaciones.
Hay cuatro implementaciones principales de .NET que Microsoft desarrolla y
mantiene activamente: .NET Core, .NET Framework, Mono y UWP.
Núcleo de NET
.NET Core es una implementación multiplataforma de .NET diseñada para
controlar cargas de trabajo de servidor y en la nube a escala. Se ejecuta en
Windows, macOS y Linux. Implementa .NET Standard, de forma que cualquier
código que tenga como destino .NET Standard se puede ejecutar en .NET
Core. ASP.NET Core se ejecuta en .NET Core.
.NET Framework
.NET Framework es la implementación de .NET original que existe desde
2002. Es el mismo .NET Framework que los desarrolladores existentes de .NET
han usado siempre. Las versiones 4.5 y posteriores implementan .NET Standard,
de forma que el código que tiene como destino .NET Standard se puede ejecutar
en esas versiones de .NET Framework. Contiene API específicas de Windows
adicionales, como API para el desarrollo de escritorio de Windows con Windows
Forms y WPF. .NET Framework está optimizado para crear aplicaciones de
escritorio de Windows.
Mono
Mono es una implementación de .NET que se usa principalmente cuando se
requiere un entorno de ejecución pequeño. Es el entorno de ejecución que activa
las aplicaciones de Xamarin en Android, Mac, iOS, tvOS y watchOS, y se centra
principalmente en una superficie pequeña.
Admite todas las versiones de .NET Standard publicadas actualmente.
Históricamente, Mono implementaba la API de .NET Framework más grande y
emulaba algunas de las funciones más populares en Unix. A veces, se usa para
ejecutar aplicaciones de .NET que se basan en estas capacidades en Unix.
Mono se suele usar con un compilador Just-In-Time, pero también incluye un
compilador estático completo (compilación Ahead Of Time) que se usa en
plataformas como iOS.
Plataforma universal de Windows (UWP)
UWP es una implementación de .NET que se usa para compilar aplicaciones
Windows modernas y táctiles y software para Internet de las cosas (IoT). Se ha
diseñado para unificar los diferentes tipos de dispositivos de destino, incluidos
equipos, tabletas, phablets, teléfonos e incluso la consola Xbox.
UWP proporciona muchos servicios, como una tienda de aplicaciones
centralizada, un entorno de ejecución (AppContainer) y un conjunto de API de
Windows para usar en lugar de Win32 (WinRT). Las aplicaciones pueden
escribirse en C++, C#, VB.NET y JavaScript. Al usar C# y VB.NET, .NET Core
proporciona las API de .NET.
Entornos de tiempo de ejecución .NET
Un entorno de ejecución es el entorno de ejecución de un programa
administrado. El sistema operativo forma parte del entorno de ejecución, pero no
del entorno de ejecución .NET. Estos son algunos ejemplos de los entornos de
ejecución .NET:
- Common Language Runtime (CLR) para .NET Framework
- Core Common Language Runtime (CoreCLR) para .NET Core
- .NET Native para la Plataforma universal de Windows
- El entorno de ejecución Mono para Xamarin.iOS, Xamarin.Android,
Xamarin.Mac y el marco de escritorio de Mono.
Herramientas de .NET e infraestructura común
Tiene acceso a un amplio conjunto de herramientas y componentes de
infraestructura que funcionan con todas las implementaciones de .NET. Se
incluyen, entre otros:
- Los lenguajes .NET y sus compiladores
- El sistema de proyectos de .NET (basado en archivos .csproj, .vbproj y .fsproj)
- MSBuild, el motor de compilación usado para compilar proyectos
- NuGet, administrador de paquetes de Microsoft para .NET
- Herramientas de organización de compilación de código abierto,
como CAKE y FAKE.
5- CLR
El Common Language Runtime o CLR ("entorno en tiempo de ejecución de
lenguaje común") es un entorno de ejecución para los códigos de
los programas que corren sobre la plataforma Microsoft .NET. El CLR es el
encargado de compilar una forma de código intermedio llamada Common
Intermediate Language (CIL, anteriormente conocido como MSIL, por Microsoft
Intermediate Language), al código de maquina nativo, mediante un compilador en
tiempo de ejecución.
No debe confundirse el CLR con una máquina virtual, ya que una vez que el
código está compilado, corre nativamente sin intervención de una capa de
abstracción sobre el hardware subyacente. Es una implementación del
estándar Common Language Infrastructure (CLI).
Los desarrolladores que usan CLR escriben el código fuente en un lenguaje
compatible con .NET, como C# o Visual Basic .NET. En tiempo de compilación, un
compilador .NET convierte el código a CIL. En tiempo de ejecución, el compilador
del CLR convierte el código CIL en código nativo para el sistema operativo.
Alternativamente, el código CIL es compilado a código nativo en un proceso
separado anterior a la ejecución. Esto acelera las posteriores ejecuciones del
software debido a que la compilación de MSIL a nativo ya no es necesaria.
A pesar de que algunas implementaciones del Common Language
Infrastructure se ejecutan en sistemas operativos que no sean Windows, el CLR
se ejecuta solo en Microsoft Windows.
La manera en que la máquina virtual se relaciona con el CLR permite a los
programadores ignorar muchos detalles específicos del microprocesador que
estará ejecutando el programa. El CLR también permite otros servicios
importantes, incluyendo los siguientes:
- Administración de la memoria
- Administración de hilos
- Manejo de excepciones
- Recolección de basura
- Seguridad.
6- La Plataforma .NET
La plataforma .NET es la propuesta de Microsoft para competir con la
plataforma Java. Mientras que Java se caracteriza por la máxima "write once, run
anywhere", la plataforma .NET de Microsoft está diseñada para que se puedan
desarrollar componentes software utilizando casi cualquier lenguaje de
programación, de forma que lo que escribamos en un lenguaje pueda utilizarse
desde cualquier otro de la manera más transparente posible (utilizando servicios
web como middleware). Esto es, en vez de estar limitados a un único lenguaje de
programación, permitimos cualquier lenguaje de programación, siempre y cuando
se adhiera a unas normas comunes establecidas para la plataforma .NET en su
conjunto. De hecho, existen compiladores de múltiples lenguajes para la
plataforma .NET: Visual Basic .NET, C#, Managed C++, Oberon, Component
Pascal, Eiffel, Smalltalk, Cobol, Fortran, Scheme, Mercury, Mondrian/Haskell, Perl,
Python, SML.NET.
La plataforma .NET apuesta por un futuro en el que las aplicaciones se
ejecutan de manera distribuida en Internet. Así, una aplicación se ejecuta en un
solo servidor y no existen múltiples copias de la misma. Además, una misma
aplicación puede "adornarse" con distintas interfaces para que, desde diferentes
dispositivos (teléfonos móviles, PDAs, portátiles, etc.) pueda accederse a la
misma. La plataforma .NET no es más que un conjunto de tecnologías para
desarrollar y utilizar componentes que nos permitan crear formularios web,
servicios web y aplicaciones Windows.
La plataforma .NET es un amplio conjunto de bibliotecas de desarrollo que
pueden ser utilizadas con el objetivo principal de acelerar el desarrollo de
software y obtener de manera automática características avanzadas de seguridad,
rendimiento, etc.
.NET ofrece un entorno gestionado de ejecución de aplicaciones, lenguajes de
programación y compiladores, y permite el desarrollo de todo tipo de
funcionalidades: desde programas de consola o servicios Windows, hasta
aplicaciones para dispositivos móviles pasando por desarrollos de escritorio o para
Internet.
7- Visual Basic .NET (VB.NET)
es un lenguaje de programación orientado a objetos que se pueden
considerar una evolución de Visual Basic implementada sobre el framework .NET.
Su introducción resultó muy controvertida, ya que debido a cambios significativos
en el lenguaje VB.NET no es retro compatible con Visual Basic, pero el manejo de
las instrucciones es similar a versiones anteriores de Visual Basic, facilitando así
el desarrollo de aplicaciones más avanzadas con herramientas modernas. Para
mantener eficacia en el desarrollo de las aplicaciones. La gran mayoría de
programadores de VB.NET utilizan el entorno de desarrollo integrado Microsoft
Visual Studio en alguna de sus versiones (desde el primer Visual Studio .NET
hasta Visual Studio .NET 2017, que es la última versión de Visual Studio para la
plataforma .NET), aunque existen otras alternativas, como SharpDevelop (que
además es libre).
Al igual que con todos los lenguajes de programación basados en .NET, los
programas escritos en VB .NET requieren el Framework .NET o Mono para
ejecutarse.
8- Historia de Visual Basic .NET
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 Estándar), que data de 1992, fue menos difundida.
Esta proveía un entorno que, aunque en modo texto, incluía un diseñador de
formularios en el que se podían arrastrar y soltar distintos controles.
La última versión que únicamente generaba aplicaciones de 16 bits fue la 3.0 y
no incluía una biblioteca detallada de componentes para toda clase de usos.
Durante la transición de los sistemas Windows 3.11 a Windows 95, en 1995: hizo
su aparición la versión 4.0 de Visual Basic; esta podía generar programas tanto de
16 como de 32 bits, a partir del mismo código fuente, aunque a costa de un gran
aumento en el tamaño de los archivos necesarios en tiempo de ejecución
("runtime"). Además, se sustituyeron los controles denominados VBX por los
nuevos OCX. Con la siguiente versión, la 5.0, se estuvo a punto de implementar
por primera vez la posibilidad de compilar a código nativo, obteniendo una mejora
de rendimiento considerable. Tanto esa como la sucesora 6.0 soportaban ciertas
características propias de los lenguajes orientados a objetos, pero carecían de
algunas importantes, tales como herencia y sobrecarga; pero, de hecho, no fue
pensado como lenguaje orientado a objetos. La versión 6.0, que puede generar
código ejecutable directo en 32 bits, todavía continúa utilizándose 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 versión del lenguaje posee
profundas diferencias en la forma de programar respecto de Visual Basic 6, pero
gran semejanza en su sintaxis básica.
Versiones de Visual basic.
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 ASCIIextendidos 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 todavía 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. 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++.
9- El IDE
Un entorno de desarrollo integrado o entorno de desarrollo interactivo, es
una aplicación informática que proporciona servicios integrales para facilitarle
al desarrollador o programador el desarrollo de software.
Normalmente, un IDE consiste de un editor de código fuente, herramientas de
construcción automáticas y un depurador. La mayoría de los IDE tienen auto-
completado inteligente de código(IntelliSense). Algunos IDE contienen
un compilador, un intérprete, o ambos, tales como NetBeans y Eclipse; otros no,
tales como SharpDevelop y Lazarus.
El límite entre un IDE y otras partes del entorno de desarrollo de software más
amplio no está bien definido. Muchas veces, a los efectos de simplificar la
construcción de la interfaz gráfica de usuario(GUI, por sus siglas en inglés) se
integran un sistema controlador de versión y varias herramientas. Muchos IDE
modernos también cuentan con un navegador de clases, un buscador de objetos y
un diagrama de jerarquía de clases, para su uso con el desarrollo de software
orientado a objetos
Componentes
- Datos
Actualmente existe un consenso internacional por el cual se clasifican los datos
espaciales que pueden manipular las IDE según la información geográfica de base
o telemática.
Datos de base
Son los datos georeferenciados fundamentales que sirven de base para
construir o referenciar cualquier otro dato fundamental o temático. Cumplen la
función de ser la información geográfica de referencia utilizada como base común
que permite mezclar e integrar datos de aplicaciones de todo tipo al ser el vínculo
o nexo de unión.
Datos temáticos
Son los datos propios de las aplicaciones específicas que explotan la
información geográfica con una finalidad concreta. Incluyen valores cualitativos y
cuantitativos que se corresponden con atributos asociados a los datos de
referencia, por ejemplo el clima, el tráfico, la contaminación, etcétera.
Metadatos
Los metadatos informan a los usuarios de las características de los datos
existentes, de modo que sean capaces de entender su origen y su propósito, para
que puedan encontrar y seleccionar cuáles les interesan y sean capaces de
explotarlos de forma eficaz. Por eso, la información incluida en los metadatos hace
referencia a la fecha de los datos, el contenido, la extensión que cubren, el
sistema de referencia espacial, el origen, el propósito, su distribución, las
restricciones legales, la frecuencia de actualización, la calidad, etcétera.
La estructura y el contenido de los metadatos se basan en la norma ISO19115,
que proporciona los procedimientos para la descripción de los conjuntos de
información geográfica, a partir de los cuales se pueden desarrollar perfiles. Con la
creación de un conjunto aceptado de definiciones y terminología se facilita la
organización y el mantenimiento de los datos, y el acceso y el intercambio entre
organizaciones, en beneficio del uso adecuado de la información.
La directiva Inspire obliga a cumplimentar un mínimo de campos obligatorios
para los conjuntos de información geográfica, los cuales definen el perfil. Inspire
clasifica los diversos conjuntos de información geográfica en temas incluidos en
sus anexos, y dicta las normativas necesarias para garantizar la interoperabilidad.
Servicios
Conjunto de funcionalidades accesibles que se ofrecen a las personas
usuarias vía internet. El organismo de estandarización más importante en este
ámbito es el Open Geospatial Consortium (OGC). Los principales servicios son los
siguientes:
Servicio de mapas: WMS (Web Map Service) y WMTS (Web Map Tile Service)
El servicio WMS, definido por el OGC, produce mapas de datos espaciales
referidos de manera dinámica a partir de información geográfica. Con este
servicio, los clientes no obtienen propiamente datos originales, sino una imagen
digital que permite la representación de estos mismos datos espaciales en la
pantalla de su ordenador.
El servicio WMTS, o servicio de mapas teselado, igual que el WMS,
proporciona una imagen digital a partir de datos geográficos, pero aumenta
considerablemente la velocidad de respuesta, ya que parte de colecciones de
teselas o porciones de imágenes ya pregeneradas, a unos intervalos de escala
definidos.
Servicio de publicación de entidades Web Feature Service (WFS)
Un servicio WFS permite consultar y recuperar datos vectoriales, y la
información alfanumérica que está ligada; permite, además, realizar consultas
tanto espaciales como alfanuméricas, y manipular la misma geometría (WFS-T).
En nuestro caso, este servicio está restringido a organizaciones con acuerdos o
convenios, con los contenidos adecuados a las necesidades de las entidades
receptoras.
Servicio de geolocalización
Por dirección postal y por cruces de calles. Interfaz de acceso OpenLS para
acceder a las bases de datos corporativas de geocodificación.
Servicio de catálogo de metadatos Catalogue Service for the Web (CSW)
Servicio de catálogo de metadatos basado en el estándar CSW (con perfil
Inspire, en este caso). Permite buscar y consultar los registros de metadatos de
los conjuntos de datos y de los servicios web de la infraestructura de datos
espaciales.
10-Ventajas de visual Basic .NET
- 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.
11-Desventajas de Visual Basic NET
Las críticas hechas en las ediciones de Visual Basic anteriores a VB.NET son
variadas; se citan entre ellas:
- 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 único formulario es muy limitada en
comparación a otras herramientas.
12- Metodologias Orientadas a Objetos
El diseño orientado a objetos (DOO) es una fase de la metodología orientada a
objetos para el desarrollo de software.
Su uso induce a desarrolladores y programadores a pensar en términos de
objetos, en vez de procedimientos, cuando planifican el código.
Un objeto agrupa datos encapsulados y procedimientos para representar una
entidad. La "interfaz del objeto", esto es, las formas de interactuar con el objeto,
también se definen en esta etapa.
Un programa orientado a objetos se caracteriza por la interacción de esos
objetos.
El diseño orientado a objetos es la disciplina que define los objetos y sus
interacciones para resolver un problema de negocio que fue identificado y
documentado durante el análisis orientado a objetos (AOO).
13-Metodologías mas significativa
Metodologia en Cascada
El nombre es debido a que el proceso en el cual se desarrollan software es lineal.
Sus fases de desarrollo son las siguientes:
- Análisis de requisitos
- Diseño de sistema
- Diseño de programa
- Modificación
- Ejecución de pruebas
- Codificación
- Mantenimiento
Sin embargo, el problema no es que tenga muchas fases si no que una vez que se
pasa un proceso no se puede volver a la fase anterior.
Método de prototipo
El método de prototipos posiblemente uno de los métodos más interesantes que
podemos encontrar resumiendo los de una mejor manera debe saber qué consiste
básicamente en la elaboración de un prototipo antes de pasar a lo que se
desarrolló es decir creamos una interfaz de desarrollo un sistema en modo prueba
y se le permite al cliente que vea la versión así si al cliente le gusta entonces
continuamos con el procedimiento o bien que vayamos tras tras y se realice un
prototipo nuevo.
Las fases del desarrollo en el método productivo son las siguientes:
- Planeación
- Modelado
- Elaboración del prototipo
- Desarrollo entrega
- Retroalimentación
- Comunicación con el cliente
- Entrega del producto final.
Modelo incremental
Se le denomina incremental, porque conforme avanza de iteración se tendra
una serie de códigos fuente listos para ser utilizados y al mismo tiempo se puede
utilizar como un prototipo.
Las fases del modelo incremental son las siguientes:
- Inicializacion
- Periodos de iteración
- Lista de control.
Modelo en espiral
El modelo de espiral hace uso de los procesos de la misma forma en que los
utiliza el modelo de cascada es decir utiliza las mismas fases sin embargo modelo
a diferencia de ese modelo antiguo el modelo en cascada se revoluciona.
Las fases del modelo en espiral
- Determinar objetivo
- Análisis de riesgo
- Desarrollar validar
- Probar
- Planificación
El modelo espiral, Una vez que cumple un ciclo se puede volver a empezar
utilizando el prototipo que se acaba de crear y se vuelve un círculo vicioso que
posiblemente no tenga final. Esa puede ser una de sus desventajas sin embargo si
se ve por el lado positivo el Software que se realice siempre podrá tener avances
actualizaciones modificaciones y todo lo que se requiere de hacer más adelante.
14-Caracteristicas principales de la programación orientadas a objetos
Existe un acuerdo acerca de qué características contempla la "orientación a
objetos". Las características siguientes son las más importantes:
Abstracción
Denota las características esenciales de un objeto, donde se capturan sus
comportamientos. Cada objeto en el sistema sirve como modelo de un "agente"
abstracto que puede realizar trabajo, informar y cambiar su estado, y
"comunicarse" con otros objetos en el sistema sin revelar "cómo" se implementan
estas características. Los procesos, las funciones o los métodos pueden también
ser abstraídos, y, cuando lo están, una variedad de técnicas son requeridas para
ampliar una abstracción. El proceso de abstracción permite seleccionar las
características relevantes dentro de un conjunto e identificar comportamientos
comunes para definir nuevos tipos de entidades en el mundo real. La abstracción
es clave en el proceso de análisis y diseño orientado a objetos, ya que mediante
ella podemos llegar a armar un conjunto de clases que permitan modelar la
realidad o el problema que se quiere atacar.
Encapsulamiento
Significa reunir todos los elementos que pueden considerarse pertenecientes a
una misma entidad, al mismo nivel de abstracción. Esto permite aumentar la
cohesión (diseño estructurado) de los componentes del sistema. Algunos autores
confunden este concepto con el principio de ocultación, principalmente porque se
suelen emplear conjuntamente.
Polimorfismo
Comportamientos diferentes, asociados a objetos distintos, pueden compartir
el mismo nombre; al llamarlos por ese nombre se utilizará el comportamiento
correspondiente al objeto que se esté usando. O, dicho de otro modo, las
referencias y las colecciones de objetos pueden contener objetos de diferentes
tipos, y la invocación de un comportamiento en una referencia producirá el
comportamiento correcto para el tipo real del objeto referenciado. Cuando esto
ocurre en "tiempo de ejecución", esta última característica se llama asignación
tardía o asignación dinámica. Algunos lenguajes proporcionan medios más
estáticos (en "tiempo de compilación") de polimorfismo, tales como las plantillas y
la sobrecarga de operadores de C++.
Herencia
Las clases no se encuentran aisladas, sino que se relacionan entre sí, formando
una jerarquía de clasificación. Los objetos heredan las propiedades y el
comportamiento de todas las clases a las que pertenecen. La herencia organiza y
facilita el polimorfismo y el encapsulamiento, permitiendo a los objetos ser
definidos y creados como tipos especializados de objetos preexistentes. Estos
pueden compartir (y extender) su comportamiento sin tener que volver a
implementarlo. Esto suele hacerse habitualmente agrupando los objetos
en clases y estas en árboles o enrejados que reflejan un comportamiento común.
Cuando un objeto hereda de más de una clase se dice que hay herencia múltiple;
siendo de alta complejidad técnica por lo cual suele recurrirse a la herencia virtual
para evitar la duplicación de datos.
Modularidad
Se denomina "modularidad" a la propiedad que permite subdividir una
aplicación en partes más pequeñas (llamadas módulos), cada una de las cuales
debe ser tan independiente como sea posible de la aplicación en sí y de las
restantes partes. Estos módulos se pueden compilar por separado, pero tienen
conexiones con otros módulos. Al igual que la encapsulación, los lenguajes
soportan la modularidad de diversas formas.
Principio de ocultación
Cada objeto está aislado del exterior, es un módulo natural, y cada tipo de
objeto expone una "interfaz" a otros objetos que especifica cómo pueden
interactuar con los objetos de la clase. El aislamiento protege a las propiedades de
un objeto contra su modificación por quien no tenga derecho a acceder a ellas;
solamente los propios métodos internos del objeto pueden acceder a su estado.
Esto asegura que otros objetos no puedan cambiar el estado interno de un objeto
de manera inesperada, eliminando efectos secundarios e interacciones
inesperadas. Algunos lenguajes relajan esto, permitiendo un acceso directo a los
datos internos del objeto de una manera controlada y limitando el grado de
abstracción. La aplicación entera se reduce a un agregado o rompecabezas de
objetos.
Recolección de basura
La recolección de basura (garbage collection) es la técnica por la cual el
entorno de objetos se encarga de destruir automáticamente, y por tanto
desvincular la memoria asociada, los objetos que hayan quedado sin ninguna
referencia a ellos. Esto significa que el programador no debe preocuparse por la
asignación o liberación de memoria, ya que el entorno la asignará al crear un
nuevo objeto y la liberará cuando nadie lo esté usando. En la mayoría de los
lenguajes híbridos que se extendieron para soportar el Paradigma de
Programación Orientada a Objetos como C++ u Object Pascal, esta característica
no existe y la memoria debe desasignarse expresamente.
15-Clase
En informática, una clase es una plantilla para la creación de objetos de
datos según un modelo predefinido. Las clases se utilizan para representar
entidades o conceptos, como los sustantivos en el lenguaje. Cada clase es un
modelo que define un conjunto de variables el estado, y métodos apropiados para
operar con dichos datos el comportamiento. Cada objeto creado a partir de la
clase se denomina instancia de la clase.
Las clases son un pilar fundamental de la programación orientada a objetos.
Permiten abstraer los datos y sus operaciones asociadas al modo de una caja
negra. Los lenguajes de programación que soportan clases difieren sutilmente en
su soporte para diversas características relacionadas con clases. La mayoría
soportan diversas formas de herencia. Muchos lenguajes también soportan
características para proporcionar encapsulación, como especificadores de acceso.
Una clase también puede tener una representación (metaobjeto) en tiempo de
ejecución, que proporciona apoyo en tiempo de ejecución para la manipulación de
los metadatos relacionados con la clase.
16- Objeto
En el paradigma de programación orientada a objetos (POO, o
bien OOP en inglés), un objeto es una unidad dentro de un programa de
computadora que consta de un estado y de un comportamiento, que a su vez
constan respectivamente de datos almacenados y de tareas realizables durante el
tiempo de ejecución. Un objeto puede ser creado instanciando una clase, como
ocurre en la programación orientada a objetos, o mediante escritura directa de
código y la replicación otros objetos, como ocurre en la programación basada en
prototipos.
Estos objetos interactúan unos con otros, en contraposición a la visión
tradicional en la cual un programa es una colección
de subrutinas(funciones o procedimientos), o simplemente una lista
de instrucciones para el computador. Cada objeto es capaz de recibir mensajes,
procesar datos y enviar mensajes a otros objetos de manera similar a un servicio.
En el mundo de la programación orientada a objetos (POO), un objeto es el
resultado de la instanciación de una clase.1 Una clase es el anteproyecto que
ofrece la funcionalidad en ella definida, pero ésta queda implementada sólo
al crear una instancia de la clase, en la forma de un objeto. Por ejemplo: dado un
plano para construir sillas (una clase de nombre clase_silla), entonces una silla
concreta, en la que podemos sentarnos, construida a partir de este plano, sería un
objeto de clase_silla. Es posible crear (construir) múltiples objetos (sillas)
utilizando la definición de la clase (plano) anterior. Los conceptos
de clase y objetos son análogos a los de tipo de datos y variable; es decir, definida
una clase podemos crear objetos de esa clase, igual que disponiendo de un
determinado tipo de dato (por ejemplo el tipo entero), podemos definir variables de
dicho tipo:
int a,b;
( 'int' es un tipo de dato y 'a' y 'b' son variables de tipo entero con las que podemos
operar)
Para utilizar la funcionalidad definida en una clase en particular (salvo en las
clases abstractas), primeramente es necesario crear un objeto de esa clase. De la
misma manera, para una persona que desea sentarse, las especificaciones para
construir una silla serán de poca utilidad; lo que se necesita es una silla real
construida a partir de esas especificaciones. Siguiendo con la analogía anterior,
también se puede decir que para hacer operaciones aritméticas, de nada sirve por
sí solo el tipo entero (int); para ello necesitamos variables (o constantes) con las
que operar.
17-Los eventos
La programación dirigida por eventos es un paradigma de programación en el
que tanto la estructura como la ejecución de los programas van determinados por
los sucesos que ocurran en el sistema, definidos por el usuario o que ellos mismos
provoquen.
Para entender la programación dirigida por eventos, podemos oponerla a lo
que no es: mientras en la programación secuencial (o estructurada) es el
programador el que define cuál va a ser el flujo del programa, en la programación
dirigida por eventos será el propio usuario o lo que sea que esté accionando el
programa el que dirija el flujo del programa. Aunque en la programación
secuencial puede haber intervención de un agente externo al programa, estas
intervenciones ocurrirán cuando el programador lo haya determinado, y no en
cualquier momento como puede ser en el caso de la programación dirigida por
eventos.
El creador de un programa dirigido por eventos debe definir los eventos que
manejarán su programa y las acciones que se realizarán al producirse cada uno
de ellos, lo que se conoce como el administrador de evento. Los eventos
soportados estarán determinados por el lenguaje de programación utilizado, por
el sistema operativo e incluso por eventos creados por el mismo programador.
En la programación dirigida por eventos, al comenzar la ejecución del
programa se llevarán a cabo las inicializaciones y demás código inicial y a
continuación el programa quedará bloqueado hasta que se produzca algún evento.
Cuando alguno de los eventos esperados por el programa tenga lugar, el
programa pasará a ejecutar el código del correspondiente administrador de
evento. Por ejemplo, si el evento consiste en que el usuario ha hecho clic en el
botón de play de un reproductor de películas, se ejecutará el código
del administrador de evento, que será el que haga que la película se muestre por
pantalla.
Un ejemplo claro lo tenemos en los sistemas de programación Lexico y Visual
Basic, en los que a cada elemento del programa (objetos, controles, etcétera) se le
asignan una serie de eventos que generará dicho elemento, como la pulsación de
un botón del ratón sobre él o el redibujado del control.
La programación dirigida por eventos es la base de lo que llamamos interfaz
de usuario, aunque puede emplearse también para desarrollar interfaces entre
componentes de Software o módulos del núcleo.
En los primeros tiempos de la computación, los programas eran secuenciales,
también llamados Batch. Un programa secuencial arranca, lee parámetros de
entrada, procesa estos parámetros, y produce un resultado, todo de manera lineal
y sin intervención del usuario mientras se ejecuta.
Con la aparición y popularización de los PC, el software empezó a ser
demandado para usos alejados de los clásicos académicos y empresariales para
los cuales era necesitado hasta entonces, y quedó patente que el paradigma
clásico de programación no podía responder a las nuevas necesidades de
interacción con el usuario que surgieron a raíz de este hecho.
Conclusion
En conclusión, las nuevas tecnologías que esta aplicando Microsoft; en
la que esta trabajando actualmente desde los últimos tres años, se ha
desarrollado con el objetivo de crear una plataforma sencilla y a la vez potente,
para distribuir el software en forma de servicios que permitan comunicación y
combinación de unos con otros de manera independiente de la plataforma,
lenguaje de programación y modelos de componentes con los que hayan sido
desarrollados.

Más contenido relacionado

La actualidad más candente (16)

1 introduccion.net
1 introduccion.net1 introduccion.net
1 introduccion.net
 
1 introduccion.net
1 introduccion.net1 introduccion.net
1 introduccion.net
 
1 introduccion.net
1 introduccion.net1 introduccion.net
1 introduccion.net
 
.Net framework
.Net framework.Net framework
.Net framework
 
Introducción a net
Introducción a netIntroducción a net
Introducción a net
 
Entendiendo el .NET Framework
Entendiendo el .NET FrameworkEntendiendo el .NET Framework
Entendiendo el .NET Framework
 
.Net Framework Introduction
.Net Framework Introduction.Net Framework Introduction
.Net Framework Introduction
 
Introduccion.net
Introduccion.net Introduccion.net
Introduccion.net
 
Programación .NET
Programación .NETProgramación .NET
Programación .NET
 
Paola
PaolaPaola
Paola
 
Paola 1001 jt
Paola 1001 jtPaola 1001 jt
Paola 1001 jt
 
Preserntacion programacion.net
Preserntacion programacion.netPreserntacion programacion.net
Preserntacion programacion.net
 
Unidad 1
Unidad 1Unidad 1
Unidad 1
 
Plataforma .Net
Plataforma .NetPlataforma .Net
Plataforma .Net
 
Dce1 introduccion microsoft.net
Dce1 introduccion microsoft.netDce1 introduccion microsoft.net
Dce1 introduccion microsoft.net
 
visual basic .net
visual basic .netvisual basic .net
visual basic .net
 

Similar a michael ascanio

Introducción a la programación visual
Introducción a la programación visualIntroducción a la programación visual
Introducción a la programación visualmiguelangelvillelli
 
itio de realizacion de un blog blogs blogspot
itio de realizacion de un blog blogs blogspotitio de realizacion de un blog blogs blogspot
itio de realizacion de un blog blogs blogspotpaolatublog
 
Introducción a net
Introducción a netIntroducción a net
Introducción a netinfobran
 
Andre.paola9 blos blospot blogger
Andre.paola9 blos blospot bloggerAndre.paola9 blos blospot blogger
Andre.paola9 blos blospot bloggerpaolatublog
 
Tecnologia microsoft .net
Tecnologia microsoft .netTecnologia microsoft .net
Tecnologia microsoft .netlilymejia1979
 
Tecnologia microsoft .net
Tecnologia microsoft .netTecnologia microsoft .net
Tecnologia microsoft .netlilymejia1979
 
Tecnologia Microsoft
Tecnologia  MicrosoftTecnologia  Microsoft
Tecnologia Microsoftbrobelo
 
Conceptos de Plataforma.Net
Conceptos de Plataforma.NetConceptos de Plataforma.Net
Conceptos de Plataforma.NetJesús R. Tineo
 
Guía de Perfiles, Formación y Competencias correspondientes a Puestos de Info...
Guía de Perfiles, Formación y Competencias correspondientes a Puestos de Info...Guía de Perfiles, Formación y Competencias correspondientes a Puestos de Info...
Guía de Perfiles, Formación y Competencias correspondientes a Puestos de Info...Marcelo Christian Marchese
 
Desarrollo aplicaciones windows c#
Desarrollo aplicaciones windows c#Desarrollo aplicaciones windows c#
Desarrollo aplicaciones windows c#Roger Campos
 
Programacion
ProgramacionProgramacion
Programaciondanielrsd
 
Curso.de.introducción.net.con.visual.basic.2010
Curso.de.introducción.net.con.visual.basic.2010Curso.de.introducción.net.con.visual.basic.2010
Curso.de.introducción.net.con.visual.basic.2010Alex Barrios
 

Similar a michael ascanio (20)

Introducción a la programación visual
Introducción a la programación visualIntroducción a la programación visual
Introducción a la programación visual
 
Paola
PaolaPaola
Paola
 
Paola
PaolaPaola
Paola
 
itio de realizacion de un blog blogs blogspot
itio de realizacion de un blog blogs blogspotitio de realizacion de un blog blogs blogspot
itio de realizacion de un blog blogs blogspot
 
Paola
PaolaPaola
Paola
 
Introducción a net
Introducción a netIntroducción a net
Introducción a net
 
Andre.paola9 blos blospot blogger
Andre.paola9 blos blospot bloggerAndre.paola9 blos blospot blogger
Andre.paola9 blos blospot blogger
 
Andre.paola9
Andre.paola9Andre.paola9
Andre.paola9
 
C_Basico_Parte_I.pptx
C_Basico_Parte_I.pptxC_Basico_Parte_I.pptx
C_Basico_Parte_I.pptx
 
Tecnologia microsoft .net
Tecnologia microsoft .netTecnologia microsoft .net
Tecnologia microsoft .net
 
Tecnologia microsoft .net
Tecnologia microsoft .netTecnologia microsoft .net
Tecnologia microsoft .net
 
Tecnologia Microsoft
Tecnologia  MicrosoftTecnologia  Microsoft
Tecnologia Microsoft
 
Conceptos de Plataforma.Net
Conceptos de Plataforma.NetConceptos de Plataforma.Net
Conceptos de Plataforma.Net
 
Guía de Perfiles, Formación y Competencias correspondientes a Puestos de Info...
Guía de Perfiles, Formación y Competencias correspondientes a Puestos de Info...Guía de Perfiles, Formación y Competencias correspondientes a Puestos de Info...
Guía de Perfiles, Formación y Competencias correspondientes a Puestos de Info...
 
Desarrollo aplicaciones windows c#
Desarrollo aplicaciones windows c#Desarrollo aplicaciones windows c#
Desarrollo aplicaciones windows c#
 
Presentación1
Presentación1Presentación1
Presentación1
 
Programacion
ProgramacionProgramacion
Programacion
 
Introduccion net
Introduccion netIntroduccion net
Introduccion net
 
Curso.de.introducción.net.con.visual.basic.2010
Curso.de.introducción.net.con.visual.basic.2010Curso.de.introducción.net.con.visual.basic.2010
Curso.de.introducción.net.con.visual.basic.2010
 
Programacion
ProgramacionProgramacion
Programacion
 

Último

MAYO 1 PROYECTO día de la madre el amor más grande
MAYO 1 PROYECTO día de la madre el amor más grandeMAYO 1 PROYECTO día de la madre el amor más grande
MAYO 1 PROYECTO día de la madre el amor más grandeMarjorie Burga
 
PPT GESTIÓN ESCOLAR 2024 Comités y Compromisos.pptx
PPT GESTIÓN ESCOLAR 2024 Comités y Compromisos.pptxPPT GESTIÓN ESCOLAR 2024 Comités y Compromisos.pptx
PPT GESTIÓN ESCOLAR 2024 Comités y Compromisos.pptxOscarEduardoSanchezC
 
GLOSAS Y PALABRAS ACTO 2 DE ABRIL 2024.docx
GLOSAS  Y PALABRAS ACTO 2 DE ABRIL 2024.docxGLOSAS  Y PALABRAS ACTO 2 DE ABRIL 2024.docx
GLOSAS Y PALABRAS ACTO 2 DE ABRIL 2024.docxAleParedes11
 
el CTE 6 DOCENTES 2 2023-2024abcdefghijoklmnñopqrstuvwxyz
el CTE 6 DOCENTES 2 2023-2024abcdefghijoklmnñopqrstuvwxyzel CTE 6 DOCENTES 2 2023-2024abcdefghijoklmnñopqrstuvwxyz
el CTE 6 DOCENTES 2 2023-2024abcdefghijoklmnñopqrstuvwxyzprofefilete
 
2024 - Expo Visibles - Visibilidad Lesbica.pdf
2024 - Expo Visibles - Visibilidad Lesbica.pdf2024 - Expo Visibles - Visibilidad Lesbica.pdf
2024 - Expo Visibles - Visibilidad Lesbica.pdfBaker Publishing Company
 
Movimientos Precursores de La Independencia en Venezuela
Movimientos Precursores de La Independencia en VenezuelaMovimientos Precursores de La Independencia en Venezuela
Movimientos Precursores de La Independencia en Venezuelacocuyelquemao
 
SINTAXIS DE LA ORACIÓN SIMPLE 2023-2024.pptx
SINTAXIS DE LA ORACIÓN SIMPLE 2023-2024.pptxSINTAXIS DE LA ORACIÓN SIMPLE 2023-2024.pptx
SINTAXIS DE LA ORACIÓN SIMPLE 2023-2024.pptxlclcarmen
 
RAIZ CUADRADA Y CUBICA PARA NIÑOS DE PRIMARIA
RAIZ CUADRADA Y CUBICA PARA NIÑOS DE PRIMARIARAIZ CUADRADA Y CUBICA PARA NIÑOS DE PRIMARIA
RAIZ CUADRADA Y CUBICA PARA NIÑOS DE PRIMARIACarlos Campaña Montenegro
 
Historia y técnica del collage en el arte
Historia y técnica del collage en el arteHistoria y técnica del collage en el arte
Historia y técnica del collage en el arteRaquel Martín Contreras
 
texto argumentativo, ejemplos y ejercicios prácticos
texto argumentativo, ejemplos y ejercicios prácticostexto argumentativo, ejemplos y ejercicios prácticos
texto argumentativo, ejemplos y ejercicios prácticosisabeltrejoros
 
DE LAS OLIMPIADAS GRIEGAS A LAS DEL MUNDO MODERNO.ppt
DE LAS OLIMPIADAS GRIEGAS A LAS DEL MUNDO MODERNO.pptDE LAS OLIMPIADAS GRIEGAS A LAS DEL MUNDO MODERNO.ppt
DE LAS OLIMPIADAS GRIEGAS A LAS DEL MUNDO MODERNO.pptELENA GALLARDO PAÚLS
 
programa dia de las madres 10 de mayo para evento
programa dia de las madres 10 de mayo  para eventoprograma dia de las madres 10 de mayo  para evento
programa dia de las madres 10 de mayo para eventoDiegoMtsS
 
Lecciones 04 Esc. Sabática. Defendamos la verdad
Lecciones 04 Esc. Sabática. Defendamos la verdadLecciones 04 Esc. Sabática. Defendamos la verdad
Lecciones 04 Esc. Sabática. Defendamos la verdadAlejandrino Halire Ccahuana
 
Planificacion Anual 2do Grado Educacion Primaria 2024 Ccesa007.pdf
Planificacion Anual 2do Grado Educacion Primaria   2024   Ccesa007.pdfPlanificacion Anual 2do Grado Educacion Primaria   2024   Ccesa007.pdf
Planificacion Anual 2do Grado Educacion Primaria 2024 Ccesa007.pdfDemetrio Ccesa Rayme
 
NARRACIONES SOBRE LA VIDA DEL GENERAL ELOY ALFARO
NARRACIONES SOBRE LA VIDA DEL GENERAL ELOY ALFARONARRACIONES SOBRE LA VIDA DEL GENERAL ELOY ALFARO
NARRACIONES SOBRE LA VIDA DEL GENERAL ELOY ALFAROJosé Luis Palma
 
Introducción:Los objetivos de Desarrollo Sostenible
Introducción:Los objetivos de Desarrollo SostenibleIntroducción:Los objetivos de Desarrollo Sostenible
Introducción:Los objetivos de Desarrollo SostenibleJonathanCovena1
 
Heinsohn Privacidad y Ciberseguridad para el sector educativo
Heinsohn Privacidad y Ciberseguridad para el sector educativoHeinsohn Privacidad y Ciberseguridad para el sector educativo
Heinsohn Privacidad y Ciberseguridad para el sector educativoFundación YOD YOD
 

Último (20)

MAYO 1 PROYECTO día de la madre el amor más grande
MAYO 1 PROYECTO día de la madre el amor más grandeMAYO 1 PROYECTO día de la madre el amor más grande
MAYO 1 PROYECTO día de la madre el amor más grande
 
PPT GESTIÓN ESCOLAR 2024 Comités y Compromisos.pptx
PPT GESTIÓN ESCOLAR 2024 Comités y Compromisos.pptxPPT GESTIÓN ESCOLAR 2024 Comités y Compromisos.pptx
PPT GESTIÓN ESCOLAR 2024 Comités y Compromisos.pptx
 
GLOSAS Y PALABRAS ACTO 2 DE ABRIL 2024.docx
GLOSAS  Y PALABRAS ACTO 2 DE ABRIL 2024.docxGLOSAS  Y PALABRAS ACTO 2 DE ABRIL 2024.docx
GLOSAS Y PALABRAS ACTO 2 DE ABRIL 2024.docx
 
el CTE 6 DOCENTES 2 2023-2024abcdefghijoklmnñopqrstuvwxyz
el CTE 6 DOCENTES 2 2023-2024abcdefghijoklmnñopqrstuvwxyzel CTE 6 DOCENTES 2 2023-2024abcdefghijoklmnñopqrstuvwxyz
el CTE 6 DOCENTES 2 2023-2024abcdefghijoklmnñopqrstuvwxyz
 
2024 - Expo Visibles - Visibilidad Lesbica.pdf
2024 - Expo Visibles - Visibilidad Lesbica.pdf2024 - Expo Visibles - Visibilidad Lesbica.pdf
2024 - Expo Visibles - Visibilidad Lesbica.pdf
 
Movimientos Precursores de La Independencia en Venezuela
Movimientos Precursores de La Independencia en VenezuelaMovimientos Precursores de La Independencia en Venezuela
Movimientos Precursores de La Independencia en Venezuela
 
SINTAXIS DE LA ORACIÓN SIMPLE 2023-2024.pptx
SINTAXIS DE LA ORACIÓN SIMPLE 2023-2024.pptxSINTAXIS DE LA ORACIÓN SIMPLE 2023-2024.pptx
SINTAXIS DE LA ORACIÓN SIMPLE 2023-2024.pptx
 
RAIZ CUADRADA Y CUBICA PARA NIÑOS DE PRIMARIA
RAIZ CUADRADA Y CUBICA PARA NIÑOS DE PRIMARIARAIZ CUADRADA Y CUBICA PARA NIÑOS DE PRIMARIA
RAIZ CUADRADA Y CUBICA PARA NIÑOS DE PRIMARIA
 
Historia y técnica del collage en el arte
Historia y técnica del collage en el arteHistoria y técnica del collage en el arte
Historia y técnica del collage en el arte
 
Unidad 4 | Teorías de las Comunicación | MCDI
Unidad 4 | Teorías de las Comunicación | MCDIUnidad 4 | Teorías de las Comunicación | MCDI
Unidad 4 | Teorías de las Comunicación | MCDI
 
texto argumentativo, ejemplos y ejercicios prácticos
texto argumentativo, ejemplos y ejercicios prácticostexto argumentativo, ejemplos y ejercicios prácticos
texto argumentativo, ejemplos y ejercicios prácticos
 
DE LAS OLIMPIADAS GRIEGAS A LAS DEL MUNDO MODERNO.ppt
DE LAS OLIMPIADAS GRIEGAS A LAS DEL MUNDO MODERNO.pptDE LAS OLIMPIADAS GRIEGAS A LAS DEL MUNDO MODERNO.ppt
DE LAS OLIMPIADAS GRIEGAS A LAS DEL MUNDO MODERNO.ppt
 
programa dia de las madres 10 de mayo para evento
programa dia de las madres 10 de mayo  para eventoprograma dia de las madres 10 de mayo  para evento
programa dia de las madres 10 de mayo para evento
 
Lecciones 04 Esc. Sabática. Defendamos la verdad
Lecciones 04 Esc. Sabática. Defendamos la verdadLecciones 04 Esc. Sabática. Defendamos la verdad
Lecciones 04 Esc. Sabática. Defendamos la verdad
 
Planificacion Anual 2do Grado Educacion Primaria 2024 Ccesa007.pdf
Planificacion Anual 2do Grado Educacion Primaria   2024   Ccesa007.pdfPlanificacion Anual 2do Grado Educacion Primaria   2024   Ccesa007.pdf
Planificacion Anual 2do Grado Educacion Primaria 2024 Ccesa007.pdf
 
NARRACIONES SOBRE LA VIDA DEL GENERAL ELOY ALFARO
NARRACIONES SOBRE LA VIDA DEL GENERAL ELOY ALFARONARRACIONES SOBRE LA VIDA DEL GENERAL ELOY ALFARO
NARRACIONES SOBRE LA VIDA DEL GENERAL ELOY ALFARO
 
Power Point: "Defendamos la verdad".pptx
Power Point: "Defendamos la verdad".pptxPower Point: "Defendamos la verdad".pptx
Power Point: "Defendamos la verdad".pptx
 
Introducción:Los objetivos de Desarrollo Sostenible
Introducción:Los objetivos de Desarrollo SostenibleIntroducción:Los objetivos de Desarrollo Sostenible
Introducción:Los objetivos de Desarrollo Sostenible
 
La Trampa De La Felicidad. Russ-Harris.pdf
La Trampa De La Felicidad. Russ-Harris.pdfLa Trampa De La Felicidad. Russ-Harris.pdf
La Trampa De La Felicidad. Russ-Harris.pdf
 
Heinsohn Privacidad y Ciberseguridad para el sector educativo
Heinsohn Privacidad y Ciberseguridad para el sector educativoHeinsohn Privacidad y Ciberseguridad para el sector educativo
Heinsohn Privacidad y Ciberseguridad para el sector educativo
 

michael ascanio

  • 1. Instituto Universitario Politecnico “Santiago Mariño” Pto Ordaz Escuela #43, Ing.Electrica. PROGRAMACION Profesor: Bachiller: Jhohnny Herrera Michael ascanio 25.559.576 Ciudad guayana 19 de Enero de 2018
  • 2. Plataforma Microsoft.NET .NET es un framework de Microsoft que hace un énfasis en la transparencia de redes, con independencia de plataforma de hardware y que permite un rápido desarrollo de aplicaciones. Basada en ella, la empresa intenta desarrollar una estrategia horizontal que integre todos sus productos, desde el sistema operativo hasta las herramientas de mercado. .NET podría considerarse una respuesta de Microsoft al creciente mercado de los negocios en entornos Web, como competencia a la plataforma Java de Oracle Corporation y a los diversos framework de desarrollo web basados en PHP 1- NET Framework .NET Framework es un entorno de ejecución administrado que proporciona diversos servicios a las aplicaciones en ejecución. Consta de dos componente principales: Common Language Runtime (CLR), que es el motor de ejecución que controla las aplicaciones en ejecución, y la biblioteca de clases de .NET Framework, que proporciona una biblioteca de código probado y reutilizable al que pueden llamar los desarrolladores desde sus propias aplicaciones. Los servicios que ofrece .NET Framework a las aplicaciones en ejecución son los siguientes: - Administracion de la memoria. En muchos lenguajes de programación, los programadores son responsables de asignar y liberar memoria y de administrar la vida útil de los objetos. En las aplicaciones de .NET Framework, CLR proporciona estos servicios en nombre de la aplicación. - Sistemas de tipos comunes. En los lenguajes de programación tradicionales, el compilador define los tipos básicos, lo que complica la interoperabilidad entre lenguajes. En .NET Framework, los tipos básicos los define el sistema de tipos de .NET Framework y son comunes a todos los lenguajes que tienen como destino .NET Framework. - Biblioteca de clases extensas. En lugar de tener que escribir cantidades extensas de código para controlar operaciones comunes de programacion de bajo nivel, los programadores
  • 3. pueden usar una biblioteca de tipo accesible en todo momento y sus miembros desde la biblioteca de clases de .NET Framework. - Marcos y tecnología de desarrollos. .NET Framework incluye bibliotecas para determinadas areas de desarrollo de aplicaciones, como ASP.NET para aplicaciones web, ADO.NET para el acceso a los datos y Windows Communication Foundation para las aplicaciones orientadas a servicios. - Interoperabilidad de Lenguajes. Los compiladores de lenguajes cuya plataforma de destino es .NET Framework emiten un código intermedio denominado Lenguaje Intermedio Común (CIL), que, a su vez, se compila en tiempo de ejecución a través de Common Language Runtime. Con esta característica, las rutinas escritas en un lenguaje están accesibles a otros lenguajes, y los programadores pueden centrarse en crear aplicaciones en su lenguaje o lenguajes preferidos. - Compatibilidad de versiones. Con raras excepciones, las aplicaciones que se desarrollan con una versión determinada de .NET Framework se pueden ejecutar sin modificaciones en una versión porterior. - Ejecución en paralelo. .NET Framework ayuda a resolver conflictos entre versiones y permite que varias versiones de Common Language Runtime coexistan en el mismo equipo. Esto significa que también pueden coexistir varis versiones de la aplicaciones, y que una aplicación se puede ejecutar en la versión de .NET Framework con la que se compilo. - Compatibilidad con multiples versiones (multi-targeting). Al usar la biblioteca de clases portable de .NET Framework, los desarrolladores pueden crear ensamblados que funciones en varias plataformas, como Windows 7, Windows 8, Windows 8.1, Windows 10, Windows Phone y Xbox 360. 2- Beneficios del NET Framework - Unifica los modelos de programación. - Simplifica aun más el desarrollo.
  • 4. - Provee un entorno de ejecución robusto y seguro. - Es independiente del lenguaje de programación. - Interoperabilidad con código existente. - Simplifica la instalación y administración de las aplicaciones. - Es extensible. 3- Lenguaje NET C# es un lenguaje elegante con seguridad de tipos y orientado a objetos, que perite a los desarrolladores crear una gran variedad de aplicaciones seguras y solidas que se ejecutan en .NET Framewok .NET. Puede usar C# para crear aplicaciones cliente de Windows, servicios web XML, componentes distribuidos, aplicaciones cliente-servidor, aplicaciones de base de datos y muchas, muchas más cosas. Visual C# proporciona un editor de código avanzado, practicos diseñadores de interfaz de usuario, un depurador integrado y muchas otras herramientas que facilitan el desarrollo de aplicaciones basadas en el lenguaje C# y .NET Framework. La sintaxis de C# es muy expresiva, pero también sencilla y fácil de aprender. Cualquier persona familiarizada con C, C++ o Java, reconocerá al instante la sintaxis de llaves de C#. Los desarrolladores que conocen cualquiera de estos lenguajes puede empezar normalmente a trabajar en C# de forma productiva en un espacio muy corto de tiempo. La sintaxis de C# simplifica muchas de las complejidades de C++ y proporciona características eficaces, como tipos de valor que aceptan valores NULL, enumeraciones, delegados, expresiones lambda y acceso directo a memoria, que no se encuentran en Java. C# admite métodos y tipo genéricos, que proporcionan una mayor seguridad de tipos y rendimiento, e iteradores, que permiten a los implementadores de clases de colecciones definir comportamientos de iteración personalizados que son fáciles de usar por el código de cliente. Las expresiones Language- Integrated Query (LINQ) convierten la consulta fuertemente tipada en una construcción de lenguaje de primera clase. 4- Componentes de NET Framework Una aplicación de .NET se desarrolla y se ejecuta en una o varias implementaciones de .NET. Las implementaciones de .NET incluyen .NET
  • 5. Framework, .NET Core y Mono. Hay una especificación de API común a todas las implementaciones de .NET que se denomina .NET Standard. .NET Standard es un conjunto de API que se implementan mediante la biblioteca de clases base de una implementación de .NET. Más formalmente, es una especificación de API de .NET que constituyen un conjunto uniforme de contratos contra los que se compila el código. Estos contratos se implementan en cada implementación de .NET. Esto permite la portabilidad entre diferentes implementaciones de .NET, de forma que el código se puede ejecutar en cualquier parte. .NET Standard es también una plataforma de destino. Si el código tiene como destino una versión de .NET Standard, se puede ejecutar en cualquier implementación de .NET que sea compatible con esa versión de .NET Standard. Para obtener más información sobre .NET Standard y cómo tenerlo como destino, vea el tema .NET Standard. Implementaciones de NET Cada implementación de .NET incluye los siguientes componentes: - Uno o varios entornos de ejecución. Ejemplos: CLR para .NET Framework, CoreCLR y CoreRT para .NET Core. - Una biblioteca de clases que implementa .NET Standard y puede implementar API adicionales. Ejemplos: biblioteca de clases base de .NET Framework, biblioteca de clases base de .NET Core. - Opcionalmente, uno o varios marcos de trabajo de la aplicación. Ejemplos: ASP.NET, Windows Forms y Windows Presentation Foundation (WPF) se incluyen en .NET Framework. - Opcionalmente, herramientas de desarrollo. Algunas herramientas de desarrollo se comparten entre varias implementaciones. Hay cuatro implementaciones principales de .NET que Microsoft desarrolla y mantiene activamente: .NET Core, .NET Framework, Mono y UWP. Núcleo de NET .NET Core es una implementación multiplataforma de .NET diseñada para controlar cargas de trabajo de servidor y en la nube a escala. Se ejecuta en Windows, macOS y Linux. Implementa .NET Standard, de forma que cualquier
  • 6. código que tenga como destino .NET Standard se puede ejecutar en .NET Core. ASP.NET Core se ejecuta en .NET Core. .NET Framework .NET Framework es la implementación de .NET original que existe desde 2002. Es el mismo .NET Framework que los desarrolladores existentes de .NET han usado siempre. Las versiones 4.5 y posteriores implementan .NET Standard, de forma que el código que tiene como destino .NET Standard se puede ejecutar en esas versiones de .NET Framework. Contiene API específicas de Windows adicionales, como API para el desarrollo de escritorio de Windows con Windows Forms y WPF. .NET Framework está optimizado para crear aplicaciones de escritorio de Windows. Mono Mono es una implementación de .NET que se usa principalmente cuando se requiere un entorno de ejecución pequeño. Es el entorno de ejecución que activa las aplicaciones de Xamarin en Android, Mac, iOS, tvOS y watchOS, y se centra principalmente en una superficie pequeña. Admite todas las versiones de .NET Standard publicadas actualmente. Históricamente, Mono implementaba la API de .NET Framework más grande y emulaba algunas de las funciones más populares en Unix. A veces, se usa para ejecutar aplicaciones de .NET que se basan en estas capacidades en Unix. Mono se suele usar con un compilador Just-In-Time, pero también incluye un compilador estático completo (compilación Ahead Of Time) que se usa en plataformas como iOS. Plataforma universal de Windows (UWP) UWP es una implementación de .NET que se usa para compilar aplicaciones Windows modernas y táctiles y software para Internet de las cosas (IoT). Se ha diseñado para unificar los diferentes tipos de dispositivos de destino, incluidos equipos, tabletas, phablets, teléfonos e incluso la consola Xbox. UWP proporciona muchos servicios, como una tienda de aplicaciones centralizada, un entorno de ejecución (AppContainer) y un conjunto de API de Windows para usar en lugar de Win32 (WinRT). Las aplicaciones pueden escribirse en C++, C#, VB.NET y JavaScript. Al usar C# y VB.NET, .NET Core proporciona las API de .NET.
  • 7. Entornos de tiempo de ejecución .NET Un entorno de ejecución es el entorno de ejecución de un programa administrado. El sistema operativo forma parte del entorno de ejecución, pero no del entorno de ejecución .NET. Estos son algunos ejemplos de los entornos de ejecución .NET: - Common Language Runtime (CLR) para .NET Framework - Core Common Language Runtime (CoreCLR) para .NET Core - .NET Native para la Plataforma universal de Windows - El entorno de ejecución Mono para Xamarin.iOS, Xamarin.Android, Xamarin.Mac y el marco de escritorio de Mono. Herramientas de .NET e infraestructura común Tiene acceso a un amplio conjunto de herramientas y componentes de infraestructura que funcionan con todas las implementaciones de .NET. Se incluyen, entre otros: - Los lenguajes .NET y sus compiladores - El sistema de proyectos de .NET (basado en archivos .csproj, .vbproj y .fsproj) - MSBuild, el motor de compilación usado para compilar proyectos - NuGet, administrador de paquetes de Microsoft para .NET - Herramientas de organización de compilación de código abierto, como CAKE y FAKE. 5- CLR El Common Language Runtime o CLR ("entorno en tiempo de ejecución de lenguaje común") es un entorno de ejecución para los códigos de los programas que corren sobre la plataforma Microsoft .NET. El CLR es el encargado de compilar una forma de código intermedio llamada Common Intermediate Language (CIL, anteriormente conocido como MSIL, por Microsoft Intermediate Language), al código de maquina nativo, mediante un compilador en tiempo de ejecución. No debe confundirse el CLR con una máquina virtual, ya que una vez que el código está compilado, corre nativamente sin intervención de una capa de abstracción sobre el hardware subyacente. Es una implementación del estándar Common Language Infrastructure (CLI).
  • 8. Los desarrolladores que usan CLR escriben el código fuente en un lenguaje compatible con .NET, como C# o Visual Basic .NET. En tiempo de compilación, un compilador .NET convierte el código a CIL. En tiempo de ejecución, el compilador del CLR convierte el código CIL en código nativo para el sistema operativo. Alternativamente, el código CIL es compilado a código nativo en un proceso separado anterior a la ejecución. Esto acelera las posteriores ejecuciones del software debido a que la compilación de MSIL a nativo ya no es necesaria. A pesar de que algunas implementaciones del Common Language Infrastructure se ejecutan en sistemas operativos que no sean Windows, el CLR se ejecuta solo en Microsoft Windows. La manera en que la máquina virtual se relaciona con el CLR permite a los programadores ignorar muchos detalles específicos del microprocesador que estará ejecutando el programa. El CLR también permite otros servicios importantes, incluyendo los siguientes: - Administración de la memoria - Administración de hilos - Manejo de excepciones - Recolección de basura - Seguridad. 6- La Plataforma .NET La plataforma .NET es la propuesta de Microsoft para competir con la plataforma Java. Mientras que Java se caracteriza por la máxima "write once, run anywhere", la plataforma .NET de Microsoft está diseñada para que se puedan desarrollar componentes software utilizando casi cualquier lenguaje de programación, de forma que lo que escribamos en un lenguaje pueda utilizarse desde cualquier otro de la manera más transparente posible (utilizando servicios web como middleware). Esto es, en vez de estar limitados a un único lenguaje de programación, permitimos cualquier lenguaje de programación, siempre y cuando se adhiera a unas normas comunes establecidas para la plataforma .NET en su conjunto. De hecho, existen compiladores de múltiples lenguajes para la plataforma .NET: Visual Basic .NET, C#, Managed C++, Oberon, Component Pascal, Eiffel, Smalltalk, Cobol, Fortran, Scheme, Mercury, Mondrian/Haskell, Perl, Python, SML.NET. La plataforma .NET apuesta por un futuro en el que las aplicaciones se ejecutan de manera distribuida en Internet. Así, una aplicación se ejecuta en un solo servidor y no existen múltiples copias de la misma. Además, una misma
  • 9. aplicación puede "adornarse" con distintas interfaces para que, desde diferentes dispositivos (teléfonos móviles, PDAs, portátiles, etc.) pueda accederse a la misma. La plataforma .NET no es más que un conjunto de tecnologías para desarrollar y utilizar componentes que nos permitan crear formularios web, servicios web y aplicaciones Windows. La plataforma .NET es un amplio conjunto de bibliotecas de desarrollo que pueden ser utilizadas con el objetivo principal de acelerar el desarrollo de software y obtener de manera automática características avanzadas de seguridad, rendimiento, etc. .NET ofrece un entorno gestionado de ejecución de aplicaciones, lenguajes de programación y compiladores, y permite el desarrollo de todo tipo de funcionalidades: desde programas de consola o servicios Windows, hasta aplicaciones para dispositivos móviles pasando por desarrollos de escritorio o para Internet. 7- Visual Basic .NET (VB.NET) es un lenguaje de programación orientado a objetos que se pueden considerar una evolución de Visual Basic implementada sobre el framework .NET. Su introducción resultó muy controvertida, ya que debido a cambios significativos en el lenguaje VB.NET no es retro compatible con Visual Basic, pero el manejo de las instrucciones es similar a versiones anteriores de Visual Basic, facilitando así el desarrollo de aplicaciones más avanzadas con herramientas modernas. Para mantener eficacia en el desarrollo de las aplicaciones. La gran mayoría de programadores de VB.NET utilizan el entorno de desarrollo integrado Microsoft Visual Studio en alguna de sus versiones (desde el primer Visual Studio .NET hasta Visual Studio .NET 2017, que es la última versión de Visual Studio para la plataforma .NET), aunque existen otras alternativas, como SharpDevelop (que además es libre). Al igual que con todos los lenguajes de programación basados en .NET, los programas escritos en VB .NET requieren el Framework .NET o Mono para ejecutarse. 8- Historia de Visual Basic .NET Todas las versiones de Visual Basic para Windows son muy conocidas, aunque la Microsoft Visual Basic 1.0 desarrollada para el sistema operativo MS-
  • 10. DOS (ediciones Profesional y Estándar), que data de 1992, fue menos difundida. Esta proveía un entorno que, aunque en modo texto, incluía un diseñador de formularios en el que se podían arrastrar y soltar distintos controles. La última versión que únicamente generaba aplicaciones de 16 bits fue la 3.0 y no incluía una biblioteca detallada de componentes para toda clase de usos. Durante la transición de los sistemas Windows 3.11 a Windows 95, en 1995: hizo su aparición la versión 4.0 de Visual Basic; esta podía generar programas tanto de 16 como de 32 bits, a partir del mismo código fuente, aunque a costa de un gran aumento en el tamaño de los archivos necesarios en tiempo de ejecución ("runtime"). Además, se sustituyeron los controles denominados VBX por los nuevos OCX. Con la siguiente versión, la 5.0, se estuvo a punto de implementar por primera vez la posibilidad de compilar a código nativo, obteniendo una mejora de rendimiento considerable. Tanto esa como la sucesora 6.0 soportaban ciertas características propias de los lenguajes orientados a objetos, pero carecían de algunas importantes, tales como herencia y sobrecarga; pero, de hecho, no fue pensado como lenguaje orientado a objetos. La versión 6.0, que puede generar código ejecutable directo en 32 bits, todavía continúa utilizándose 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 versión del lenguaje posee profundas diferencias en la forma de programar respecto de Visual Basic 6, pero gran semejanza en su sintaxis básica. Versiones de Visual basic. 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 ASCIIextendidos 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
  • 11. 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 todavía 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. 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++. 9- El IDE Un entorno de desarrollo integrado o entorno de desarrollo interactivo, es una aplicación informática que proporciona servicios integrales para facilitarle al desarrollador o programador el desarrollo de software.
  • 12. Normalmente, un IDE consiste de un editor de código fuente, herramientas de construcción automáticas y un depurador. La mayoría de los IDE tienen auto- completado inteligente de código(IntelliSense). Algunos IDE contienen un compilador, un intérprete, o ambos, tales como NetBeans y Eclipse; otros no, tales como SharpDevelop y Lazarus. El límite entre un IDE y otras partes del entorno de desarrollo de software más amplio no está bien definido. Muchas veces, a los efectos de simplificar la construcción de la interfaz gráfica de usuario(GUI, por sus siglas en inglés) se integran un sistema controlador de versión y varias herramientas. Muchos IDE modernos también cuentan con un navegador de clases, un buscador de objetos y un diagrama de jerarquía de clases, para su uso con el desarrollo de software orientado a objetos Componentes - Datos Actualmente existe un consenso internacional por el cual se clasifican los datos espaciales que pueden manipular las IDE según la información geográfica de base o telemática. Datos de base Son los datos georeferenciados fundamentales que sirven de base para construir o referenciar cualquier otro dato fundamental o temático. Cumplen la función de ser la información geográfica de referencia utilizada como base común que permite mezclar e integrar datos de aplicaciones de todo tipo al ser el vínculo o nexo de unión. Datos temáticos Son los datos propios de las aplicaciones específicas que explotan la información geográfica con una finalidad concreta. Incluyen valores cualitativos y cuantitativos que se corresponden con atributos asociados a los datos de referencia, por ejemplo el clima, el tráfico, la contaminación, etcétera. Metadatos Los metadatos informan a los usuarios de las características de los datos existentes, de modo que sean capaces de entender su origen y su propósito, para que puedan encontrar y seleccionar cuáles les interesan y sean capaces de explotarlos de forma eficaz. Por eso, la información incluida en los metadatos hace referencia a la fecha de los datos, el contenido, la extensión que cubren, el
  • 13. sistema de referencia espacial, el origen, el propósito, su distribución, las restricciones legales, la frecuencia de actualización, la calidad, etcétera. La estructura y el contenido de los metadatos se basan en la norma ISO19115, que proporciona los procedimientos para la descripción de los conjuntos de información geográfica, a partir de los cuales se pueden desarrollar perfiles. Con la creación de un conjunto aceptado de definiciones y terminología se facilita la organización y el mantenimiento de los datos, y el acceso y el intercambio entre organizaciones, en beneficio del uso adecuado de la información. La directiva Inspire obliga a cumplimentar un mínimo de campos obligatorios para los conjuntos de información geográfica, los cuales definen el perfil. Inspire clasifica los diversos conjuntos de información geográfica en temas incluidos en sus anexos, y dicta las normativas necesarias para garantizar la interoperabilidad. Servicios Conjunto de funcionalidades accesibles que se ofrecen a las personas usuarias vía internet. El organismo de estandarización más importante en este ámbito es el Open Geospatial Consortium (OGC). Los principales servicios son los siguientes: Servicio de mapas: WMS (Web Map Service) y WMTS (Web Map Tile Service) El servicio WMS, definido por el OGC, produce mapas de datos espaciales referidos de manera dinámica a partir de información geográfica. Con este servicio, los clientes no obtienen propiamente datos originales, sino una imagen digital que permite la representación de estos mismos datos espaciales en la pantalla de su ordenador. El servicio WMTS, o servicio de mapas teselado, igual que el WMS, proporciona una imagen digital a partir de datos geográficos, pero aumenta considerablemente la velocidad de respuesta, ya que parte de colecciones de teselas o porciones de imágenes ya pregeneradas, a unos intervalos de escala definidos. Servicio de publicación de entidades Web Feature Service (WFS) Un servicio WFS permite consultar y recuperar datos vectoriales, y la información alfanumérica que está ligada; permite, además, realizar consultas tanto espaciales como alfanuméricas, y manipular la misma geometría (WFS-T). En nuestro caso, este servicio está restringido a organizaciones con acuerdos o convenios, con los contenidos adecuados a las necesidades de las entidades receptoras.
  • 14. Servicio de geolocalización Por dirección postal y por cruces de calles. Interfaz de acceso OpenLS para acceder a las bases de datos corporativas de geocodificación. Servicio de catálogo de metadatos Catalogue Service for the Web (CSW) Servicio de catálogo de metadatos basado en el estándar CSW (con perfil Inspire, en este caso). Permite buscar y consultar los registros de metadatos de los conjuntos de datos y de los servicios web de la infraestructura de datos espaciales. 10-Ventajas de visual Basic .NET - 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. 11-Desventajas de Visual Basic NET Las críticas hechas en las ediciones de Visual Basic anteriores a VB.NET son variadas; se citan entre ellas: - Problema de versionado asociado con varias librerías runtime DLL, conocido como DLL Hell - Soporte pobre para programación orientada a objetos.
  • 15. - 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 único formulario es muy limitada en comparación a otras herramientas. 12- Metodologias Orientadas a Objetos El diseño orientado a objetos (DOO) es una fase de la metodología orientada a objetos para el desarrollo de software. Su uso induce a desarrolladores y programadores a pensar en términos de objetos, en vez de procedimientos, cuando planifican el código. Un objeto agrupa datos encapsulados y procedimientos para representar una entidad. La "interfaz del objeto", esto es, las formas de interactuar con el objeto, también se definen en esta etapa. Un programa orientado a objetos se caracteriza por la interacción de esos objetos. El diseño orientado a objetos es la disciplina que define los objetos y sus interacciones para resolver un problema de negocio que fue identificado y documentado durante el análisis orientado a objetos (AOO). 13-Metodologías mas significativa Metodologia en Cascada El nombre es debido a que el proceso en el cual se desarrollan software es lineal. Sus fases de desarrollo son las siguientes: - Análisis de requisitos - Diseño de sistema - Diseño de programa - Modificación - Ejecución de pruebas - Codificación - Mantenimiento
  • 16. Sin embargo, el problema no es que tenga muchas fases si no que una vez que se pasa un proceso no se puede volver a la fase anterior. Método de prototipo El método de prototipos posiblemente uno de los métodos más interesantes que podemos encontrar resumiendo los de una mejor manera debe saber qué consiste básicamente en la elaboración de un prototipo antes de pasar a lo que se desarrolló es decir creamos una interfaz de desarrollo un sistema en modo prueba y se le permite al cliente que vea la versión así si al cliente le gusta entonces continuamos con el procedimiento o bien que vayamos tras tras y se realice un prototipo nuevo. Las fases del desarrollo en el método productivo son las siguientes: - Planeación - Modelado - Elaboración del prototipo - Desarrollo entrega - Retroalimentación - Comunicación con el cliente - Entrega del producto final. Modelo incremental Se le denomina incremental, porque conforme avanza de iteración se tendra una serie de códigos fuente listos para ser utilizados y al mismo tiempo se puede utilizar como un prototipo. Las fases del modelo incremental son las siguientes: - Inicializacion - Periodos de iteración - Lista de control. Modelo en espiral El modelo de espiral hace uso de los procesos de la misma forma en que los utiliza el modelo de cascada es decir utiliza las mismas fases sin embargo modelo a diferencia de ese modelo antiguo el modelo en cascada se revoluciona. Las fases del modelo en espiral - Determinar objetivo
  • 17. - Análisis de riesgo - Desarrollar validar - Probar - Planificación El modelo espiral, Una vez que cumple un ciclo se puede volver a empezar utilizando el prototipo que se acaba de crear y se vuelve un círculo vicioso que posiblemente no tenga final. Esa puede ser una de sus desventajas sin embargo si se ve por el lado positivo el Software que se realice siempre podrá tener avances actualizaciones modificaciones y todo lo que se requiere de hacer más adelante. 14-Caracteristicas principales de la programación orientadas a objetos Existe un acuerdo acerca de qué características contempla la "orientación a objetos". Las características siguientes son las más importantes: Abstracción Denota las características esenciales de un objeto, donde se capturan sus comportamientos. Cada objeto en el sistema sirve como modelo de un "agente" abstracto que puede realizar trabajo, informar y cambiar su estado, y "comunicarse" con otros objetos en el sistema sin revelar "cómo" se implementan estas características. Los procesos, las funciones o los métodos pueden también ser abstraídos, y, cuando lo están, una variedad de técnicas son requeridas para ampliar una abstracción. El proceso de abstracción permite seleccionar las características relevantes dentro de un conjunto e identificar comportamientos comunes para definir nuevos tipos de entidades en el mundo real. La abstracción es clave en el proceso de análisis y diseño orientado a objetos, ya que mediante ella podemos llegar a armar un conjunto de clases que permitan modelar la realidad o el problema que se quiere atacar. Encapsulamiento Significa reunir todos los elementos que pueden considerarse pertenecientes a una misma entidad, al mismo nivel de abstracción. Esto permite aumentar la cohesión (diseño estructurado) de los componentes del sistema. Algunos autores confunden este concepto con el principio de ocultación, principalmente porque se suelen emplear conjuntamente. Polimorfismo
  • 18. Comportamientos diferentes, asociados a objetos distintos, pueden compartir el mismo nombre; al llamarlos por ese nombre se utilizará el comportamiento correspondiente al objeto que se esté usando. O, dicho de otro modo, las referencias y las colecciones de objetos pueden contener objetos de diferentes tipos, y la invocación de un comportamiento en una referencia producirá el comportamiento correcto para el tipo real del objeto referenciado. Cuando esto ocurre en "tiempo de ejecución", esta última característica se llama asignación tardía o asignación dinámica. Algunos lenguajes proporcionan medios más estáticos (en "tiempo de compilación") de polimorfismo, tales como las plantillas y la sobrecarga de operadores de C++. Herencia Las clases no se encuentran aisladas, sino que se relacionan entre sí, formando una jerarquía de clasificación. Los objetos heredan las propiedades y el comportamiento de todas las clases a las que pertenecen. La herencia organiza y facilita el polimorfismo y el encapsulamiento, permitiendo a los objetos ser definidos y creados como tipos especializados de objetos preexistentes. Estos pueden compartir (y extender) su comportamiento sin tener que volver a implementarlo. Esto suele hacerse habitualmente agrupando los objetos en clases y estas en árboles o enrejados que reflejan un comportamiento común. Cuando un objeto hereda de más de una clase se dice que hay herencia múltiple; siendo de alta complejidad técnica por lo cual suele recurrirse a la herencia virtual para evitar la duplicación de datos. Modularidad Se denomina "modularidad" a la propiedad que permite subdividir una aplicación en partes más pequeñas (llamadas módulos), cada una de las cuales debe ser tan independiente como sea posible de la aplicación en sí y de las restantes partes. Estos módulos se pueden compilar por separado, pero tienen conexiones con otros módulos. Al igual que la encapsulación, los lenguajes soportan la modularidad de diversas formas. Principio de ocultación Cada objeto está aislado del exterior, es un módulo natural, y cada tipo de objeto expone una "interfaz" a otros objetos que especifica cómo pueden interactuar con los objetos de la clase. El aislamiento protege a las propiedades de un objeto contra su modificación por quien no tenga derecho a acceder a ellas; solamente los propios métodos internos del objeto pueden acceder a su estado. Esto asegura que otros objetos no puedan cambiar el estado interno de un objeto de manera inesperada, eliminando efectos secundarios e interacciones
  • 19. inesperadas. Algunos lenguajes relajan esto, permitiendo un acceso directo a los datos internos del objeto de una manera controlada y limitando el grado de abstracción. La aplicación entera se reduce a un agregado o rompecabezas de objetos. Recolección de basura La recolección de basura (garbage collection) es la técnica por la cual el entorno de objetos se encarga de destruir automáticamente, y por tanto desvincular la memoria asociada, los objetos que hayan quedado sin ninguna referencia a ellos. Esto significa que el programador no debe preocuparse por la asignación o liberación de memoria, ya que el entorno la asignará al crear un nuevo objeto y la liberará cuando nadie lo esté usando. En la mayoría de los lenguajes híbridos que se extendieron para soportar el Paradigma de Programación Orientada a Objetos como C++ u Object Pascal, esta característica no existe y la memoria debe desasignarse expresamente. 15-Clase En informática, una clase es una plantilla para la creación de objetos de datos según un modelo predefinido. Las clases se utilizan para representar entidades o conceptos, como los sustantivos en el lenguaje. Cada clase es un modelo que define un conjunto de variables el estado, y métodos apropiados para operar con dichos datos el comportamiento. Cada objeto creado a partir de la clase se denomina instancia de la clase. Las clases son un pilar fundamental de la programación orientada a objetos. Permiten abstraer los datos y sus operaciones asociadas al modo de una caja negra. Los lenguajes de programación que soportan clases difieren sutilmente en su soporte para diversas características relacionadas con clases. La mayoría soportan diversas formas de herencia. Muchos lenguajes también soportan características para proporcionar encapsulación, como especificadores de acceso. Una clase también puede tener una representación (metaobjeto) en tiempo de ejecución, que proporciona apoyo en tiempo de ejecución para la manipulación de los metadatos relacionados con la clase.
  • 20. 16- Objeto En el paradigma de programación orientada a objetos (POO, o bien OOP en inglés), un objeto es una unidad dentro de un programa de computadora que consta de un estado y de un comportamiento, que a su vez constan respectivamente de datos almacenados y de tareas realizables durante el tiempo de ejecución. Un objeto puede ser creado instanciando una clase, como ocurre en la programación orientada a objetos, o mediante escritura directa de código y la replicación otros objetos, como ocurre en la programación basada en prototipos. Estos objetos interactúan unos con otros, en contraposición a la visión tradicional en la cual un programa es una colección de subrutinas(funciones o procedimientos), o simplemente una lista de instrucciones para el computador. Cada objeto es capaz de recibir mensajes, procesar datos y enviar mensajes a otros objetos de manera similar a un servicio. En el mundo de la programación orientada a objetos (POO), un objeto es el resultado de la instanciación de una clase.1 Una clase es el anteproyecto que ofrece la funcionalidad en ella definida, pero ésta queda implementada sólo al crear una instancia de la clase, en la forma de un objeto. Por ejemplo: dado un plano para construir sillas (una clase de nombre clase_silla), entonces una silla concreta, en la que podemos sentarnos, construida a partir de este plano, sería un objeto de clase_silla. Es posible crear (construir) múltiples objetos (sillas) utilizando la definición de la clase (plano) anterior. Los conceptos de clase y objetos son análogos a los de tipo de datos y variable; es decir, definida una clase podemos crear objetos de esa clase, igual que disponiendo de un determinado tipo de dato (por ejemplo el tipo entero), podemos definir variables de dicho tipo: int a,b; ( 'int' es un tipo de dato y 'a' y 'b' son variables de tipo entero con las que podemos operar) Para utilizar la funcionalidad definida en una clase en particular (salvo en las clases abstractas), primeramente es necesario crear un objeto de esa clase. De la misma manera, para una persona que desea sentarse, las especificaciones para construir una silla serán de poca utilidad; lo que se necesita es una silla real construida a partir de esas especificaciones. Siguiendo con la analogía anterior, también se puede decir que para hacer operaciones aritméticas, de nada sirve por sí solo el tipo entero (int); para ello necesitamos variables (o constantes) con las que operar.
  • 21. 17-Los eventos La programación dirigida por eventos es un paradigma de programación en el que tanto la estructura como la ejecución de los programas van determinados por los sucesos que ocurran en el sistema, definidos por el usuario o que ellos mismos provoquen. Para entender la programación dirigida por eventos, podemos oponerla a lo que no es: mientras en la programación secuencial (o estructurada) es el programador el que define cuál va a ser el flujo del programa, en la programación dirigida por eventos será el propio usuario o lo que sea que esté accionando el programa el que dirija el flujo del programa. Aunque en la programación secuencial puede haber intervención de un agente externo al programa, estas intervenciones ocurrirán cuando el programador lo haya determinado, y no en cualquier momento como puede ser en el caso de la programación dirigida por eventos. El creador de un programa dirigido por eventos debe definir los eventos que manejarán su programa y las acciones que se realizarán al producirse cada uno de ellos, lo que se conoce como el administrador de evento. Los eventos soportados estarán determinados por el lenguaje de programación utilizado, por el sistema operativo e incluso por eventos creados por el mismo programador. En la programación dirigida por eventos, al comenzar la ejecución del programa se llevarán a cabo las inicializaciones y demás código inicial y a continuación el programa quedará bloqueado hasta que se produzca algún evento. Cuando alguno de los eventos esperados por el programa tenga lugar, el programa pasará a ejecutar el código del correspondiente administrador de evento. Por ejemplo, si el evento consiste en que el usuario ha hecho clic en el botón de play de un reproductor de películas, se ejecutará el código del administrador de evento, que será el que haga que la película se muestre por pantalla. Un ejemplo claro lo tenemos en los sistemas de programación Lexico y Visual Basic, en los que a cada elemento del programa (objetos, controles, etcétera) se le asignan una serie de eventos que generará dicho elemento, como la pulsación de un botón del ratón sobre él o el redibujado del control. La programación dirigida por eventos es la base de lo que llamamos interfaz de usuario, aunque puede emplearse también para desarrollar interfaces entre componentes de Software o módulos del núcleo.
  • 22. En los primeros tiempos de la computación, los programas eran secuenciales, también llamados Batch. Un programa secuencial arranca, lee parámetros de entrada, procesa estos parámetros, y produce un resultado, todo de manera lineal y sin intervención del usuario mientras se ejecuta. Con la aparición y popularización de los PC, el software empezó a ser demandado para usos alejados de los clásicos académicos y empresariales para los cuales era necesitado hasta entonces, y quedó patente que el paradigma clásico de programación no podía responder a las nuevas necesidades de interacción con el usuario que surgieron a raíz de este hecho.
  • 23. Conclusion En conclusión, las nuevas tecnologías que esta aplicando Microsoft; en la que esta trabajando actualmente desde los últimos tres años, se ha desarrollado con el objetivo de crear una plataforma sencilla y a la vez potente, para distribuir el software en forma de servicios que permitan comunicación y combinación de unos con otros de manera independiente de la plataforma, lenguaje de programación y modelos de componentes con los que hayan sido desarrollados.