Sei sulla pagina 1di 23

Entorno de desarrollo (IDE)

Creacin de soluciones
El Common Language Runtime
Tipo y jerarqua de objetos
Operativa bsica del framework .NET
Programacin orientada a objetos
Validacin de datos
Depuracin, monitorizacin y pruebas
LINQ
Seguridad
Uso de System.Drawing
Programacin orientada a la red
Gestin de archivos y Serializacin
Configuracin y despliegue de soluciones


Qu es el .NET Framework?














Es una infraestructura de programacin para el desarrollo,
implantacin y ejecucin de aplicaciones y servicios.
Common Language Runtime Base Class Library
Common Language Specification
Define los estndares y las funcionalidades que deben proporcionar los
programas para interoperar con otros usando el CLR como host.
Visual
C#
Visual
Basic
Visual
J#
C++ JScript Otros
El framework .NET da pleno soporte a las funcionalidades
de programacin orientada a objetos, por lo que no se
requiere desarrollo alguno para la interaccin entre
distintos componentes, incluso de distintos lenguajes, ya
que el entorno soporta clases, herencia, mtodos,
propiedades, eventos, polimorfismo, constructores y todas
las construcciones propias de la programacin orientada a
objetos.
Visual Studio 2008 nos proporciona una solucin completa
para el desarrollo eficaz con herramientas que simplifican la
creacin, despliegue y evolucin de las aplicaciones y
servicios.
Entre los beneficios que ofrece Visual Studio 2008 para los
desarrolladores y los equipos, podramos destacar:
Los usuarios son ms productivos y obtiene resultados ms
rpido.
Se pueden construir un amplio abanico de aplicaciones y
servicios.
Los desarrolladores pueden comunicarse y colaborar
eficazmente.
Tecnologas .NET 3.0
El Framework .NET 3.0 combina el potencia del
Framework .NET 2.0 con nuevas
Tecnologas, principalmente:
Windows Presentation
Foundation: Es un subsistema
unificado de Presentacin de
soluciones para Windows.
Consiste en un motor de visualizacin y un conjunto de clases.
Windows Communication Foundation: conjunto de tecnologas
para construir sistemas conectados. Permite integrar la mayora
de las tecnologas existentes para el desarrollo de servicios Web,
operando entre diferentes plataformas de forma segura.
Windows Workflow Foundation: es un modelo de
programacin y un conjunto de componentes para el desarrollo de
soluciones de larga ejecucin como flujos de trabajo declarativos.
Windows CardSpace: solucin estndar de Microsoft para la
gestin de las identidades digitales.
Tecnologas .NET 3.5
Construido de forma incremental sobre el framework 3.0.
Aade funcionalidad a WF, WCF, WPF y CardSpace.
Mejoras en rendimiento:
Paginacin en ADO.NET.
Soporte para CPUs con varios procesadores.
Incremento en estndares Web: AJAX, JSON, REST, POX, RSS,
ATOM y nuevos estndares WS-*.
Nuevas funcionalidades en los lenguajes C# y VB.NET:
Mtodos de extensin.
Literales XML (slo en VB.NET).
Mtodos Lambda.
rboles de expresin.
Integracin profunda del lenguaje de consulta integrado LINQ y
conocimiento de los datos en el cdigo. Pudiendo acceder a
orgenes de datos SQL, colecciones, XML y DataSets con una
misma sintaxis.

El Framework .NET de Microsoft es un entorno de gestin y
ejecucin de aplicaciones, en dos partes, independiente de
la mquina en la que se ejecuta.
Hay una parte especfica a cada plataforma
hardware/software sobre la que hayan de correr nuestros
aplicativos, la cual ofrecer un interfaz consistente e
idntico, en cualquier plataforma, a nuestros aplicativos.
Y la otra parte que es la que se encarga de controlar y
gestionar las ejecuciones, ofrecindonos una base comn al
desarrollo, como iremos viendo a lo largo de este curso.
Evidentemente, este entorno funcionar a pleno
rendimiento para las aplicaciones desarrolladas
especficamente para l, aunque no se excluye la utilizacin
de aplicaciones y servicios desarrollados con otras
tecnologas.

