Introducciуn a .NET - PowerPoint PPT Presentation

About This Presentation
Title:

Introducciуn a .NET

Description:

Introducci n a .NET Dr. Diego Lz. de Ipi a Gz. de Artaza http://paginaspersonales.deusto.es/dipina Bibliograf a usada para preparar el curso Microsoft.NET for ... – PowerPoint PPT presentation

Number of Views:26
Avg rating:3.0/5.0
Slides: 37
Provided by: paginasper
Category:
Tags: net | adonet | introducci

less

Transcript and Presenter's Notes

Title: Introducciуn a .NET


1
Introducción a .NET
  • Dr. Diego Lz. de Ipiña Gz. de Artaza
  • http//paginaspersonales.deusto.es/dipina

2
Introducción
  • Microsoft.NET es el conjunto de nuevas
    tecnologías en las que Microsoft ha estado
    trabajando durante los últimos años 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 programación y
    modelo de componentes con los que hayan sido
    desarrollados.

3
Características de .NET I
  • Según Microsoft .NET es una plataforma Microsoft
    para Servicios Web XML.
  • Sin embargo es mucho más
  • .NET es una nueva plataforma para el desarrollo y
    explotación de aplicaciones gestionadas
    (managed) modernas y orientadas a objetos
  • Las aplicaciones .NET se pueden desarrollar en
    cualquier lenguaje de programación que se ajusta
    a .NET
  • .NET soporta una extensa framework de librerías
    de clases independientes del lenguaje de
    programación
  • .NET soporta la creación de componentes
    auto-describibles
  • .NET ofrece integración multi-lenguaje,
    reutilización de componentes, y herencia entre
    componentes desarrollados en diferentes lenguajes

4
Características de .NET II
  • .NET ofrece un nueva manera de desarrollar
    aplicaciones de sobremesa usando las clases
    Windows Forms
  • .NET ofrece una nueva manera de desarrollar
    aplicaciones basadas en navegador Web a través de
    ASP.NET
  • Las clases ADO.NET proveen una arquitectura
    desconectada para acceso a datos a través de
    Internet
  • .NET soporta la creación de Servicios Web XML
    independientes de la plataforma, a través de SOAP
    (Simple Object Access Protocol) y WSDL (Web
    Services Description Language)
  • .NET ofrece una nueva arquitectura para el
    desarrollo y explotación de objetos remotos
  • .NET convierte a varias tecnologías y técnicas
    Windows en obsoletas

5
Componentes de .NET
  • Microsoft.NET está compuesto de
  • Plataforma .NET
  • .NET Framework SDK
  • Visual Studio .NET
  • Servicios Web (Microsoft .NET myServices)
  • Servidores para empresas(SQL Server.NET...)

6
Plataforma .NET
  • El concepto en el que se basa .NET no es nuevo.
  • Java y su entorno de ejecución (JVM) ya utilizan
    el concepto de encapsulamiento del sistema
    operativo para permitir la interoperabilidad
    entre diferentes sistemas operativos.

7
Plataforma .NET
8
Plataforma .NET
  • Componentes
  • Common Language Runtime(CLR) Entorno de
    ejecución de la plataforma.
  • .NET Framework Base Classes o FCL (Framework
    Class Library) Añaden funcionalidad.
  • ASP.NET Versión .Net de ASP. Incluye los
    servicios Web.
  • Windows Forms

9
Common Language Runtime
  • Un Runtime no es más que un entorno en el que se
    ejecutan los programas.
  • De esta forma, el CLR es el entorno donde se
    ejecutarán las aplicaciones .NET que han sido
    compiladas a un lenguaje común llamado Microsoft
    Intermediate Language(MSIL).

10
Common Language Runtime
  • El proceso de compilación produce un fichero
    ejecutable en Windows al que se denomina portable
    executable (PE)
  • CLR sólo ve IL, por lo que se puede reemplazar el
    compilador JIT para usar un nuevo lenguaje

11
.NET y código gestionado
  • Las aplicaciones que siguen el modelo de la
    figura anterior son managed applications
    (aplicaciones gestionadas)
  • En contrapartida, las aplicaciones Windows no
    gestionadas se denominan unmanaged applications
  • Managed applications y unmanaged applications
    pueden convivir

12
.NET y código gestionado
  • Metadata describe los campos, propiedades, firmas
    de métodos y operaciones soportadas
  • De esta manera, los componentes en .NET son
    auto-describibles y se permite la interacción
    entre componentes escritos en diferentes
    lenguajes.

13
Common Language Runtime
  • Caracteríticas y servicios que ofrece
  • Ejecución multiplataforma
  • Integración de lenguajes
  • Gestión de memoria(Recolector de basura)
  • Tratamiento de excepciones
  • Soporte multi-hilo
  • Distribución transparente
  • Interoperabilidad con código antiguo

