Está en la página 1de 31

SERVICIO NACIONAL DE APRENDIZAJE, SENA

FORMACIÓN PEDAGÓGICA DE DOCENTES


MÓDULO DE FORMACIÓN EVALUACIÓN DEL
APRENDIZAJE
GUIAS DE APRENDIZAJE

Sistema de Gestión de la Calidad

TECNICO EN PROGRAMACION DE SOFTWARE

Su nombre y código
Ricardo Esteban Valenzuela Jiménez ID: 92032400169
Andrés Felipe Mora Useche ID: 92070851808

Bogotá, Mayo 2009


SERVICIO NACIONAL DE APRENDIZAJE, SENA
FORMACIÓN PEDAGÓGICA DE DOCENTES
MÓDULO DE FORMACIÓN EVALUACIÓN DEL
APRENDIZAJE
GUIAS DE APRENDIZAJE

GUÍA DE APRENDIZAJE Nº 4

EJE DE PROGRAMACIÓN DE SOFTWARE

INTRODUCCION A VISUAL STUDIO 2008

Esta guía tiene el objetivo de presentar una introducción a la plataforma de desarrollo


Microsoft .NET, describiendo sus principios básicos de funcionamiento, su arquitectura
de componentes y sus principales bibliotecas reutilizables.

Conteste debajo de cada pregunta:

PARTE I

1. Que es MS Visual Studio


2. que es Microsoft .NET
3. componentes principales de la plataforma .NET
4. como funciona el componente Runtime o Maquina virtual en .Net
5. cual es el conjunto de lenguajes de alto nivel que tiene Ms .NET
6. cual es la plataforma de desarrollo anterior a .NET de Microsoft
7. características principales de la plataforma MS .NET
8. en que paradigma de programación esta basado .Net?
9. cuales son los tipos de aplicaciones que me permite desarrollar .NET
10. objetivos de .Net
11. Que es el .Net Framework?
12. variantes principales del .Net Framework
13. cual es el mínimo componente de la plataforma .NET
14. que variante se instala en los IDE de aplicaciones
15. que variante se instala en dispositivos móviles
16. que significa SDK
17. como se llama el entorno de ejecución de aplicaciones del Framework de .NET
18. como se llama el conjunto de bibliotecas de funcionalidad reutilizable del
Framework de .NET
19. que contiene la BCL del MS .Net Framework
20. como se llama el conjunto de clases que me permite interactuar con repositorios
21. como se llama la tecnología que me permite construir aplicaciones con interfaz de
usuario Web en el Ms.NET Framework
SERVICIO NACIONAL DE APRENDIZAJE, SENA
FORMACIÓN PEDAGÓGICA DE DOCENTES
MÓDULO DE FORMACIÓN EVALUACIÓN DEL
APRENDIZAJE
GUIAS DE APRENDIZAJE

22. como se llama la tecnología que me permite crear aplicaciones con interfaz de
usuario basada en formularios y ventanas Windows y en donde se ejecuta
23. que es una API de programación

Recuerden contestar brevemente pero concreto.


La guía la almacenan en sus respectivos portafolios virtuales en el Eje de
programación de software.

SOLUCION
1.
El visual estudio fue creado para Windows para facilitarles a los programadores la
creación de programas en distintos tipos de lenguajes los lenguajes que maneja el visual
estudio son: Visual C++, Visual C#, Visual J#, ASP.NET y Visual Basic .NET aunque
actual mente hay muchos otros tipos de lenguajes estos son como los mas usados .

2.
Es un proyecto de Microsoft para crear una nueva plataforma de desarrollo de software con
énfasis en transparencia de redes, con independencia de plataforma de hardware y que
permita un rápido desarrollo de aplicaciones. Basado en ella, la empresa intenta desarrollar
una estrategia horizontal que integre todos sus productos, desde el sistema operativo hasta
las herramientas de mercado.
podría considerarse una respuesta de Microsoft al creciente mercado de los negocios en
entornos Web, como competencia a la plataforma Java de Sun Microsystems y a los
diversos framework de desarrollo web basados en PHP. Su propuesta es ofrecer una manera
rápida y económica, a la vez que segura y robusta, de desarrollar aplicaciones –o como la
misma plataforma las denomina, soluciones– permitiendo una integración más rápida y ágil
entre empresas y un acceso más simple y universal a todo tipo de información desde
cualquier tipo de dispositivo.

3.

Los componentes de la plataforma .NET son:


Smart Clients (Clientes Inteligentes): Son dispositivos muy variados. Lo que los hace
'Smart' o inteligentes es su capacidad para hacer uso de servicios Web.
SERVICIO NACIONAL DE APRENDIZAJE, SENA
FORMACIÓN PEDAGÓGICA DE DOCENTES
MÓDULO DE FORMACIÓN EVALUACIÓN DEL
APRENDIZAJE
GUIAS DE APRENDIZAJE

Sus características son:

• Permiten acceder a la información en el formato apropiado, en cualquier momento y


lugar.
• Hacen uso de Servicios Web.
• Optimizan de distintas maneras la forma en que la información es presentada y
organizada. Por ejemplo: Pueden convertir texto en sonido en un celular o reconocer
la escritura en un TabletPC.
• Proveen de una interfase sencilla y natural para que el usuario acceda a la
información. Pueden utilizar la identidad del usuario, su perfil y datos para adaptar
la información que es presentada.
• Pueden reconocer la presencia de otros dispositivos e intercambiar información.
• Pueden adaptarse a las características de la red donde están. Por ejemplo la
velocidad de transmisión.
• Tienen capacidad de procesamiento propio, y distribuyen el procesamiento en la red
haciendo uso de los servicios Web.

Ejemplo de estos son:

• PocketPC (PC de bolsillo)