El Framework .NET incluye un entorno de desarrollo (IDE)
que nos permite generar todos los tipos de ejecutable
soportado por el Framework, en cualquiera de los lenguajes
incluidos, llamado Visual Studio.
Todos estos lenguajes, totalmente orientados a objetos y
componentes, nos ofrecen las mismas funcionalidades, con
lo que la eleccin de uno u otro depender de las
preferencias personales de cada desarrollador, no siendo ya
necesario el que todo el equipo trabaje con el mismo
lenguaje, ya que el entorno nos permite integrarlos todos
indistintamente de una forma fluida.
Para ello dispone de una coleccin de clases predefinidas
conocida como la librera bsica de clases (BCL) y un
sistema comn de tipos (CTS) , accesibles a todos los
lenguajes soportados, los cuales facilitan la comunicacin
entre procesos.

Todos los lenguajes soportados por el entorno son
totalmente nuevos o han sido remodelados partiendo de 0,
aunque ofreciendo la tradicional compatibilidad hacia atrs,
tpica de los lenguajes de Microsoft.
Esto se ha hecho as para evitar las tpicas rmoras de
versiones anteriores, en cuanto a cdigo obsoleto, pero
permitiendo, todava, la codificacin tradicional, para
aquellos de nosotros que an se resisten al cambio.
En cuanto a los nuevos lenguajes, el C#, es el que se
conoce como el ms nativo del entorno .NET Framework, no
en balde todo el Visual Studio ha sido desarrollado con este
lenguaje.
El entorno de gestin (CLR) se encarga, adems del control
de la ejecucin de los procesos, del control de la integridad
y seguridad de los mismos, as como del control de acceso
a los recursos del sistema.
El entorno .NET est pensado para dar el ms amplio
soporte posible a todo lo relacionado con la red (ASP, WCF,
Silverlight, Expression) al haberse convertido sta, cada
vez ms, en plataforma de negocio, gestin e
interrelaciones, tanto internas (Intranet) como externas
(Internet). Abarcando las relaciones de negocio con clientes,
proveedores y bancos, y siendo plataforma de comunicacin
de los empleados, sea cual sea el tipo de dispositivo
utilizado.
Tambin se ha tenido en cuenta la actual diversidad de los
orgenes de la informacin, dando soporte a todo tipo de
tecnologas de almacenamiento y transmisin de
informacin (ADO).
Otra ventaja aadida es que el aspecto visual y el funcional
de los desarrollos para escritorio y para la red pueden ser
unificados (WPF), con lo que el usuario deja de saber dnde
residen los procesos.
Tambin se ha potenciado y simplificado el desarrollo de
servicios tanto para Windows como para Web, unificando la
mayora de las tecnologas existentes en el WCF,
simplificando el desarrollo de este tipo de procesos.
El entorno tambin se encarga de implementar la
funcionalidad de gestin de la memoria no utilizada
mediante el Garbage Collector.
La instalacin de nuevos procesos o su actualizacin ha sido
enormemente facilitada, llegando a no ser mas que, en
algunos casos, una simple copia de archivos.
Estos dos ltimos puntos redundan en una escalabilidad
enormemente facilitada, lo cual no puede reportar ms que
beneficios a los departamentos de IT, totalmente saturados
con las granjas de servidores, host heredados, sistemas
histricos a mantener por motivos fiscales, firewalls,
servidores de Internet/Intranet, servidores de correo, .etc.


Definiciones del Framework .NET de voces autorizadas,
recopiladas de la red:
".NET Framework es un entorno para construir, instalar y
ejecutar servicios Web y otras aplicaciones. Se compone
de tres partes principales: el Common Language
Runtime, las clases Framework y ASP.NET
"El .NET Framework es un entorno multi-lenguaje para la
construccin, distribucin y ejecucin de Servicios Webs y
aplicaciones."
"El .NET Framework es una nueva plataforma diseada
para simplificar el desarrollo de aplicaciones en el entorno
distribuido de Internet."
El .NET Framework consta de dos componentes
principales: el Common Language Runtime y la librera
de clases .NET Framework."