14
Common Language Runtime
  • El CLR se encarga de gestionar la ejecución de
    las aplicaciones .NET.
  • Al código escrito para ejecutarse en la
    plataforma .NET se le llama código gestionado.
  • Al código no escrito para ejecutarse directamente
    bajo la plataforma se le llama código no
    gestionado.

15
Clases de la plataforma .NET
  • La librería de clases (FCL) es una librería
    formada por cientos de tipos que permiten acceder
    a los servicios ofrecidos por el CLR y a sus
    funcionalidades más frecuentemente usadas.
  • Además el programador puede crear nuevas clases
    que extiendan su funcionalidad y se integren
    perfectamente con el resto de las clases de la
    FCL.

16
Clases de la plataforma .NET
  • Esta librería de clases está escrita en MSIL
    luego cualquier lenguaje cuyo compilador genere
    MSIL podrá usarla.
  • Con esta librería podemos crear todo tipo de
    aplicaciones aplicaciones de consola, de
    ventanas, servicios Web, ASP.NET...

17
Clases de la plataforma .NET
  • Dada la amplitud de la FCL, ha sido necesario
    organizar las clases en ella incluida en espacios
    de nombres que agrupen clases con funcionalidades
    similares.
  • El espacio de nombres System es el espacio raíz
    del que cuelgan todos los demás.

18
Clases de la plataforma .NET
  • Espacios de nombres más usados
  • System Contiene tipos de datos muy usados, datos
    básicos, tablas, excepciones... Es el raíz.
  • System.Object Soporta toda la jerarquía de las
    clases de .NET.
  • System.Collections Colecciones de datos de uso
    común como pilas, colas, listas...
  • System.Data Manipulación de base de datos. Forma
    la denominada arquitectura ADO.NET.

19
Clases de la plataforma .NET
  • System.IO Manipulación de ficheros.
  • System.Reflection Acceso a los metadatos que
    acompañan a los módulos de código.
  • System.Math Funciones logarítmicas,
    trigonométricas...
  • System.XML Acceso a datos en formato XML.
  • Sytem.Web Aplicaciones Web.

20
ASP.NET
  • ASP.NET es la versión para la plataforma .NET de
    la tecnología ASP (Active Server Pages).
  • Dentro de esta capa podemos distinguir tres
    partes muy diferenciadas
  • Web Forms
  • Server Controls
  • Web Services

21
Windows Forms
  • Los Windows Forms son una forma avanzada e
    integrada de crear aplicaciones de escritorio
    Win32 estándar.
  • Los WinForms descienden de las Windows Foundation
    Classes (WFC) de Microsoft.
  • Cualquier lenguaje de la plataforma .Net puede
    utilizar WinForms.
  • De hecho, actualmente, las WinForms forman parte
    de las clases de la plataforma .NET en el espacio
    de nombres System.Windows.Forms.

22
.NET Framework SDK
  • Microsoft distribuye este kit de desarrollo como
    parte del paquete .NET.
  • Disponible en http//msdn.microsoft.com/netframew
    ork/technologyinfo/howtoget/default.aspx
  • En este kit podemos encontrar documentación sobre
    la plataforma, ejemplos y código fuente, y una
    serie de utilidades que sirven para desarrollo y
    prueba de aplicaciones .NET.

23
Visual Studio.NET
  • Es un entorno gráfico que permite a los
    desarrolladores crear, probar y depurar
    aplicaciones desarrolladas o no para la
    plataforma .NET.
  • Inicialmente se llamó Visual Studio 7.0 ya que es
    la evolución del Visual Studio 6.0.
  • La última versión a 02/2004, es el Visual Studio
    2003.
  • SharpDevelop es un IDE open source para .NET que
    representa una buena alternativa a Visual
    Studio.NET
  • http//www.icsharpcode.net/opensource/sd/

24
Visual Studio.NET
  • Microsoft incorpora en este entorno los
    siguientes lenguajes de programación
  • Visual Basic.NET Versión .NET de Visual Basic
    6.0.
  • Visual C.net Evolución de Visual C.
  • Visual J.NET Adaptación de Visual J.
  • Visual C.NET Un nuevo lenguaje de programación
    OO.
  • Empresas ajenas han creado compiladores de sus
    lenguajes para la plataforma .NET
  • Eiffel, Perl, Python, Haskell, Pascal, Oberon...

25
.NET My Services
  • Microsoft ha creado una serie de servicios Web a
    los que llama .NET My Services o HailStorm.
  • .Net My Services son un conjunto de servicios Web
    XML que permiten al usuario almacenar y recuperar
    información confidencial (contactos, agenda,
    documentos...).
  • http//msdn.microsoft.com/myservices

