SlideShare una empresa de Scribd logo
1 de 36
Introducción a .NET
Dr. Diego Lz. de Ipiña Gz. de Artaza
http://paginaspersonales.deusto.es/dipina
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.
 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
Características de .NET I
 .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
Características de .NET II
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...)
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.
Plataforma .NET
Common Language Runtime
.NET Framework Base Classes
ASP.NET
Servicios Web
Windows Forms
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
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).
 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
Common Language Runtime
CLR
Código fuente
Código intermedio
Código nativo
Compilador
C#, Visual Basic...
MSIL(Microsoft
Intermediate Language)
Intel 8086, Windows,
Solaris...
.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
.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.
Plataforma .NET
Sistema Operativo
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
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.
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.
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...
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.
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.
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.
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
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.
.NET Framework SDK
 Microsoft distribuye este kit de desarrollo como
parte del paquete .NET.
 Disponible en: http://msdn.microsoft.com/
netframework/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.
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/
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...
.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
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...
 .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)
Desarrollando para la plataforma
.NET
 .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
Una plataforma independiente del
lenguaje
 Recordemos la figura anterior que ilustra el proceso de
compilación de un programa en .NET
Common Language Runtime
CLR
Código fuente
Código intermedio
Código nativo
Compilador
C#, Visual Basic...
MSIL(Microsoft
Intermediate Language)
Intel 8086, Windows,
Solaris...
Hola Mundo en .NET
// fichero: hola.cs
// compilar: csc hola.cs
using System;
class Hola {
public static void Main() {
Console.WriteLine(“Hola desde C#”);
}
}
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
Hola Mundo en .NET III
 Path para csc.exe en mi máquina:
C:WINDOWSMicrosoft.NETFrameworkv1.1.4322
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
Desemsamblando Hola Mundo
 "c:Program FilesMicrosoft.NETSDKv1.1Binildasm.exe"
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
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

Más contenido relacionado

La actualidad más candente

La actualidad más candente (14)

Plataforma net
Plataforma netPlataforma net
Plataforma net
 
1 Plataforma .Net
1 Plataforma .Net1 Plataforma .Net
1 Plataforma .Net
 
Framework .NET 3.5 01 Conceptos básicos y entorno
Framework .NET 3.5 01 Conceptos básicos y entornoFramework .NET 3.5 01 Conceptos básicos y entorno
Framework .NET 3.5 01 Conceptos básicos y entorno
 
Paola 1001 jt
Paola 1001 jtPaola 1001 jt
Paola 1001 jt
 
Paola
PaolaPaola
Paola
 
Microsoft .NET Propuesta
Microsoft .NET PropuestaMicrosoft .NET Propuesta
Microsoft .NET Propuesta
 
.Net framework
.Net framework.Net framework
.Net framework
 
Preserntacion programacion.net
Preserntacion programacion.netPreserntacion programacion.net
Preserntacion programacion.net
 
Presentación1
Presentación1Presentación1
Presentación1
 
PROGRAMACION .NET
PROGRAMACION .NETPROGRAMACION .NET
PROGRAMACION .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
 
Unidad 1
Unidad 1Unidad 1
Unidad 1
 
Como funciona Visual Studio
Como funciona Visual StudioComo funciona Visual Studio
Como funciona Visual Studio
 
Framework .NET 3.5 04 El common language runtime
Framework .NET 3.5 04 El common language runtimeFramework .NET 3.5 04 El common language runtime
Framework .NET 3.5 04 El common language runtime
 

Similar a 1 introduccion.net

Introducción a net
Introducción a netIntroducción a net
Introducción a netinfobran
 
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
 
Andre.paola9 blos blospot blogger
Andre.paola9 blos blospot bloggerAndre.paola9 blos blospot blogger
Andre.paola9 blos blospot bloggerpaolatublog
 
Plataforma .Net
Plataforma .NetPlataforma .Net
Plataforma .Netmellcv
 
Programacion
ProgramacionProgramacion
Programaciondanielrsd
 
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
 
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
 
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
 
framework.net -Jennifer Suarez
framework.net -Jennifer  Suarezframework.net -Jennifer  Suarez
framework.net -Jennifer SuarezGinsuaC
 
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.2010Oliver Benitez
 
Curso de-introduccin-net-con-visual-basic-2010-120611103429-phpapp02
Curso de-introduccin-net-con-visual-basic-2010-120611103429-phpapp02Curso de-introduccin-net-con-visual-basic-2010-120611103429-phpapp02
Curso de-introduccin-net-con-visual-basic-2010-120611103429-phpapp02Flor Santana Mota
 
Curso de-introduccin-net-con-visual-basic-2010-120611103429-phpapp02
Curso de-introduccin-net-con-visual-basic-2010-120611103429-phpapp02Curso de-introduccin-net-con-visual-basic-2010-120611103429-phpapp02
Curso de-introduccin-net-con-visual-basic-2010-120611103429-phpapp02Flor Santana Mota
 

Similar a 1 introduccion.net (20)

Introducción a net
Introducción a netIntroducción a net
Introducción a net
 
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
 
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
 
Plataforma .Net
Plataforma .NetPlataforma .Net
Plataforma .Net
 
Programacion
ProgramacionProgramacion
Programacion
 
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
 
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
 
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
 
Manual visual basic .net
Manual visual basic .net Manual visual basic .net
Manual visual basic .net
 
framework.net -Jennifer Suarez
framework.net -Jennifer  Suarezframework.net -Jennifer  Suarez
framework.net -Jennifer Suarez
 
Programación .NET
Programación .NETProgramación .NET
Programación .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
 
Curso de-introduccin-net-con-visual-basic-2010-120611103429-phpapp02
Curso de-introduccin-net-con-visual-basic-2010-120611103429-phpapp02Curso de-introduccin-net-con-visual-basic-2010-120611103429-phpapp02
Curso de-introduccin-net-con-visual-basic-2010-120611103429-phpapp02
 
Curso de-introduccin-net-con-visual-basic-2010-120611103429-phpapp02
Curso de-introduccin-net-con-visual-basic-2010-120611103429-phpapp02Curso de-introduccin-net-con-visual-basic-2010-120611103429-phpapp02
Curso de-introduccin-net-con-visual-basic-2010-120611103429-phpapp02
 

Más de Jose Mejia Viteri (14)

10.2478 cait 2019-0033
10.2478 cait 2019-003310.2478 cait 2019-0033
10.2478 cait 2019-0033
 
3762 3152-1-pb
3762 3152-1-pb3762 3152-1-pb
3762 3152-1-pb
 
04 capitulo04 unlocked
04 capitulo04 unlocked04 capitulo04 unlocked
04 capitulo04 unlocked
 
02 sistemasexpertos
02 sistemasexpertos02 sistemasexpertos
02 sistemasexpertos
 
Administracionppt
AdministracionpptAdministracionppt
Administracionppt
 
1 guia proyecto int.sab.
1 guia proyecto int.sab.1 guia proyecto int.sab.
1 guia proyecto int.sab.
 
Matriz de tensiones.
Matriz de tensiones.Matriz de tensiones.
Matriz de tensiones.
 
Agendazonal
AgendazonalAgendazonal
Agendazonal
 
Ejercicios prolog
Ejercicios prologEjercicios prolog
Ejercicios prolog
 
Segmentación de mercados1
Segmentación de mercados1Segmentación de mercados1
Segmentación de mercados1
 
Trabajo Segmentación de mercados
Trabajo Segmentación de mercadosTrabajo Segmentación de mercados
Trabajo Segmentación de mercados
 
Planificacion
PlanificacionPlanificacion
Planificacion
 
Texto 2
Texto 2Texto 2
Texto 2
 
Texto 1
Texto 1Texto 1
Texto 1
 

Último

estadisticasII Metodo-de-la-gran-M.pdf
estadisticasII   Metodo-de-la-gran-M.pdfestadisticasII   Metodo-de-la-gran-M.pdf
estadisticasII Metodo-de-la-gran-M.pdfFlorenciopeaortiz
 
183045401-Terminal-Terrestre-de-Trujillo.pdf
183045401-Terminal-Terrestre-de-Trujillo.pdf183045401-Terminal-Terrestre-de-Trujillo.pdf
183045401-Terminal-Terrestre-de-Trujillo.pdfEdwinAlexanderSnchez2
 
Residente de obra y sus funciones que realiza .pdf
Residente de obra y sus funciones que realiza  .pdfResidente de obra y sus funciones que realiza  .pdf
Residente de obra y sus funciones que realiza .pdfevin1703e
 
Comite Operativo Ciberseguridad 012020.pptx
Comite Operativo Ciberseguridad 012020.pptxComite Operativo Ciberseguridad 012020.pptx
Comite Operativo Ciberseguridad 012020.pptxClaudiaPerez86192
 
4.6 DEFINICION DEL PROBLEMA DE ASIGNACION.pptx
4.6 DEFINICION DEL PROBLEMA DE ASIGNACION.pptx4.6 DEFINICION DEL PROBLEMA DE ASIGNACION.pptx
4.6 DEFINICION DEL PROBLEMA DE ASIGNACION.pptxGARCIARAMIREZCESAR
 
Seleccion de Fusibles en media tension fusibles
Seleccion de Fusibles en media tension fusiblesSeleccion de Fusibles en media tension fusibles
Seleccion de Fusibles en media tension fusiblesSaulSantiago25
 
Voladura Controlada Sobrexcavación (como se lleva a cabo una voladura)
Voladura Controlada  Sobrexcavación (como se lleva a cabo una voladura)Voladura Controlada  Sobrexcavación (como se lleva a cabo una voladura)
Voladura Controlada Sobrexcavación (como se lleva a cabo una voladura)ssuser563c56
 
SEGURIDAD EN CONSTRUCCION PPT PARA EL CIP
SEGURIDAD EN CONSTRUCCION PPT PARA EL CIPSEGURIDAD EN CONSTRUCCION PPT PARA EL CIP
SEGURIDAD EN CONSTRUCCION PPT PARA EL CIPJosLuisFrancoCaldern
 
Caldera Recuperadora de químicos en celulosa tipos y funcionamiento
Caldera Recuperadora de químicos en celulosa  tipos y funcionamientoCaldera Recuperadora de químicos en celulosa  tipos y funcionamiento
Caldera Recuperadora de químicos en celulosa tipos y funcionamientoRobertoAlejandroCast6
 
Fe_C_Tratamientos termicos_uap _3_.ppt
Fe_C_Tratamientos termicos_uap   _3_.pptFe_C_Tratamientos termicos_uap   _3_.ppt
Fe_C_Tratamientos termicos_uap _3_.pptVitobailon
 
sistema de construcción Drywall semana 7
sistema de construcción Drywall semana 7sistema de construcción Drywall semana 7
sistema de construcción Drywall semana 7luisanthonycarrascos
 
Introducción a los sistemas neumaticos.ppt
Introducción a los sistemas neumaticos.pptIntroducción a los sistemas neumaticos.ppt
Introducción a los sistemas neumaticos.pptEduardoCorado
 
Presentación Proyecto Trabajo Creativa Profesional Azul.pdf
Presentación Proyecto Trabajo Creativa Profesional Azul.pdfPresentación Proyecto Trabajo Creativa Profesional Azul.pdf
Presentación Proyecto Trabajo Creativa Profesional Azul.pdfMirthaFernandez12
 
Una estrategia de seguridad en la nube alineada al NIST
Una estrategia de seguridad en la nube alineada al NISTUna estrategia de seguridad en la nube alineada al NIST
Una estrategia de seguridad en la nube alineada al NISTFundación YOD YOD
 
Diapositiva de Topografía Nivelación simple y compuesta
Diapositiva de Topografía Nivelación simple y compuestaDiapositiva de Topografía Nivelación simple y compuesta
Diapositiva de Topografía Nivelación simple y compuestajeffsalazarpuente
 
CHARLA DE INDUCCIÓN SEGURIDAD Y SALUD OCUPACIONAL
CHARLA DE INDUCCIÓN SEGURIDAD Y SALUD OCUPACIONALCHARLA DE INDUCCIÓN SEGURIDAD Y SALUD OCUPACIONAL
CHARLA DE INDUCCIÓN SEGURIDAD Y SALUD OCUPACIONALKATHIAMILAGRITOSSANC
 
2. UPN PPT - SEMANA 02 GESTION DE PROYECTOS MG CHERYL QUEZADA(1).pdf
2. UPN PPT - SEMANA 02 GESTION DE PROYECTOS MG CHERYL QUEZADA(1).pdf2. UPN PPT - SEMANA 02 GESTION DE PROYECTOS MG CHERYL QUEZADA(1).pdf
2. UPN PPT - SEMANA 02 GESTION DE PROYECTOS MG CHERYL QUEZADA(1).pdfAnthonyTiclia
 
Edificio residencial Tarsia de AEDAS Homes Granada
Edificio residencial Tarsia de AEDAS Homes GranadaEdificio residencial Tarsia de AEDAS Homes Granada
Edificio residencial Tarsia de AEDAS Homes GranadaANDECE
 
Proyecto de iluminación "guia" para proyectos de ingeniería eléctrica
Proyecto de iluminación "guia" para proyectos de ingeniería eléctricaProyecto de iluminación "guia" para proyectos de ingeniería eléctrica
Proyecto de iluminación "guia" para proyectos de ingeniería eléctricaXjoseantonio01jossed
 
ECONOMIA APLICADA SEMANA 555555555555555555.pdf
ECONOMIA APLICADA SEMANA 555555555555555555.pdfECONOMIA APLICADA SEMANA 555555555555555555.pdf
ECONOMIA APLICADA SEMANA 555555555555555555.pdffredyflores58
 

Último (20)

estadisticasII Metodo-de-la-gran-M.pdf
estadisticasII   Metodo-de-la-gran-M.pdfestadisticasII   Metodo-de-la-gran-M.pdf
estadisticasII Metodo-de-la-gran-M.pdf
 
183045401-Terminal-Terrestre-de-Trujillo.pdf
183045401-Terminal-Terrestre-de-Trujillo.pdf183045401-Terminal-Terrestre-de-Trujillo.pdf
183045401-Terminal-Terrestre-de-Trujillo.pdf
 
Residente de obra y sus funciones que realiza .pdf
Residente de obra y sus funciones que realiza  .pdfResidente de obra y sus funciones que realiza  .pdf
Residente de obra y sus funciones que realiza .pdf
 
Comite Operativo Ciberseguridad 012020.pptx
Comite Operativo Ciberseguridad 012020.pptxComite Operativo Ciberseguridad 012020.pptx
Comite Operativo Ciberseguridad 012020.pptx
 
4.6 DEFINICION DEL PROBLEMA DE ASIGNACION.pptx
4.6 DEFINICION DEL PROBLEMA DE ASIGNACION.pptx4.6 DEFINICION DEL PROBLEMA DE ASIGNACION.pptx
4.6 DEFINICION DEL PROBLEMA DE ASIGNACION.pptx
 
Seleccion de Fusibles en media tension fusibles
Seleccion de Fusibles en media tension fusiblesSeleccion de Fusibles en media tension fusibles
Seleccion de Fusibles en media tension fusibles
 
Voladura Controlada Sobrexcavación (como se lleva a cabo una voladura)
Voladura Controlada  Sobrexcavación (como se lleva a cabo una voladura)Voladura Controlada  Sobrexcavación (como se lleva a cabo una voladura)
Voladura Controlada Sobrexcavación (como se lleva a cabo una voladura)
 
SEGURIDAD EN CONSTRUCCION PPT PARA EL CIP
SEGURIDAD EN CONSTRUCCION PPT PARA EL CIPSEGURIDAD EN CONSTRUCCION PPT PARA EL CIP
SEGURIDAD EN CONSTRUCCION PPT PARA EL CIP
 
Caldera Recuperadora de químicos en celulosa tipos y funcionamiento
Caldera Recuperadora de químicos en celulosa  tipos y funcionamientoCaldera Recuperadora de químicos en celulosa  tipos y funcionamiento
Caldera Recuperadora de químicos en celulosa tipos y funcionamiento
 
Fe_C_Tratamientos termicos_uap _3_.ppt
Fe_C_Tratamientos termicos_uap   _3_.pptFe_C_Tratamientos termicos_uap   _3_.ppt
Fe_C_Tratamientos termicos_uap _3_.ppt
 
sistema de construcción Drywall semana 7
sistema de construcción Drywall semana 7sistema de construcción Drywall semana 7
sistema de construcción Drywall semana 7
 
Introducción a los sistemas neumaticos.ppt
Introducción a los sistemas neumaticos.pptIntroducción a los sistemas neumaticos.ppt
Introducción a los sistemas neumaticos.ppt
 
Presentación Proyecto Trabajo Creativa Profesional Azul.pdf
Presentación Proyecto Trabajo Creativa Profesional Azul.pdfPresentación Proyecto Trabajo Creativa Profesional Azul.pdf
Presentación Proyecto Trabajo Creativa Profesional Azul.pdf
 
Una estrategia de seguridad en la nube alineada al NIST
Una estrategia de seguridad en la nube alineada al NISTUna estrategia de seguridad en la nube alineada al NIST
Una estrategia de seguridad en la nube alineada al NIST
 
Diapositiva de Topografía Nivelación simple y compuesta
Diapositiva de Topografía Nivelación simple y compuestaDiapositiva de Topografía Nivelación simple y compuesta
Diapositiva de Topografía Nivelación simple y compuesta
 
CHARLA DE INDUCCIÓN SEGURIDAD Y SALUD OCUPACIONAL
CHARLA DE INDUCCIÓN SEGURIDAD Y SALUD OCUPACIONALCHARLA DE INDUCCIÓN SEGURIDAD Y SALUD OCUPACIONAL
CHARLA DE INDUCCIÓN SEGURIDAD Y SALUD OCUPACIONAL
 
2. UPN PPT - SEMANA 02 GESTION DE PROYECTOS MG CHERYL QUEZADA(1).pdf
2. UPN PPT - SEMANA 02 GESTION DE PROYECTOS MG CHERYL QUEZADA(1).pdf2. UPN PPT - SEMANA 02 GESTION DE PROYECTOS MG CHERYL QUEZADA(1).pdf
2. UPN PPT - SEMANA 02 GESTION DE PROYECTOS MG CHERYL QUEZADA(1).pdf
 
Edificio residencial Tarsia de AEDAS Homes Granada
Edificio residencial Tarsia de AEDAS Homes GranadaEdificio residencial Tarsia de AEDAS Homes Granada
Edificio residencial Tarsia de AEDAS Homes Granada
 
Proyecto de iluminación "guia" para proyectos de ingeniería eléctrica
Proyecto de iluminación "guia" para proyectos de ingeniería eléctricaProyecto de iluminación "guia" para proyectos de ingeniería eléctrica
Proyecto de iluminación "guia" para proyectos de ingeniería eléctrica
 
ECONOMIA APLICADA SEMANA 555555555555555555.pdf
ECONOMIA APLICADA SEMANA 555555555555555555.pdfECONOMIA APLICADA SEMANA 555555555555555555.pdf
ECONOMIA APLICADA SEMANA 555555555555555555.pdf
 

1 introduccion.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.  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 Características de .NET I
  • 4.  .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 Características de .NET II
  • 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 Common Language Runtime .NET Framework Base Classes ASP.NET Servicios Web Windows Forms
  • 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.  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 Common Language Runtime CLR Código fuente Código intermedio Código nativo Compilador C#, Visual Basic... MSIL(Microsoft Intermediate Language) Intel 8086, Windows, Solaris...
  • 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. Plataforma .NET Sistema Operativo
  • 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/ netframework/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.  .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) Desarrollando para la plataforma .NET
  • 28.  .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 Una plataforma independiente del lenguaje
  • 29.  Recordemos la figura anterior que ilustra el proceso de compilación de un programa en .NET Common Language Runtime CLR Código fuente Código intermedio Código nativo Compilador C#, Visual Basic... MSIL(Microsoft Intermediate Language) Intel 8086, Windows, Solaris...
  • 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:WINDOWSMicrosoft.NETFrameworkv1.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 FilesMicrosoft.NETSDKv1.1Binildasm.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