El .NET Framework es el corazn de .NET, cualquier cosa
que queramos hacer en cualquier lenguaje .NET debe
pasar por el filtro cualquiera de las partes integrantes del
.NET Framework.
Microsoft.NET Framework es el conjunto de nuevas
tecnologas en las que Microsoft ha estado trabajando
durante los ltimos aos con el objetivo de obtener una
plataforma sencilla y potente para distribuir el software en
forma de servicios que puedan ser suministrados
remotamente y que puedan comunicarse y combinarse
unos con otros de manera totalmente independiente de la
plataforma, lenguaje de programacin y modelo de
componentes con los que hayan sido desarrollados.

Simplificando mucho las cosas para poder dar una
definicin corta y comprensible, se podra decir que la
plataforma .NET es un amplio conjunto de bibliotecas de
desarrollo que pueden ser utilizadas por otras aplicaciones
para acelerar enormemente el desarrollo y obtener de
manera automtica caractersticas avanzadas de
seguridad, rendimiento, etc...

En realidad .NET es todo esto y mucho ms ya que nos
ofrece nuevos lenguajes de programacin, compiladores,
soporte e integracin para los tradicionales, un entorno
gestionado de ejecucin de programas y aplicaciones, y
permite desarrollar todo tipo de funcionalidades: programas
de consola, servicios Windows, aplicaciones para dispositivos
mviles, desarrollos de escritorio, desarrollos para Internet,
Bsicamente, se podra describir la filosofa de funcionamiento
del .NET Framework con la siguiente secuencia:
Los programas se desarrollan bajo los paradigmas de
programacin orientada a objetos y a componentes,
utilizando la biblioteca de clases bsicas (BCL) de .NET
Framework y el sistema comn de tipos (CTS).
Al compilarlos se genera un cdigo intermedio (MSIL) en
lugar del cdigo binario de la programacin tradicional.
En cada mquina en la que se desee ejecutar, deber estar
instalado el entorno .NET Framework adecuado a la versin
del mismo para la que se desarroll y especfico para el
procesador de la mquina.
Este entorno de ejecucin ser el encargado de traducir el
cdigo intermedio antes generado al cdigo binario
adecuado a la mquina, normalmente de forma incremental,
compilando slo aquello que se utiliza, en lugar del
programa completo.

Al tiempo el .NET Framework validar que el proceso que se
intenta ejecutar no efecta llamadas a recursos del sistema
inadecuados o que puedan provocar errores o conflictos con
el resto del sistema.
Tambin se encargar de generar el sub-entorno de
ejecucin necesario para poder lanzar, si fuera necesario,
varias versiones del mismo proceso, sin que interfieran unas
con otras.
Estos sub-entornos sern los encargados de aislar, tambin,
los procesos que se ejecuten en el servidor asociados a la
programacin Web.

Para todas estas tareas, .NET Framework dispone de varias
especificaciones especializadas, como son:
El Common Language Runtime (CLR) el entorno de
ejecucin antes mencionado