26
Servidores para empresas
  • La evolución de.NET ha obligado a Microsoft a
    realizar cambios en los servidores para empresas
    (Enterprise Servers) que distribuye.
  • Los nuevos servidores, .NET Enterprise Servers
    tratan de ayudar a las empresas a integrar y
    orquestar servicios y aplicaciones en una sola
    solución comprensible.
  • Algunos de estos servidores son Application
    Center, BizTalk, Commerce Server, Exchange...

27
Desarrollando para la plataforma .NET
  • .NET es independiente del lenguaje de
    programación, no estamos restringidos a
    desarrollar en Visual C y Basic
  • Existen compiladores para C, Visual Basic.NET,
    Jscript.NET, COBOL, Python, Perl, etc.
  • .NET soporta estos lenguajes no soportando
    realmente ninguno de ellos
  • .NET sólo entiende Microsoft Intermediate
    Language (IL)

28
Una plataforma independiente del lenguaje
  • .NET traduce código fuente a IL (Intermediate
    Language).
  • El resultado de la compilación es IL Metadata
  • IL es como un lenguaje ensamblador para una CPU
    virtual, basada en un pila (similar a Java
    bytecode)
  • IL es compilado antes de ser ejecutado y no está
    diseñado para un lenguaje en particular como en
    Java
  • Las sentencias IL manipulan tipos comunes
    compartidos por todos los lenguajes .NET (Common
    Type System CTS)
  • El Common Language Runtime (CLR) es responsable
    de cargar y ejecutar una aplicación .NET
  • Usa compilación JIT (Just-In-Time) para traducir
    IL a código nativo
  • IL es siempre compilado y nunca interpretado no
    como con JVM
  • El código IL por cada método sólo es compilado
    cuando es indicado

29
Common Language Runtime
  • Recordemos la figura anterior que ilustra el
    proceso de compilación de un programa en .NET

30
Hola Mundo en .NET
// fichero hola.cs // compilar csc
hola.cs using System class Hola public
static void Main() Console.WriteLine(Hola
desde C)
31
Hola Mundo en .NET
  • Todo programa en C contiene al menos una clase
  • Main es el punto de entrada del programa
  • Console.WriteLine(Hola desde C), visualiza un
    mensaje, invocando método WriteLine de la clase
    Console
  • El espacio de nombres System pertenece a .NET FCL
    (Framework Class Library)
  • FCL contiene muchas clases útiles, que pueden
    usarse desde nuestras aplicaciones .NET
  • Para compilar el programa necesitamos una copia
    de .NET SDK, y usar el compilador de C, csc

32
Hola Mundo en .NET III
  • Path para csc.exe en mi máquina
  • C\WINDOWS\Microsoft.NET\Framework\v1.1.4322

33
Hola Mundo en Visual Basic.NET
' fichero hola.vb ' compilar vbc
hola.vb Imports System module Hello sub
main() Console.WriteLine(Hola desde
VB.NET) end sub end module
34
Desemsamblando Hola Mundo
  • "c\Program Files\Microsoft.NET\SDK\v1.1\Bin\ildas
    m.exe"

35
Bibliografía usada para preparar el curso
  • Microsoft.NET for Programmers, Fergal Grimes,
    Manning, ISBN 1-930110-19-7, 2002
  • http//www.manning.com/grimes
  • Programming Microsoft.NET, Jeff Prosise,
    Wintellect, Microsoft Press, ISBN 0-7356-1376-1,
    2002
  • http//www.microsoft.com/mspress/books/5200.asp
  • Microsoft .NET SDK Framework Documentation
  • http//msdn.microsoft.com/netframework/
  • http//www.microsoft.com/net/
  • Seminario.NET y C, Ander Barbier y Unai Extremo,
    Universidad de Deusto, 2003
  • http//asignaturas.deusto.es/Seminario.NET

36
Enlaces de interés
  • GotDotNet The Microsoft .NET Framework
    Community
  • http//www.gotdotnet.com/
  • .NET home page
  • http//www.microsoft.com/net/
  • MSDN .NET Framework site
  • http//msdn.microsoft.com/netframework/
  • Website con ejemplos y ayuda en programación C
  • http//www.c-sharpcorner.com/
  • http//www.csharphelp.com/
  • http//www.csharp-station.com/
  • Implementación Open Source .NET (Proyecto mono)
  • http//www.go-mono.com/
  • Fundamental Class Library en la sección
    Reference de .NET Framework SDK Documentation
Write a Comment
User Comments (0)
About PowerShow.com