• SmartPhone (Teléfono Inteligente)
• HandHelds
• TabletPC
• XBox (Consola de juegos de Microsoft

4.

El Common Language Runtime o CLR (Lenguaje común en tiempo de ejecución) es el


componente de máquina virtual de la plataforma .Net de Microsoft. Es la implementación
del estándar Common Language Infrastructure (CLI) que define un ambiente de ejecución
para los codigos de los programas. El CLR ejecuta una forma de código intermedio
SERVICIO NACIONAL DE APRENDIZAJE, SENA
FORMACIÓN PEDAGÓGICA DE DOCENTES
MÓDULO DE FORMACIÓN EVALUACIÓN DEL
APRENDIZAJE
GUIAS DE APRENDIZAJE

(bytecode) llamada Common Intermediate Language (CIL, anteriormente conocido como


MSIL -- Microsoft Intermediate Language), la implementación de Microsoft del CLI.

Los desarrolladores que usan CLR escriben el código en un lenguaje como C# o VB.Net.
En tiempo de compilación, un compilador.NET convierte el código a MSIL (Microsoft
Intermediate Language). En tiempo de ejecución, el compilador en tiempo de ejecución
(Just-in-time compiler) del CLR convierte el código MSIL en código nativo para el sistema
operativo. Alternativamente, el código MSIL 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 no Windows, el CLR se ejecuta solo en sistemas operativos de
Microsoft Windows.

5.
Pascal, Fortran, Cobol, C, C++, Plataforma Java, Plataforma .Net C#, Visual Basic .NET

Pascal: es un lenguaje de programación desarrollado por el profesor suizo Niklaus Wirth a


finales de los años 60. Su objetivo era crear un lenguaje que facilitara el aprendizaje de la
programación a sus alumnos. Sin embargo con el tiempo su utilización excedió el ámbito
académico para convertirse en una herramienta para la creación de aplicaciones de todo
tipo.

Pascal se caracteriza por ser un lenguaje de programación estructurado fuertemente


tipificado. Esto implica que:

1. El código esta dividido en porciones fácilmente legibles llamadas funciones o


procedimientos. De esta forma Pascal facilita la utilización de la programación
estructurada en oposición al antiguo estilo de programación monolítica.
2. El tipo de dato de todas las variables debe ser declarado previamente para que su
uso quede habilitado.

El nombre de Pascal fue escogido en honor al matemático Blaise Pascal.


SERVICIO NACIONAL DE APRENDIZAJE, SENA
FORMACIÓN PEDAGÓGICA DE DOCENTES
MÓDULO DE FORMACIÓN EVALUACIÓN DEL
APRENDIZAJE
GUIAS DE APRENDIZAJE

FORTRAN

Fortran Este lenguaje de estilo procedural fue el primero de alto nivel, desarrollado por
IBM en 1957 para el equipo IBM 704. Está fuertemente orientado al cálculo y por ende es
uno de los de mayor eficiencia en la ejecución.

La definición estándar del lenguaje se estableció en 1966.

Algunas otras versiones subsiguientes fueron:

• FORTRAN IV
• FORTRAN 80
• FORTRAN 77
• FORTRAN 90

Fortran ha sido ampliamente adoptado por la comunidad científica para escribir


aplicaciones de cálculos intensivos. La inclusión en el lenguaje de la aritmética de números
complejos amplió la gama de aplicaciones para las cuales el lenguaje se adapta
especialmente; muchas técnicas de compilación de lenguajes se han implementado para
mejorar la calidad del código generado por los compiladores de Fortran.

COBOL

El lenguaje COBOL (acrónimo de COmmon Business -Oriented Language, Lenguaje


Común Orientado a Negocios) fue creado en el año 1960 con el objetivo de crear un
lenguaje de programación universal que pudiera ser usado en cualquier ordenador, ya que
en los años 1960 existían numerosos modelos de ordenadores incompatibles entre sí, y que
estuviera orientado principalmente a los negocios, es decir, a la llamada informática de
gestión.
SERVICIO NACIONAL DE APRENDIZAJE, SENA
FORMACIÓN PEDAGÓGICA DE DOCENTES
MÓDULO DE FORMACIÓN EVALUACIÓN DEL
APRENDIZAJE
GUIAS DE APRENDIZAJE

COBOL fue dotado de unas excelentes capacidades de autodocumentación, una buena


gestión de archivos y una excelente gestión de los tipos de datos para la época, a través de
la conocida sentencia PICTURE para la definición de campos estructurados. Para evitar
errores de redondeo en los cálculos que se producen al convertir los números a binario y
que son inaceptables en temas comerciales, COBOL puede emplear y emplea por defecto
números en base diez. Para facilitar la creación de programas en COBOL, la sintaxis del
mismo fue creada de forma que fuese parecida al idioma inglés, evitando el uso de
símbolos que se impusieron en lenguajes de programación posteriores.

Pese a esto, a comienzos de los ochenta se fue quedando anticuado respecto a los nuevos
paradigmas de programación y a los lenguajes que los implementaban. En la revisión de
1985 se solucionó, incorporando a COBOL variables locales, recursividad, reserva de
memoria dinámica y programación estructurada.

En la revisión de 2002 se le añadió orientación a objetos, aunque desde la revisión de 1974


se podía crear un entorno de trabajo similar a la orientación a objetos, y un método de
generación de pantallas gráficas estandarizado.

Antes de la inclusión de las nuevas características en el estándar oficial, muchos fabricantes


de compiladores las añadían de forma no estándar. En la actualidad este proceso se está
viendo con la integración de COBOL con Internet. Existen varios compiladores que
permiten emplear COBOL como lenguaje de scripting y de servicio web. También existen
compiladores que permiten generar código COBOL para la plataforma .NET y EJB.

C es un lenguaje de programación creado en 1972 por Kenneth L. Thompson y Dennis M.


Ritchie en los Laboratorios Bell como evolución del anterior lenguaje B, a su vez basado en
BCPL.

Al igual que B, es un lenguaje orientado a la implementación de Sistemas Operativos,


concretamente Unix . C es apreciado por la eficiencia del código que produce y es el
SERVICIO NACIONAL DE APRENDIZAJE, SENA
FORMACIÓN PEDAGÓGICA DE DOCENTES
MÓDULO DE FORMACIÓN EVALUACIÓN DEL
APRENDIZAJE
GUIAS DE APRENDIZAJE

lenguaje de programación más popular para crear software de sistemas, aunque también se
utiliza para crear aplicaciones.

Se trata de un lenguaje débilmente tipificado de medio nivel pero con muchas


características de bajo nivel. Dispone de las estructuras típicas de los lenguajes de alto nivel
pero, a su vez, dispone de construcciones del lenguaje que permiten un control a muy bajo
nivel. Los compiladores suelen ofrecer extensiones al lenguaje que posibilitan mezclar
código en ensamblador con código C o acceder directamente a memoria o dispositivos
periféricos.

La primera estandarización del lenguaje C fue en ANSI, con el estándar X3.159-1989. El


lenguaje que define este estándar fue conocido vulgarmente como ANSI C. Posteriormente,
en 1990, fue ratificado como estándar ISO (ISO/IEC 9899:1990). La adopción de este
estándar es muy amplia por lo que, si los programas creados lo siguen, el código es portátil
entre plataformas y/o arquitecturas. En la práctica, los programadores suelen usar
elementos no-portátiles dependientes del compilador o del sistema operativo.

Tiene las siguientes características de importancia

• Un núcleo del lenguaje simple, con funcionalidades añadidas importantes, como


funciones matemáticas y de manejo de ficheros, proporcionadas por bibliotecas.
• Es un lenguaje muy flexible que permite programar con múltiples estilos. Uno de
los más empleados es el estructurado no llevado al extremo (permitiendo ciertas
licencias rupturistas).
• Un sistema de tipos que impide operaciones sin sentido.
• Usa un lenguaje de preprocesado, el preprocesador de C, para tareas como definir
macros e incluir múltiples ficheros de código fuente.
• Acceso a memoria de bajo nivel mediante el uso de punteros.
• Interrupciones al procesador con uniones.
• Un conjunto reducido de palabras clave.
• Por defecto, el paso de parámetros a una función se realiza por valor. El paso por
referencia se consigue pasando explícitamente a las funciones las direcciones de
memoria de dichos parámetros.
• Punteros a funciones y variables estáticas, que permiten una forma rudimentaria de
encapsulado y polimorfismo.
SERVICIO NACIONAL DE APRENDIZAJE, SENA
FORMACIÓN PEDAGÓGICA DE DOCENTES
MÓDULO DE FORMACIÓN EVALUACIÓN DEL
APRENDIZAJE
GUIAS DE APRENDIZAJE

• Tipos de datos agregados (struct) que permiten que datos relacionados (como un
empleado, que tiene un id, un nombre y un salario) se combinen y se manipulen
como un todo (en una única variable "empleado").

C++

C++ es un lenguaje de programación diseñado a mediados de los años 1980 por Bjarne
Stroustrup. La intención de su creación fue el extender al exitoso lenguaje de programación
C con mecanismos que permitan la manipulación de objetos. En ese sentido, desde el punto
de vista de los lenguajes orientados a objetos, el C++ es un lenguaje híbrido.

Posteriormente se añadieron facilidades de programación genérica, que se sumó a los otros


dos paradigmas que ya estaban admitidos (programación estructurada y la programación
orientada a objetos). Por esto se suele decir que el C++ es un lenguaje multiparadigma.

Actualmente existe un estándar, denominado ISO C++, al que se han adherido la mayoría
de los fabricantes de compiladores más modernos. Existen también algunos intérpretes,
tales como ROOT (enlace externo).

Una particularidad del C++ es la posibilidad de redefinir los operadores (sobrecarga de


operadores), y de poder crear nuevos tipos que se comporten como tipos fundamentales.

C++ permite trabajar tanto a alto como a bajo nivel.

El nombre C++ fue propuesto por Rick Mascitti en el año 1983, cuando el lenguaje fue
utilizado por primera vez fuera de un laboratorio científico. Antes se había usado el nombre
"C con clases". En C++, la expresión "C++" significa "incremento de C" y se refiere a que
C++ es una extensión de C.

PLATAFORMA JAVA

La plataforma Java es el nombre de un entorno o plataforma de computación originaria de


Sun Microsystems, capaz de ejecutar aplicaciones desarrolladas usando el Lenguaje de
SERVICIO NACIONAL DE APRENDIZAJE, SENA
FORMACIÓN PEDAGÓGICA DE DOCENTES
MÓDULO DE FORMACIÓN EVALUACIÓN DEL
APRENDIZAJE
GUIAS DE APRENDIZAJE

programación Java u otros lenguajes que compilen a bytecode y un conjunto de


herramientas de desarrollo. En este caso, la plataforma no es un hardware específico o un
sistema operativo, sino más bien una máquina virtual encargada de la ejecución de
aplicaciones, y un conjunto de librerías estándar que ofrecen funcionalidad común.

La plataforma es así llamada la Plataforma Java (antes conocida como Plataforma Java, e
incluye:

• Plataforma Java, Edición Estándar (Java Platform, Standard Edition), o Java SE


(antes J2SE)
• Plataforma Java, Edición Empresa (Java Platform, Enterprise Edition), o Java EE
(antes J2EE)
• Plataforma Java, Edición Micro (Java Platform, Micro Edition), o Java ME (antes
J2ME)

Desde 2006, la versión actual de la Plataforma Java Standard Edition se le conoce como
Java SE 6 como versión externa, y 1.6 como versión interna. Sin embargo, se prefiere el
término versión 6. Una visión general de la multitud de tecnologías que componen la
Plataforma Java puede encontrarse en la página de documentación del JDK.

PLATAFORMA.NET#

Es el encargado de proveer lo que se llama código administrado, es decir, un entorno que


provee servicios automáticos al código que se ejecuta. Los servicios son variados:

• Cargador de clases: permite cargar en memoria las clases.


• Compilador MSIL a nativo: transforma código intermedio de alto nivel
independiente del hardware que lo ejecuta a código de máquina propio del
dispositivo que lo ejecuta.
• Administrador de código: coordina toda la operación de los distintos subsistemas
del Common Language Runtime.
• Recolector de basura: elimina de memoria objetos no utilizados.
• Motor de seguridad: administra la seguridad del código que se ejecuta.
• Motor de depuración: permite hacer un seguimiento de la ejecución del código aun
cuando se utilicen lenguajes distintos.
SERVICIO NACIONAL DE APRENDIZAJE, SENA
FORMACIÓN PEDAGÓGICA DE DOCENTES
MÓDULO DE FORMACIÓN EVALUACIÓN DEL
APRENDIZAJE
GUIAS DE APRENDIZAJE

• Verificador de tipos: controla que las variables de la aplicación usen el área de


memoria que tienen asignado.
• Administrador de excepciones: maneja los errores que se producen durante la
ejecución del código.
• Soporte de multiproceso (hilos): permite ejecutar código en forma paralela.
• Empaquetador de COM: coordina la comunicación con los componentes COM para
que puedan ser usados por el .NET Framework.
• Soporte de la Biblioteca de Clases Base: interfaz con las clases base del .NET
Framework. Esto quiere decir que existen tipos de estructuras como es la de java y
la .NET

VISUAL BASIC.NET

Visual Basic .NET (VB.NET) es un lenguaje de programación orientado a objetos que se


puede 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 compatible hacia atrás con Visual Basic, cosa que causó gran
división en la comunidad de desarrolladores de Visual Basic.

La gran mayoría de programadores de VB.NET utilizan el entorno de programación


Microsoft Visual Studio .Net en alguna de sus versiones (Visual Studio .NET, Visual Studio
.NET 2003 o Visual Studio .NET 2005), aunque existen otras alternativas, como
SharpDevelop (que además es libre).

Como pasa con todos los lenguajes de programación basados en .NET, los programas
escritos en VB.NET requieren el Framework .NET para ejecutarse.

Para esta versión se añadieron varias novedades, incluyendo:

• Soporte para LINQ (Language Integrated Query)* Expresiones Lambda


• Literales XML

6.

La plataforma .NET, una comparación recurrente cuando se habla de .NET, ya sea hablando
de la implementación de Microsoft, o de Mono. Muchos desarrolladores preguntan la
SERVICIO NACIONAL DE APRENDIZAJE, SENA
FORMACIÓN PEDAGÓGICA DE DOCENTES
MÓDULO DE FORMACIÓN EVALUACIÓN DEL
APRENDIZAJE
GUIAS DE APRENDIZAJE

necesidad de definir una nueva tecnología o incluso un nuevo lenguaje, cuando en


definitiva Java realiza cosas similares.

A continuación se intenta explicar estas diferencias pero partiendo de la base de que ambas
tecnologías son compatibles. .NET es una tecnología más en el mundo de desarrollo, que
ofrece nuevas posibilidades a los desarrolladores, pero cuyo objetivo no es eliminar a Java,
lo cual por otra parte, sería imposible debido a la gran cantidad de código escrito para esta
plataforma.

Es importante tener en cuenta que .NET no es algo 100% novedoso, es básicamente una
reunión de tecnologías muy interesantes, e integradas de forma eficaz, eficiente y elegante.
La mayoría de estas tecnologías existían ya, al igual que también existían desde hacía
mucho tiempo las tecnologías implementadas en Java.

Plataformas

|| || Java || .NET || || Java funciona sobre un gran número de plataformas || .NET funciona en
Windows con la implementación de .NET de Microsoft y en Linux, FreeBSD y Windows
con la implementación de Mono, aunque se prevé dar soporte a más plataformas || || J2EE ||
J2EE y .NET ofrecen básicamente las mismas funcionalidades, aunque de diferente forma.
|| || Java no permite la interoperabilidad de múltiples lenguajes. Es posible compilar a
bytecode desde múltiples lenguajes, pero no es posible alcanzar el nivel de interacción que
se da en .NET || .NET permite desarrollar en diferentes lenguajes y que el código generado
sea completamente utilizable desde otras aplicaciones en otros lenguajes. || || Java no
permite la intercomunicación entre aplicaciones de una forma tan sencilla como en .NET ||
.NET utiliza SOAP (XML+http) para comunicar aplicaciones. Esto permite comunicar
aplicaciones hechas en cualquier tecnología o plataforma con otras. || ||
SERVICIO NACIONAL DE APRENDIZAJE, SENA
FORMACIÓN PEDAGÓGICA DE DOCENTES
MÓDULO DE FORMACIÓN EVALUACIÓN DEL
APRENDIZAJE
GUIAS DE APRENDIZAJE

7
Los componentes de la plataforma .NET son:

Smart Clients (Clientes Inteligentes): Son dispositivos muy variados. Lo que los hace
'Smart' o inteligentes es su capacidad para hacer uso de servicios Web.

Sus características son:

• Permiten acceder a la información en el formato apropiado, en cualquier momento y


lugar.
• Hacen uso de Servicios Web.
• Optimizan de distintas maneras la forma en que la información es presentada y
organizada. Por ejemplo: Pueden convertir texto en sonido en un celular o reconocer
la escritura en un TabletPC.
• Proveen de una interfase sencilla y natural para que el usuario acceda a la
información. Pueden utilizar la identidad del usuario, su perfil y datos para adaptar
la información que es presentada.
• Pueden reconocer la presencia de otros dispositivos e intercambiar información.
• Pueden adaptarse a las características de la red donde están. Por ejemplo la
velocidad de transmisión.
• Tienen capacidad de procesamiento propio, y distribuyen el procesamiento en la red
haciendo uso de los servicios Web.

Ejemplo de estos son:

• PocketPC (PC de bolsillo)


• SmartPhone (Teléfono Inteligente)
• HandHelds
• TabletPC
• XBox (Consola de juegos de Microsoft)
SERVICIO NACIONAL DE APRENDIZAJE, SENA
FORMACIÓN PEDAGÓGICA DE DOCENTES
MÓDULO DE FORMACIÓN EVALUACIÓN DEL
APRENDIZAJE
GUIAS DE APRENDIZAJE

PCs: Las computadoras personales.

NoteBooks: Las computadoras portátiles.

Y muchos otros dispositivos en desarrollo. Además:

Servidores: Proveen de la infraestructura para implementar el modelo de computación


distribuida en Internet. Son sistemas operativos y de aplicación.

Sistemas Operativos: Windows 2000: Server, Advance Server y Datacenter, Windows


Server 2003: Standard, Enterprise, Datacenter y Web Server.

Servidores .NET Corporativos:

• Microsoft Application Center 2000: Para instalar y administrar aplicaciones Web


altamente disponibles y escalables.
• Microsoft BizTalk Server 2000 : Para construir procesos de negocios basados en
XML a través de distintas aplicaciones y organizaciones.
• Microsoft Commerce Server 2000: Para construir rápidamente soluciones de e-
commerce escalables.
• Microsoft Content Management Server 2001: Para administrar contenido para sitios
Web de e-bussines dinámicos.
• Microsoft Exchange Server 2000: Para permitir enviar mensajes y trabajar en forma
colaborativa en cualquier momento y lugar.
• Microsoft Host Integration Server 2000: Para acceder a datos y aplicaciones en
mainframes.
• Microsoft SQL Server 2000: Para almacenar, recuperar y analizar datos en formato
XML.
• Microsoft SharePoint Portal Server 2001: Para encontrar, compartir y publicar
información de negocios.
• Microsoft Internet Security and Acceleration Server 2000: Para conectividad a
Internet rápida y segura.
SERVICIO NACIONAL DE APRENDIZAJE, SENA
FORMACIÓN PEDAGÓGICA DE DOCENTES
MÓDULO DE FORMACIÓN EVALUACIÓN DEL
APRENDIZAJE
GUIAS DE APRENDIZAJE

• Microsoft Mobile Información 2001 Server: Para soportar aplicaciones en


dispositivos móviles como por ejemplo celulares.

8.

• Un entorno de ejecución de aplicaciones, también llamado “Runtime”, que es un


componente de software cuya función es la de ejecutar las aplicaciones .NET e interactuar
con el sistema operativo ofreciendo sus servicios y recursos.

• Un conjunto de bibliotecas de funcionalidades y controles reutilizables, con una enorme


cantidad de componentes ya programados listos para ser consumidos por otras aplicaciones.

• Un conjunto de lenguajes de programación de alto nivel, junto con sus compiladores y


linkers, que permitirán el desarrollo de aplicaciones sobre la plataforma .NET.

• Un conjunto de utilitarios y herramientas de desarrollo para simplificar las tareas más


comunes del proceso de desarrollo de aplicaciones

Se dice que es una plataforma de ejecución intermedia, ya que las aplicaciones .NET no son
ejecutadas directamente por el sistema operativo, como ocurre en el modelo tradicional de
desarrollo. En su lugar, las aplicaciones .NET están diseñadas para ser ejecutadas contra un
componente de software llamado Entorno de Ejecución (muchas veces también conocido
como “Runtime”, o , “Máquina Virtual”). Este componente es el encargado de manejar el
ciclo de vida de cualquier aplicación .NET, iniciándola, deteniéndola, interactuando con el
Sistema Operativo y proveyéndole servicios y recursos en tiempo de ejecución.

La plataforma Microsoft .NET está completamente basada en el paradigma de Orientación


a Objetos ademas que es multi-lenguaje: esto quiere decir que para poder codificar
aplicaciones sobre esta plataforma no necesitamos aprender un único lenguaje específico de
programación de alto nivel, sino que se puede elegir de una amplia lista de opciones.NET
es una plataforma que permite el desarrollo de aplicaciones empresariales de misión crítica,
entendiéndose por esto que permite la creación y ejecución de aplicaciones de porte
corporativo que sean críticas para la operación de tipos variados de organizaciones. Si bien
también es muy atrayente para desarrolladores no profesionales, estudiantes y entusiastas,
su verdadero poder radica en su capacidad para soportar las aplicaciones más grandes y
complejas.
SERVICIO NACIONAL DE APRENDIZAJE, SENA
FORMACIÓN PEDAGÓGICA DE DOCENTES
MÓDULO DE FORMACIÓN EVALUACIÓN DEL
APRENDIZAJE
GUIAS DE APRENDIZAJE

.Net fue diseñado de manera tal de poder proveer un único modelo de programación,
uniforme y consistente, para todo tipo de aplicaciones (ya sean de formularios Windows, de
consola, aplicaciones Web, aplicaciones móviles, etc.) y para cualquier dispositivo de
hardware (PC’s, Pocket PC’s, Teléfonos Celulares Inteligentes, también llamados
“SmartPhones”, Tablet PC’s, etc.). Esto representa un gran cambio con respecto a las
plataformas anteriores a .NET, las cuales tenían modelos de programación, bibliotecas,
lenguajes y herramientas distintas según el tipo de aplicación y el dispositivo de hardware.

.NET no sólo se integra fácilmente con aplicaciones desarrolladas en otras plataformas


Microsoft, sino también con aquellas desarrolladas en otras plataformas de software,
sistemas operativos o lenguajes de programación. Para esto hace un uso extensivo de
numerosos estándares globales que son de uso extensivo en la industria, y acerca de los
cuales iremos aprendiendo a lo largo del curso. Algunos ejemplos de estos estándares son
XML, HTTP, SOAP, WSDL y UDDI.

• .NET no es un sistema operativo, como si lo es Microsoft Windows en sus distintas


versiones.

• .NET no es un Lenguaje de Programación: si bien la plataforma Microsoft .NET incluye


lenguajes de programación de aplicaciones, su concepto es más amplio y va más allá de
éstos.

• .NET no es un Entorno de Desarrollo: si bien la plataforma Microsoft .NET incluye


entornos de desarrollo integrados (IDEs), su concepto es más amplio y va más allá de éstos.

9.
Desarrollo de aplicaciones en .NET Compact Framework

En .NET Compact Framework, puede desarrollar aplicaciones utilizando la mayoría de las


tecnologías disponibles para el entorno .NET Framework completo, y puede utilizar las
funciones y características avanzadas exclusivamente para los dispositivos.

En esta sección
Generar aplicaciones y tareas básicas

Describe cómo instalar y configurar .NET Compact Framework, compilar programas y


realizar otras tareas de generación y configuración.
SERVICIO NACIONAL DE APRENDIZAJE, SENA
FORMACIÓN PEDAGÓGICA DE DOCENTES
MÓDULO DE FORMACIÓN EVALUACIÓN DEL
APRENDIZAJE
GUIAS DE APRENDIZAJE

Acceso a datos y compatibilidad con XML


Describe las capacidades de acceso a datos y de enlace XML que proporciona
.NET Compact Framework.
Codificación y localización en .NET Compact Framework

Contiene consideraciones acerca de la adaptación de aplicaciones de dispositivos.


Genéricos en .NET Compact Framework

Muestra las diferencias de los genéricos en .NET Compact Framework comparadas con el
entorno .NET Framework completo.
Gráficos y dibujo

Proporciona consideraciones y técnicas de programación importantes para desarrollar


aplicaciones gráficas sólidas y eficaces.
Interoperabilidad en .NET Compact Framework

Describe las funciones para interoperar con código nativo utilizando .NET Compact
Framework.
Message Queue Server en .NET Compact Framework

Describe la compatibilidad con el componente de mensajería MSMQ en .NET Compact


Framework.
Programación de Direct3D Mobile

Presenta la programación de Direct3D administrada para dispositivos. Se requiere el


software Microsoft Windows Mobile version 5.0 para Pocket PC o Smartphone.
Funciones de red y conectividad

Contiene consideraciones acerca del acceso a Internet, la utilización de servicios Web y la


programación de sockets. Describe las características de conexiones infrarrojas disponibles
en .NET Compact Framework.
Rendimiento y diagnósticos
SERVICIO NACIONAL DE APRENDIZAJE, SENA
FORMACIÓN PEDAGÓGICA DE DOCENTES
MÓDULO DE FORMACIÓN EVALUACIÓN DEL
APRENDIZAJE
GUIAS DE APRENDIZAJE

Describe cómo utilizar los contadores y el registro del rendimiento para mejorar el
rendimiento y los temas de solución de errores.
Desarrollo de Pocket PC y .NET Compact Framework

Describe las características y controles para desarrollar aplicaciones para Pocket PC.
Desarrollo de Smartphone y .NET Compact Framework

Describe las características para desarrollar aplicaciones para Smartphone


Subprocesamiento en .NET Compact Framework

Describe las consideraciones acerca de la utilización de subprocesos en .NET Compact


Framework.
Desarrollo de Windows CE

Describe las aplicaciones en dispositivos para Windows CE que no son Pocket PC o


Smartphone.
Controles de formularios Windows Forms en .NET Compact Framework

Describe los controles disponibles para las aplicaciones .NET Compact Framework, cómo
crear controles personalizados y comportamientos únicos de los controles en aplicaciones
de dispositivos.

10.

Descripción y objetivos
Descripción del proyecto Net PDF

Desarrollo de entorno remoto para la verificación de archivos PDF para imprenta.

La automatización de flujos de trabajo requiere una elevada fiabilidad sobre los contenidos
y el estado del archivo digital, ya que, debido a la desaparición de pasos intermedios, se
hace difícil la revisión del trabajo e identificación de posibles errores en fases previas, lo
que en ocasiones puede dar lugar a que no se detecte el error hasta que el trabajo no esté en
la fase de producción. Por lo que, un flujo enteramente digital requiere el desarrollo e
SERVICIO NACIONAL DE APRENDIZAJE, SENA
FORMACIÓN PEDAGÓGICA DE DOCENTES
MÓDULO DE FORMACIÓN EVALUACIÓN DEL
APRENDIZAJE
GUIAS DE APRENDIZAJE

incorporación de herramientas que comprueben y validen que el archivo generado cumple


con las especificaciones necesarias para su reproducción.

Por tanto, la finalidad última del proyecto Net PDF es conseguir la automatización de la
producción y la mejora del rendimiento de las empresas de preimpresión e impresión
mediante la comunicación de datos y la preparación de trabajos en formato PDF;
facilitando la interrelación entre agentes, activos e información implicados en la cadena de
producción, reduciendo costes en preimpresión e identificando y eliminando ineficiencias
en el proceso productivo mediante la incorporación y certificación de un estándar abierto en
el proceso gráfico.

El proyecto Net PDF ha recibido financiación del Ministerio de Industria, Turismo y


Comercio, dentro del programa de apoyo a la innovación de las pequeñas y medianas
empresas (InnoEmpresa) 2007-2013.

Objetivos del proyecto

El presente proyecto pone en marcha una plataforma en red para validación y sellado de
archivos pdf para imprenta con la finalidad de automatizar el proceso productivo y
conseguir los siguientes objetivos:

• Proporcionar una metodología de trabajo que garantice la fiabilidad y la calidad en la


creación y preflight de archivos PDF.

• Conseguir una mayor automatización del proceso productivo a través del fomento del uso
correcto de los documentos PDF.

• Crear un método válido de verificación y certificado de uso de PDFs para cualquiera de


los distintos procesos productivos de Artes Gráficas.

• Normalización del trabajo con PDFs de las empresas participantes y de su red de


clientes/colaboradores.

11.
El Framework de .Net es una infraestructura sobre la que se reúne todo un conjunto de
lenguajes y servicios que simplifican enormemente el desarrollo de aplicaciones. Mediante
esta herramienta se ofrece un entorno de ejecución altamente distribuido, que permite crear
aplicaciones robustas y escalables. Los principales componentes de este entorno son:
SERVICIO NACIONAL DE APRENDIZAJE, SENA
FORMACIÓN PEDAGÓGICA DE DOCENTES
MÓDULO DE FORMACIÓN EVALUACIÓN DEL
APRENDIZAJE
GUIAS DE APRENDIZAJE

• Lenguajes de compilación
• Biblioteca de clases de .Net
• CLR (Common Language Runtime)

Actualmente, el Framework de .Net es una plataforma no incluida en los diferentes


sistemas operativos distribuidos por Microsoft, por lo que es necesaria su instalación previa
a la ejecución de programas creados mediante .Net. El Framework se puede descargar
gratuitamente desde la web oficial de Microsoft (ver link de descarga en los recursos del
final).

.Net Framework soporta múltiples lenguajes de programación y aunque cada lenguaje tiene
sus características propias, es posible desarrollar cualquier tipo de aplicación con cualquiera
de estos lenguajes. Existen más de 30 lenguajes adaptados a .Net, desde los más conocidos
como C# (C Sharp), Visual Basic o C++ hasta otros lenguajes menos conocidos como Perl
o Cobol.
SERVICIO NACIONAL DE APRENDIZAJE, SENA
FORMACIÓN PEDAGÓGICA DE DOCENTES
MÓDULO DE FORMACIÓN EVALUACIÓN DEL
APRENDIZAJE
GUIAS DE APRENDIZAJE

12.

El .NET Framework (traducido como “Marco de Trabajo”) es el componente fundamental


de la plataforma Microsoft .NET, necesario tanto para poder desarrollar aplicaciones como
para poder ejecutarlas luego en entornos de prueba o producción.

El .NET framework tiene tres variantes principales, todas descargables gratuitamente desde
Internet

• .NET Framework Redistributable Package: este es el mínimo componente de la


plataforma .NET que se necesita para poder ejecutar aplicaciones. Normalmente ésta es la
variante que se instala en los entornos productivos, una vez que el desarrollo y las pruebas
de la aplicación han finalizado.

13.

Componentes [editar]

Los principales componentes del marco de trabajo son:

• El conjunto de lenguajes de programación


• La Biblioteca de Clases Base o BCL
• El Entorno Común de Ejecución para Lenguajes o CLR por sus siglas en inglés.

Debido a la publicación de la norma para la infraestructura común de lenguajes (CLI por


sus siglas en inglés), el desarrollo de lenguajes se facilita, por lo que el marco de trabajo
.NET soporta ya más de 20 lenguajes de programación y es posible desarrollar cualquiera
de los tipos de aplicaciones soportados en la plataforma con cualquiera de ellos, lo que
elimina las diferencias que existían entre lo que era posible hacer con uno u otro lenguaje.

Algunos de los lenguajes desarrollados para el marco de trabajo .NET son: C#, Visual
Basic, Delphi (Object Pascal), C++, J#, Perl, Python, Fortran, Cobol y PowerBuilder.
SERVICIO NACIONAL DE APRENDIZAJE, SENA
FORMACIÓN PEDAGÓGICA DE DOCENTES
MÓDULO DE FORMACIÓN EVALUACIÓN DEL
APRENDIZAJE
GUIAS DE APRENDIZAJE

14.
Aunque los periféricos estándares que incorpora un PC son apropiados para
algunas aplicaciones, existen otras muchas en las que es necesario instalar
nuevo hardware. Las ranuras de expansión (ISA o PCI) permiten conectar nuevos
periféricos pero, lamentablemente, su número no es muy generoso. Esto
constituye una limitación, ya que en muchas ocasiones es interesante instalar
más dispositivos que los permitidos por dichas ranuras. Por ello, el PC ofrece
otras vías de expansión, como son los puertos serie y paralelo. Estos puertos
aumentan la capacidad de expansión, pero se caracterizan por su lentitud, lo
cual los hace inapropiados para conectar ciertos tipos de dispositivos.
Todo esto ha hecho que nazcan nuevas interfaces para la conexión de hardware
en el PC. En este artículo se abordarán dos de las interfaces más conocidas:
IDE (ampliamente utilizada para la conexión de discos duros y unidades CDROM)
y SCSI (caracterizada por su gran rendimiento y capacidad de expansión).

La interfaz IDE
El término IDE (Integrated Drive Electronics) procede del año 1986, cuando las
firmas Compaq Corporation, Western Digital y Control Data Corporation trabajaban
juntas en un proyecto común. Se trataba de integrar un chip controlador
fabricado por Western Digital en una unidad de disco duro. En 1988, se formó
un grupo industrial denominado CAM (Common Access Method o método de
acceso común), el cual desarrolló un estándar que cubría la integración de dispositivos
controladores en unidades de almacenamiento, y su conexión al PC.
Dicho estándar fue aprobado en 1991, bajo el nombre de ATA (AT Attachment).
Aunque hoy en día se utiliza el término IDE para referirse a ATA (y en el presente
capítulo así se hará), es importante remarcar la diferencia que existe
realmente entre ambos acrónimos. Mientras que IDE se refiere a las unidades
de almacenamiento que integran el circuito controlador asociado, ATA hace
referencia a la interfaz para interconectar los dispositivos IDE y el PC.
Tal y como acabamos de introducir, en una unidad de almacenamiento IDE el
dispositivo controlador correspondiente se encuentra integrado en la propia
unidad. Esto hace que sean necesarios menos componentes, y que la integración
entre unidad y controlador sea óptima, y realizada por el fabricante. Como
se puede intuir, esto proporciona muchas ventajas.
En primer lugar, la conexión al bus del sistema es realmente simple. Dicha conexión
se suele realizar de forma directa, mediante conectores soldados sobre
SERVICIO NACIONAL DE APRENDIZAJE, SENA
FORMACIÓN PEDAGÓGICA DE DOCENTES
MÓDULO DE FORMACIÓN EVALUACIÓN DEL
APRENDIZAJE
GUIAS DE APRENDIZAJE

la placa base. Esto evita utilizar ranuras de expansión, dejándolas libres para
otros dispositivos.
Capítulo 7 LAS INTERFACES IDE Y SCSI Página 50
Además, el coste de producción de una placa base con conectores IDE es menor
que el que implica disponer de una tarjeta controladora.
Otro factor importante es la reducción del número de cables necesarios, ya que
la unión entre dispositivo y controlador ya viene implementada en el propio dispositivo.
El controlador -al estar integrado- se halla conectado al dispositivo
mediante conexiones de pequeña longitud, consiguiendo que la resistencia a
interferencias sea óptima, y en general mejores prestaciones.
Figura 1. Cable IDE
Por otro lado, el fabricante no se debe preocupar por respetar ninguna interfaz
estándar entre el controlador y el dispositivo, detalle que flexibiliza el diseño y
permite, así, obtener mejores productos. En otras palabras, cada unidad y su
controlador forman un producto independiente.
Todos estos detalles justifican que la mayoría de placas base actuales incorporen
conectores IDE.
Conectores y cables IDE
Un cable IDE estándar presenta tres conectores: uno de ellos se une a un conector
IDE de la placa base, y los dos restantes (cercanos entre ellos) permiten
conectar dos dispositivos IDE (ver Figura 1). Hay que anotar que existen otras
posibles configuraciones, pero la expuesta aquí es la más común. El cable es
de tipo cinta y plano, con 40 hilos colocados en paralelo y aislados entre sí. El
hilo correspondiente a una de las extremidades del cable se halla coloreado en
rojo. Dicha parte del cable se conecta al pin número 1 del conector de la placa
base, y también de los dispositivos. El cable no debe superar los 45 centímetros
de longitud.
Figura 2. Conector IDE (40 pines)
Capítulo 7 LAS INTERFACES IDE Y SCSI Página 51
Cada conector IDE presenta 40 puntos de conexión (normalmente denominados
"pines"). El aspecto de un conector IDE se presenta en la Figura 2.
Si ya se han ocupado todos los conectores IDE disponibles, y se desea instalar
más dispositivos, existe una posible solución: instalar una tarjeta controladora
IDE en una ranura de expansión del PC. Ésta proporciona dos conectores IDE
adicionales, lo que permite instalar 4 dispositivos más.
Las últimas versiones del bus IDE, trabajando a 66 MB/s o más (ATA 66, ATA
100...) precisan de un cable especial con 80 hilos en lugar de cuarenta, aunque
mantiene el conector de 40 contactos. Los cuarenta cables extra están conectados
a masa y permiten asegurar la integridad de los datos a altas velocidades.
Configuración de Jumpers
Muchos dispositivos IDE soportan tres tipos de configuraciones: dispositivo
simple, maestro o esclavo. Estos modos se suelen seleccionar mediante una
SERVICIO NACIONAL DE APRENDIZAJE, SENA
FORMACIÓN PEDAGÓGICA DE DOCENTES
MÓDULO DE FORMACIÓN EVALUACIÓN DEL
APRENDIZAJE
GUIAS DE APRENDIZAJE

pequeña serie de conmutadores o jumpers, que suelen aparecer en la parte


trasera del dispositivo. El modo simple indica que la unidad está sola en el sistema,
y por tanto responde a todos los comandos IDE recibidos. Cuando hay
dos unidades en el mismo cable IDE, una se configura como maestro y la otra
como esclavo. La unidad maestra responderá únicamente a los comandos IDE
maestro, y la unidad esclava hará lo mismo con los comandos esclavo.
La interfaz EIDE
La interfaz IDE original gozaba de unas prestaciones que debían ser mejoradas.
Como solución, apareció la interfaz ATA-2 , conocida como EIDE (Enhanced
IDE). Fue propuesta por las firmas Western Digital y Seagate Technologies,
y es la versión de IDE que se encuentra hoy en día en el mundo del PC.
Las principales mejoras respecto a IDE son las siguientes:
Mayor capacidad de almacenamiento. Los avances en las BIOS permitieron
trabajar con unidades de más de 504 MB.
Mayor número de discos duros. Es posible incorporar más de dos unidades de
disco.
Mayor velocidad. La técnica de entrada/ salida programada (PIO, Programmed
Input/Output) permite seleccionar entre varios modos de trabajo, que consiguen
alcanzar relaciones de transferencia de hasta 16,6 MB por segundo.
ATAPI (ATA Paeket Interface). Permite conectar otros tipos de unidades de
almacenamiento a un conector IDE (por ejemplo, unidades de CD-ROM).
Soporte DMA. La interfaz ATA-2 soporta DMA (Direct Memory Access, acceso
directo a memoria). Como su nombre indica, DMA permite intercambiar información
entre las unidades de almacenamiento y la memoria, sin pasar por la
CPU. La CPU no debe preocuparse de las transferencias (quedando libre para
otras tareas) y, por tanto, la velocidad de transferencia es claramente mayor y
el rendimiento del PC mejora significativamente.

15.
Después del despliegue de iniciativas de movilidad en la empresa, se hace necesaria la
implantación de un modelo de gestión de los diferentes dispositivos móviles con los que se
han equipado a las fuerzas de ventas o de servicio. En el presente artículo, se mostrarán los
principales elementos de gestión y cómo son tratados con las aplicaciones que podemos
encontrar en el mercado.

Cuando una compañía se encuentra en su estadio menos avanzado en cuanto a movilidad,


sus preocupaciones tienen que ver con la tecnología, y sus principales interrogantes son si
eso del GPRS funciona de verdad y si sus fuerzas de ventas se sentirán cómodas
gestionando pedidos con un teléfono móvil o una PDA.
Una vez pasado este primer estadio caracterizado por la ignorancia y la pura incredulidad, y
SERVICIO NACIONAL DE APRENDIZAJE, SENA
FORMACIÓN PEDAGÓGICA DE DOCENTES
MÓDULO DE FORMACIÓN EVALUACIÓN DEL
APRENDIZAJE
GUIAS DE APRENDIZAJE

habiendo ya desarrollado una iniciativa en serio, en el siguiente estadio, surgen


preocupaciones en el seno de los departamentos de tecnología, relacionadas con la gestión
de los dispositivos móviles. Porque si difícil resultaba hasta entonces gestionar el parque de
ordenadores personales, y eso que éstos no son móviles, la característica de movilidad
introduce una complejidad adicional.
Para Gartner Group, la gestión de los dispositivos móviles puede ser un tema, puramente,
de reducción de costes, del coste total de propiedad o TCO que llega a tener un dispositivo
móvil y que se dispara muy por encima del coste de adquisición del propio dispositivo. En
concreto, Gartner estima que el TCO puede suponer 3.000 dólares al año frente a los 250
dólares, precio de salida en España del último modelo de PDA del fabricante Dell.
Pero con independencia del elevado TCO del dispositivo móvil, establecer un modelo de
gestión de dispositivos móviles se justifica como una iniciativa más de gestión, como si de
otro dispositivo se tratase. Y así, cualquier compañía que se encuentre en el suficiente
estado de madurez tecnológica que permite el desarrollo de iniciativas de movilidad,
disponen de plataformas de gestión como HP OpenView, IBM Tivoli o Microsoft Systems
Management Server. De esta forma, establecer un modelo de gestión de dispositivos
móviles, es, simplemente, una extensión más del modelo ya asentado y maduro de gestión
global de dispositivos.
La cuestión es: ¿qué tipo de aplicaciones existen en el mercado, especializadas en la gestión
de dispositivos móviles? ¿las mismas que hasta entonces empleábamos para la gestión de
los dispositivos fijos? Y lo más importante, ¿qué permiten gestionar? Pero antes de entrar a
hablar de aplicaciones y características de las mismas, intentemos tratar en genérico las
necesidades de gestión que surgen cuando nos encontramos ante un colectivo de 300
comerciales equipados con PDAs.

16.
Definición de SDK
(Software Development Kit - Kit de desarrollo de software o devkit). Un SDK es un
conjunto de herramientas y programas de desarrollo que permite al programador crear
aplicaciones para un determinado paquete de software, estructura de software, plataforma
de hardware, sistema de computadora, consulta de videojuego, sistema operativo o similar.

Los SDK incluyen herramientas de debugger, códigos de ejemplos, documentaciones, y


muchas veces un entorno de programación IDE.

Algunos SDK son gratuitos y otros son comerciales.


SERVICIO NACIONAL DE APRENDIZAJE, SENA
FORMACIÓN PEDAGÓGICA DE DOCENTES
MÓDULO DE FORMACIÓN EVALUACIÓN DEL
APRENDIZAJE
GUIAS DE APRENDIZAJE

Algunos ejemplos de SDK populares:

• DirectX SDK de Microsoft

• Java SDK de Sun Microsystems

• Net Yaroze de Sony Computer Entertainment

• Flex de Adobe

• The Eclipse SDK de The Eclipse Foundation

17.
Cómo funciona el .NET Framework.

Cuando usted crea una aplicación Windows en algún lenguaje compatible con la plataforma
.NET, puede utilizar cualquiera de los servicios que la biblioteca de clases de .NET provee.
Por ejemplo: Puede usar clases para hacer ventanas que tengan distintos tipos de controles.
Cuando compila la aplicación, se crea un código intermedio llamado MSIL. Este código es
independiente de la plataforma de hardware. Una vez compilado, el ejecutor de lenguaje
común administra la ejecución de la aplicación.

Figura IX.6: "Funcionamiento del .NET Framework."


SERVICIO NACIONAL DE APRENDIZAJE, SENA
FORMACIÓN PEDAGÓGICA DE DOCENTES
MÓDULO DE FORMACIÓN EVALUACIÓN DEL
APRENDIZAJE
GUIAS DE APRENDIZAJE

Uno de los subsistemas del Common Language Runtime se llama compilación JIT, que
transforma el código intermedio MSIL al código de máquina en el sistema donde la
aplicación se va a ejecutar. Esta compilación a lenguaje de máquina lo hace en el momento
de ejecución del código. Cuando un dispositivo de cliente, por ejemplo, un celular "Smart
phone", ejecuta una aplicación hecha con Visual Studio .NET, se ejecuta en el código de
máquina del sistema del cliente. La aplicación sin embargo puede interactuar con otras
aplicaciones .NET y servicios independientemente del lenguaje en que fueron
desarrollados.

18.

NET Framework incluye un conjunto de norma las bibliotecas de clases. La biblioteca de


clases se organiza en una jerarquía de nombres. La mayor parte de la API se construyó en
parte de cualquiera de System.* o Microsoft.* nombres. Estas bibliotecas de clases aplicar
un gran número de funciones comunes, como el archivo de la lectura y la escritura,
representación gráfica, la interacción de bases de datos, XML y la manipulación del
documento, entre otros. . NET las bibliotecas de clases están disponibles para todos. NET.
. NET Framework biblioteca de clases se divide en dos partes: la Base de biblioteca de
clases y el Marco de biblioteca de clases.

La biblioteca de clases base (BCL), incluye un pequeño subconjunto de toda la biblioteca


de clases y es el conjunto de clases que sirven de base API del Common Language
[10]
Runtime. Las clases en mscorlib.dll y algunas de las clases en System.dll y
System.core.dll se consideran una parte de la BCL. El BCL clases están disponibles en.
NET Framework, así como su alternativa incluyendo implementaciones. NET Compact
Framework, Microsoft Silverlight y Mono.

El Marco de biblioteca de clases (FCL) es un superconjunto de la BCL clases, y se refiere a


toda la biblioteca de clases que se incluye con. NET Framework. Incluye un conjunto
ampliado de las bibliotecas, incluyendo WinForms, ADO.NET, ASP.NET, Lenguaje de
consulta integrada, Windows Presentation Foundation, Windows Communication
Foundation, entre otros. El FCL es mucho mayor en el ámbito de aplicación de las
SERVICIO NACIONAL DE APRENDIZAJE, SENA
FORMACIÓN PEDAGÓGICA DE DOCENTES
MÓDULO DE FORMACIÓN EVALUACIÓN DEL
APRENDIZAJE
GUIAS DE APRENDIZAJE

bibliotecas estándar de lenguajes como C + +, y comparable en el ámbito de aplicación a


las bibliotecas estándar de Java.

19.

La biblioteca de clases base (BCL) es un estándar de la biblioteca a disposición de todos los


idiomas utilizando el. NET Framework. . NET incluye el BCL para encapsular un gran
número de funciones comunes, como el archivo de la lectura y la escritura, representación
gráfica, base de datos de la interacción, y en XML documento, la manipulación, lo que hace
que el programador de la tarea más fácil. Es mucho más grande en el ámbito de aplicación
de las bibliotecas estándar para la mayoría de otros idiomas, incluyendo C + +, y sería
comparable en su alcance a las bibliotecas estándar de Java. El BCL es a veces
incorrectamente denominado el Marco de biblioteca de clases (FCL), que es un
superconjunto de Microsoft incluidos .* nombres.
20.
Un repositorio de objetos para el aprendizaje es un sistema software que almacena
Recursos educativos y sus metadatos (o solamente estos últimos), y que proporciona
Algún tipo de interfaz de búsqueda de los mismos, bien para interacción con humanos
o con otros sistemas software [1].
La funcionalidad fundamental de un repositorio es la de búsqueda de objetos de
Aprendizaje, y existen varias posibilidades para su implementación, tales como:
• Interfaces de búsqueda interactivas, para uso de humanos.
• Interfaces de consulta que puedan ser utilizadas por agentes software, por
Ejemplo, mediante Servicios Web.
Además de la funcionalidad de búsqueda, otra función importante de los
Repositorios es la de hacer de intermediario con otros repositorios, lo que se denomina
“federación” de repositorios, lo cual permite que con una sola búsqueda, se busque en
Muchos repositorios distribuidos, ampliando asì las posibilidades de encontrar OA
Relevantes para él usuario o sistema que hace la búsqueda.
Esto último implica crear aplicaciones como un conjunto de componentes
Distribuidos a través de una red de dispositivos que trabajan de forma conjunta. Por
SERVICIO NACIONAL DE APRENDIZAJE, SENA
FORMACIÓN PEDAGÓGICA DE DOCENTES
MÓDULO DE FORMACIÓN EVALUACIÓN DEL
APRENDIZAJE
GUIAS DE APRENDIZAJE

Esta razón y para satisfacer la necesidad existente de estandarizar la comunicación


Entre distintas plataformas y lenguajes de programación surgen los Servicios Web.
Estos proporcionan muchos beneficios, ya que mejoran la interoperabilidad entre
Diferentes aplicaciones, simplifican la conectividad de la lógica de negocio y aportan
Gran independencia entre la aplicación que utiliza el Servicio Web y el propio servicio.

21.

• La versión 1.0: fue liberada a principios del año 2002, e incluía la versión 1.0 del .NET
Framework, la versión 2002 de Visual Studio y varios lenguajes de programación nuevos
compatibles con la plataforma (como C#.NET y Visual Basic.NET)

• La versión 1.1: fue liberada en 2003, aproximadamente un año después que su


predecesora. Esta versión introdujo el .NET Framework 1.1 junto con Visual Studio .NET
2003, la primer versión del .NET Compact Framework y un nuevo lenguaje de
programación llamado J#.NET.

• La versión 2.0: fue liberada a finales del año 2005, y es la primer gran renovación que
sufrió la plataforma en su tiempo de vida. Con la idea de ser una “evolución” en lugar de
una “revolución”, esta versión trajo consigo las versiones 2.0 del .NET Framework y el
.NET Compact Framework, asi como también una nueva versión de Visual Studio.

• La versión 3.0: Junto con Windows Vista se libera al mercado una serie de tecnologías
para desarrolladores de software que cambiarán la forma de construir aplicaciones para la
plataforma Windows.Esta plataforma de última generación, antes conocida como WinFX, y
cuyo nombre actual es Framework 3.0, es una API (Application Programming Interface)
que agrupa funcionalidades de Win32 junto con el .NetFramework . Asimismo, brinda
soporte para la creación de aplicaciones Windows y aplicaciones Web

22.
Visual Studio® 2008 presenta un abanico de nuevas características orientadas a una amplia
gama de soluciones de cliente. Ahora puede crear una solución Visual Studio Tools para
Office (VSTO) que usa Windows® Presentation Foundation (WPF), Windows
Communication Foundation (WCF) y expresiones de Language Integrated Query (LINQ),
que mostraré en breve.
Las nuevas tecnologías ofrecen la oportunidad de crear soluciones interesantes con
comportamientos que antes eran difíciles o poco probables de conseguir. Por ejemplo,
SERVICIO NACIONAL DE APRENDIZAJE, SENA
FORMACIÓN PEDAGÓGICA DE DOCENTES
MÓDULO DE FORMACIÓN EVALUACIÓN DEL
APRENDIZAJE
GUIAS DE APRENDIZAJE

aunque Microsoft ® Office Excel® 2007 tiene características gráficas eficaces, puede crear
una experiencia aún más enriquecedora al combinar el motor de cálculo de Excel con la
interfaz de usuario mejorada y la visualización de datos mediante gráficos animados 3D de
WPF.
A medida que Office evoluciona hacia una verdadera plataforma de desarrollo, las
soluciones basadas en Office pasan a ser cada vez más sofisticadas, menos centradas en
documentos y a acoplarse de una forma más flexible. La necesidad de un marco de
compatibilidad y de un conjunto de herramientas de tiempo de diseño para crear soluciones
orientadas al servicio que conecten un cliente Office enriquecido con la funcionalidad
eficaz del servidor y que rellenen fácilmente los datos remotos gracias a WCF. Visual
Studio 2008 ofrece un sencillo asistente para GUI que le permite consumir los servicios
WCF sin tener que preocuparse por metadatos de servicio, protocolos o configuración
XML.
LINQ permite a los desarrolladores crear código muy simplificado y más intuitivo para
consultar datos. Una de las características de LINQ que los desarrolladores apreciarán
especialmente es el uso de los métodos de extensión para ser compatibles con los métodos
de patrón del modelo de objeto de Office tradicionales que tienen parámetros de referencia
explícitos u opcionales.
Con Visual Studio 2008, puede crear una solución que incorpora las capacidades nativas de
una aplicación cliente Office combinada con las capacidades sofisticadas de la interfaz de
usuario de WPF que está conectada a datos y servicios remotos a través de WCF y que usa
las características RAD de LINQ para manipular esos datos.

23.

Una API representa una interfaz de comunicación entre componentes software. Se trata del
conjunto de llamadas a ciertas bibliotecas que ofrecen acceso a ciertos servicios desde los
procesos y representa un método para conseguir abstracción en la programación,
generalmente (aunque no necesariamente) entre los niveles o capas inferiores y los
superiores del software. Uno de los principales propósitos de una API consiste en
proporcionar un conjunto de funciones de uso general, por ejemplo, para dibujar ventanas o
iconos en la pantalla. De esta forma, los programadores se benefician de las ventajas de la
API haciendo uso de su funcionalidad, evitándose el trabajo de programar todo desde el
principio. Las APIs asimismo son abstractas: el software que proporciona una cierta API
generalmente es llamado la implementación de esa API.

Por ejemplo, se puede ver la tarea de escribir "Hola Mundo" sobre la pantalla en diferentes
niveles de abstracción:
SERVICIO NACIONAL DE APRENDIZAJE, SENA
FORMACIÓN PEDAGÓGICA DE DOCENTES
MÓDULO DE FORMACIÓN EVALUACIÓN DEL
APRENDIZAJE
GUIAS DE APRENDIZAJE

1. Haciendo todo el trabajo desde el principio:


1. Traza, sobre papel milimetrado, la forma de las letras (y espacio) "H,o, l,
a,M,u, n, d, o".
2. Crea una matriz de cuadrados negros y blancos que se asemeje a la sucesión
de letras.
3. Mediante instrucciones en ensamblador, escribe la información de la matriz
en la memoria intermedia ("buffer") de pantalla.
4. Mediante la instrucción adecuada, haz que la tarjeta gráfica realice el
volcado de esa información sobre la pantalla.
2. Por medio de un sistema operativo para hacer parte del trabajo:
1. Carga una fuente tipográfica proporcionada por el sistema operativo.
2. Haz que el sistema operativo borre la pantalla.
3. Haz que el sistema operativo dibuje el texto "Hola Mundo" usando la fuente
cargada.
3. Usando una aplicación (que a su vez usa el sistema operativo) para realizar la mayor
parte del trabajo:
1. Escribe un documento HTML con las palabras "Hola Mundo" para que un
navegador Web como Mozilla, Firefox, Opera o Internet Explorer pueda
representarlo en el monitor.

Como se puede ver, la primera opción requiere más pasos, cada uno de los cuales es mucho
más complicado que los pasos de las opciones siguientes. Además, no resulta nada práctico
usar el primer planteamiento para representar una gran cantidad de información, como un
artículo enciclopédico sobre la pantalla, mientras que el segundo enfoque simplifica la tarea
eliminando un paso y haciendo el resto más sencillos y la tercera forma simplemente
requiere escribir "Hola Mundo". Sin embargo, las APIs de alto nivel generalmente pierden
flexibilidad; por ejemplo, resulta mucho más difícil en un navegador web hacer girar texto
alrededor de un punto con un contorno parpadeante que programarlo a bajo nivel. Al elegir
usar una API se debe llegar a un cierto equilibrio entre su potencia y simplicidad y su
pérdida de flexibilidad.

FIN…….
GRACIAS

También podría gustarte