Common Language Specification (CLS) o especificacin
comn de los lenguajes, que es parte de lo que facilita la
intercomunicacin entre los mismos.
Common Type System (CTS) o sistema comn de tipos, que
permite que todos los lenguajes compartan los mismos tipos
de dato, evitando las tradicionales incompatibilidades entre
lenguajes debidas a esto.
Microsoft Intermediate Language (MSIL), ya comentado, el
lenguaje generado por los compiladores .NET, soportado por
el CLR.
Los assemblies o ensamblados, agrupaciones de cdigo,
recursos e informacin complementaria que se generan
desde el IDE (interfaz de desarrollo) y utilizados por el CLR
para controlar la ejecucin.
ASP.NET, que es la parte implementada para el desarrollo
Web.
Grficamente sera:
Librera de clases bsicas BCL
Entorno comn de ejecucin CLR
ASP .NET Formularios Windows
Controles Dibujo
Servicios de aplicaciones Windows
Servicios Web
Servicios de aplicaciones ASP.NET
Formularios Web
Entrada/Salida XML ADO.NET Hilos
Colecciones Red Diagnsticos Y ms
Gestin de memoria
Sistema Comn de
Tipos (CTS)
Supervisin del ciclo
de ejecucin
Este entorno de trabajo, con su IDE, nos permite desarrollar
los siguientes tipos de soluciones:
Aplicaciones Windows: tambin llamadas Windows Forms,
son los tradicionales programas de ventana en el escritorio a
los cuales estbamos casi relegados con los lenguajes de
programacin tradicionales en Windows.
Aplicaciones Web: que son la actual tendencia en el mundo
empresarial, yendo mucho ms all de los que se entiende
como pginas Web.
Servicios Windows: pequeos, o no tan pequeos, mdulos
de aplicacin, que suelen arrancar automticamente y con
un entorno de seguridad distinto del usuario del sistema.
Servicios Web: habitualmente, suministros de informacin o
funcionalidades muy concretas para aplicaciones Web o de
escritorio.
Aplicaciones de consola: o de ventana del DOS, muy
utilizadas en el mundo de la tcnica de sistemas.
Los tipos de soluciones se caracterizan, entre otras, por el
cliente sobre el que se han de ejecutar. Siendo estos clientes
la denominacin por la que conoce al tipo de presentacin de
las soluciones de negocio a los usuarios.
Cliente Windows: es el cliente estndar de Windows, basado
en formularios SDI o MDI, es decir de formulario nico o
mltiple. Los SDI pueden presentar otros sub-formularios
en paneles o pestaas, habitualmente distintos entre s. En
cambio, los MDI suelen ser del tipo contenedor para la
presentacin de mltiples instancias del mismo tipo de
formulario contenido (Office). Este tipo de cliente es el
adecuado cuando se requiere la presentacin de un interfaz
de usuario rico, con mucha funcionalidad y que requiera
hacer uso del escritorio del usuario. Requiere la instalacin
del Framework en cada mquina que vaya a usar el
aplicativo. Puede conectarse a unidades de red o incluso
utilizar servicios Web.
Smart client: aplicaciones accedidas mediante navegador,
aunque con un comportamiento de escritorio, corriendo en
la mquina del usuario. Permiten una gran interactividad de
usuario, pero trabajando desde un servidor web, para
aprovechar la omnipresencia de Internet.
Cliente basado en navegador: denominacin empleada para
designar las aplicaciones Web. Corren desde un servidor
Web y tienen, de cara al usuario, algunas limitaciones con
respecto a las aplicaciones Windows.
Cliente con soporte para AJAX: para los clientes basados en
navegador que aprovechan las ventajas de JavaScript para
ofrecer funcionalidades del tipo Windows Forms (como el
Outlook Web Access), lo cual permite a los usuarios una
experiencia mucho ms interactiva desde navegador.
Cliente de Office: para las aplicaciones construidas con
interfaz de usuario Word, Excel o Outlook. Tienen la gran
ventaja de ofrecer al usuario un interfaz totalmente
conocido, manteniendo la facilidad de acceso al escritorio y
a los servicios de red. Requiere que la versin especfica de
Office est instalada en cada mquina en la que se vaya a
utilizar.
Windows Mobile: como su propio nombre indica, para
aquellas aplicaciones desarrolladas para interactuar con el
usuario mediante dispositivos mviles, que ejecuten alguno
de los sistemas operativos mviles de Windows,
habitualmente PDA y SmartPhones.
Otro de los factores que influyen en el tipo de soluciones
que desarrollemos es la profundidad de separacin en capas
que deseemos emprender, siendo el ms habitual el diseo en
3 capas, las cuales pueden llegar a subdividirse en caso
necesario segn un esquema del tipo:
Interfaz de Usuario:
Presentacin o experiencia de usuario.
Cdigo de la interfaz de usuario.
Cdigo de interaccin con la lgica de negocio.
Lgica de Negocio:
Servicios de negocio.
Servicios de Aplicacin.
Enlace a datos.
Base de datos:
Enlace a datos.
Procedimientos almacenados.
Servicios de integracin.
Elementos de la base de datos.

Potrebbero piacerti anche