Clase IClase I
•Curso Microsoft .NETCurso Microsoft .NET•I.S.F.T. N° 182I.S.F.T. N° 182
AgendaAgenda
Presentación del cursoPresentación del curso Microsoft .NETMicrosoft .NET
Conceptos fundamentalesConceptos fundamentales
.NET Framework 2.0.NET Framework 2.0 ¿Qué es el Framework? ¿Qué es el Framework? Common Language RuntimeCommon Language Runtime MSILMSIL AssemblyAssembly
AgendaAgenda
Presentación del cursoPresentación del curso Microsoft .NETMicrosoft .NET
Conceptos fundamentalesConceptos fundamentales
.NET Framework 2.0.NET Framework 2.0 ¿Qué es el Framework? ¿Qué es el Framework? Common Language RuntimeCommon Language Runtime MSILMSIL AssemblyAssembly
Detalle del cursoDetalle del curso Expectativas de logroExpectativas de logro ObjetivosObjetivos Programa Desarrollador 5 Estrellas 2005Programa Desarrollador 5 Estrellas 2005 Software, Lenguajes, RequisitosSoftware, Lenguajes, Requisitos Temas a tratar en el cursoTemas a tratar en el curso
PresentaciónPresentaciónP
rese
nta
ció
nP
rese
nta
ció
n
Detalle del cursoDetalle del curso
Curso introductorio a la plataforma Microsoft .NET Curso introductorio a la plataforma Microsoft .NET con desarrollo de aplicaciones Windows y sitios Web con desarrollo de aplicaciones Windows y sitios Web ASP.NETASP.NET
El curso será mayoritariamente práctico, basándose El curso será mayoritariamente práctico, basándose en los conceptos teóricos del programa en los conceptos teóricos del programa Desarrollador 5 Estrellas 2005.Desarrollador 5 Estrellas 2005.
Pre
sen
taci
ón
Pre
sen
taci
ón
Expectativas de logroExpectativas de logroP
rese
nta
ció
nP
rese
nta
ció
n
Este curso esta orientado a que los alumnos puedan Este curso esta orientado a que los alumnos puedan desarrollar un sitio Web conociendo todos los desarrollar un sitio Web conociendo todos los elementos que componen el mismo, y siguiendo una elementos que componen el mismo, y siguiendo una metodología de trabajo similar a la que se utiliza en metodología de trabajo similar a la que se utiliza en un entorno laboral.un entorno laboral.
Profundizando los conocimientos adquiridos en este Profundizando los conocimientos adquiridos en este curso y junto con los conceptos aprendidos en el curso y junto con los conceptos aprendidos en el instituto los alumnos serán capaces de empezar una instituto los alumnos serán capaces de empezar una carrera laboral como freelance, o en relación de carrera laboral como freelance, o en relación de dependencia como desarrolladores Jr. en ASP.NET.dependencia como desarrolladores Jr. en ASP.NET.
Conocer la plataforma .NETConocer la plataforma .NET Desarrollar aplicaciones Windows simplesDesarrollar aplicaciones Windows simples Desarrollar una aplicación Web (ASP.NET) de 3 capas Desarrollar una aplicación Web (ASP.NET) de 3 capas
con acceso a datos (ADO.NET).con acceso a datos (ADO.NET). Que los alumnos obtengan la 3er estrella del Que los alumnos obtengan la 3er estrella del
programa “Desarrollador 5 Estrellas 2005” de programa “Desarrollador 5 Estrellas 2005” de Microsoft.comMicrosoft.com
Pre
sen
taci
ón
Pre
sen
taci
ón
ObjetivosObjetivos
Programa Desarrollador 5 Estrellas 2005Programa Desarrollador 5 Estrellas 2005
Es un conjunto de herramientas que te permiten Es un conjunto de herramientas que te permiten aprender y desarrollar tus habilidades en la aprender y desarrollar tus habilidades en la tecnología .NETtecnología .NET
En que Consiste:En que Consiste: Cursos Gratuitos en InternetCursos Gratuitos en Internet Exámenes de evaluaciónExámenes de evaluación Comunidad de Profesionales en desarrolloComunidad de Profesionales en desarrollo Alto reconocimiento del mercadoAlto reconocimiento del mercado
Pre
sen
taci
ón
Pre
sen
taci
ón
Programa Desarrollador 5 Estrellas 2005Programa Desarrollador 5 Estrellas 2005P
rese
nta
ció
nP
rese
nta
ció
n
http://dce2005.comhttp://dce2005.com
Software a utilizarSoftware a utilizar Microsoft Visual Studio 2005Microsoft Visual Studio 2005 Microsoft SQL Server 2005 Express EditionMicrosoft SQL Server 2005 Express Edition
Pre
sen
taci
ón
Pre
sen
taci
ón
LenguajesLenguajes C# .NETC# .NET HTML HTML JavascriptJavascript
RequisitosRequisitos Conocimientos de programación orientada a objetos Conocimientos de programación orientada a objetos
(POO).(POO). Conocimientos de sintaxis del los lenguajes C, C++ o Conocimientos de sintaxis del los lenguajes C, C++ o
Java.Java. Conocimientos de Bases de Datos relacionales.Conocimientos de Bases de Datos relacionales.
Temas a desarrollar en el CursoTemas a desarrollar en el Curso
Introducción a Microsoft .NETIntroducción a Microsoft .NET .NET Framework.NET Framework Herramienta de Desarrollo Microsoft Visual Studio 2005Herramienta de Desarrollo Microsoft Visual Studio 2005 Windows FormsWindows Forms Componentes, libreríasComponentes, librerías Manejo de erroresManejo de errores ASP.NETASP.NET Microsoft SQL Server 2005 express editionMicrosoft SQL Server 2005 express edition Acceso a datos ADO.NETAcceso a datos ADO.NET SeguridadSeguridad Web ServicesWeb Services Diseño de capasDiseño de capas
Pre
sen
taci
ón
Pre
sen
taci
ón
AgendaAgenda
Presentación del cursoPresentación del curso Microsoft .NETMicrosoft .NET
Conceptos FundamentalesConceptos Fundamentales .NET Framework 2.0.NET Framework 2.0
¿Qué es el Framework? ¿Qué es el Framework? Common Language RuntimeCommon Language Runtime MSILMSIL AssemblyAssembly
¿Qué es .NET?¿Qué es .NET?
Plataforma de Desarrollo compuesta dePlataforma de Desarrollo compuesta de Entorno de Ejecución (Runtime)Entorno de Ejecución (Runtime) Bibliotecas de Funcionalidad (Class Bibliotecas de Funcionalidad (Class
Library)Library) Lenguajes de ProgramaciónLenguajes de Programación CompiladoresCompiladores Herramientas de Desarrollo (IDE & Tools)Herramientas de Desarrollo (IDE & Tools) Guías de ArquitecturaGuías de Arquitectura
¿Qué NO es .NET?¿Qué NO es .NET?
.NET no es un Sistema Operativo.NET no es un Sistema Operativo
.NET no es un Lenguaje de Programación.NET no es un Lenguaje de Programación
.NET no es un Entorno de Desarrollo.NET no es un Entorno de Desarrollo
.NET no es un Servidor de Aplicaciones.NET no es un Servidor de Aplicaciones
.NET no es un producto empaquetado que se pueda .NET no es un producto empaquetado que se pueda comprar como talcomprar como tal
Operating System
Common Language Runtime
Base Class Library
ADO .NET and XML
ASP .NETWeb Forms Web ServicesASP.NET Mobile Controls
WindowsForms
Common Language Specification
VB C++ C# J# …V
isua
l Stu
dio
.NE
T
Pla
tafo
rma
.NE
TP
lata
form
a .N
ET
Y mucho mas…Y mucho mas…
Características de .NETCaracterísticas de .NET
Plataforma de ejecución intermediaPlataforma de ejecución intermedia 100% Orientada a Objetos100% Orientada a Objetos MultilenguajeMultilenguaje Modelo de Programación único para todo tipo de Modelo de Programación único para todo tipo de
aplicaciones y dispositivos de hardwareaplicaciones y dispositivos de hardware Se integra fácilmente con aplicaciones existentes Se integra fácilmente con aplicaciones existentes
desarrolladas en plataformas Microsoftdesarrolladas en plataformas Microsoft
Tipos de AplicacionesTipos de Aplicaciones
Con Microsoft .NET pueden crearse:Con Microsoft .NET pueden crearse:
Aplicaciones de ConsolaAplicaciones de Consola Aplicaciones Windows (Winform)Aplicaciones Windows (Winform) Aplicaciones Web (Webform)Aplicaciones Web (Webform)
Ventajas de .NETVentajas de .NET
Unifica los modelos de programaciónUnifica los modelos de programación Simplifica el desarrolloSimplifica el desarrollo Provee un entorno de ejecución Provee un entorno de ejecución
robusto y segurorobusto y seguro Independiente del lenguaje de Independiente del lenguaje de
programaciónprogramación Interoperabilidad con código existenteInteroperabilidad con código existente Simplifica instalación y administración Simplifica instalación y administración
de las aplicacionesde las aplicaciones Es extensibleEs extensible
.NE
T F
ram
ew
ork
.NE
T F
ram
ew
ork
AgendaAgenda
Presentación del cursoPresentación del curso Microsoft .NETMicrosoft .NET
Conceptos FundamentalesConceptos Fundamentales
.NET Framework 2.0.NET Framework 2.0 ¿Qué es el Framework? ¿Qué es el Framework? Common Language RuntimeCommon Language Runtime MSILMSIL AssemblyAssembly
¿Qué es un Framework?¿Qué es un Framework? Marco de trabajoMarco de trabajo Puede estar compuesto porPuede estar compuesto por
Librerías de clasesLibrerías de clases DocumentaciónDocumentación AyudaAyuda EjemplosEjemplos TutorialesTutoriales Etc.Etc.
.NE
T F
ram
ew
ork
.NE
T F
ram
ew
ork
¿Qué es el .NET Framework? ¿Qué es el .NET Framework? .N
ET
Fra
me
wo
rk.N
ET
Fra
me
wo
rk
Paquete de software fundamental de la Paquete de software fundamental de la plataforma .NETplataforma .NET
Se distribuye en forma libre y gratuitaSe distribuye en forma libre y gratuita Es necesario para crear aplicaciones Es necesario para crear aplicaciones
(compilar) como para ejecutar las (compilar) como para ejecutar las mismasmismas
Microsoft .NET utiliza el modelo de Microsoft .NET utiliza el modelo de ejecución de “maquina virtual”ejecución de “maquina virtual”
Operating System
Common Language Runtime
Base Class Library
ADO .NET and XML
ASP .NETWeb Forms Web ServicesASP.NET Mobile Controls
WindowsForms
Common Language Specification
VB C++ C# J# …V
isua
l Stu
dio
.NE
T
.NE
T F
ram
ew
ork
.NE
T F
ram
ew
ork
El CLREl CLR
Es un entorno de ejecución que corre Es un entorno de ejecución que corre por sobre el sistema operativo y que es por sobre el sistema operativo y que es el encargado de ejecutar las el encargado de ejecutar las aplicaciones y proveerles servicios en aplicaciones y proveerles servicios en tiempo de ejecución.tiempo de ejecución.
IntroducciónIntroducción La BCL es un conjunto de tipos (clases, interfaces, La BCL es un conjunto de tipos (clases, interfaces,
etc.) básicos que vienen predefinidos en el .NET etc.) básicos que vienen predefinidos en el .NET FrameworkFramework
Estos tipos están organizados en jerarquías lógicas de Estos tipos están organizados en jerarquías lógicas de nombres, denominado NAMESPACEnombres, denominado NAMESPACE
Estos tipos tambien son INDEPENDIENTES del Estos tipos tambien son INDEPENDIENTES del lenguaje de desarrollolenguaje de desarrollo
La BCL es extensible y totalmente orientada a objetosLa BCL es extensible y totalmente orientada a objetos
Base Class LibraryBase Class LibraryB
ase
Cla
ss L
ibra
ryB
ase
Cla
ss L
ibra
ry
El namespace raíz es SYSTEMEl namespace raíz es SYSTEM
System System
System.DataSystem.Data System.XmlSystem.Xml
System.WebSystem.Web
GlobalizationGlobalization
DiagnosticsDiagnostics
ConfigurationConfiguration
CollectionsCollections
ResourcesResources
ReflectionReflection
NetNet
IOIO
ThreadingThreading
TextText
ServiceProcessServiceProcess
SecuritySecurity
CommonCommon
OleDbOleDb
SQLTypesSQLTypes
SqlClientSqlClient
XPathXPath
XSLTXSLT
RuntimeRuntimeInteropServicesInteropServices
RemotingRemoting
SerializationSerialization
SerializationSerialization
ConfigurationConfiguration SessionStateSessionState
CachingCaching SecuritySecurity
ServicesServicesDescriptionDescription
DiscoveryDiscovery
ProtocolsProtocols
UIUIHtmlControlsHtmlControls
WebControlsWebControls
System.DrawingSystem.Drawing
ImagingImaging
Drawing2DDrawing2D
TextText
PrintingPrinting
System.Windows.FormsSystem.Windows.Forms
DesignDesign ComponentModelComponentModel
Base Class LibraryBase Class LibraryB
ase
Cla
ss L
ibra
ryB
ase
Cla
ss L
ibra
ry
Microsoft Intermediate Language Microsoft Intermediate Language (MSIL)(MSIL) El compilador convierte al código soportado El compilador convierte al código soportado
por .NET en lenguaje intermedio. por .NET en lenguaje intermedio. Es un conjunto de instrucciones independientes de Es un conjunto de instrucciones independientes de
la CPU, que se convierten en código nativo al la CPU, que se convierten en código nativo al ejecutarse.ejecutarse.
Para convertir MSIL a código nativo, se utilizan Para convertir MSIL a código nativo, se utilizan compiladores llamados “Just In Time” JITcompiladores llamados “Just In Time” JIT
Los archivos ejecutables estan conformados porLos archivos ejecutables estan conformados por MSILMSIL Datos Adicionales (Metadata)Datos Adicionales (Metadata)
El MSIL es independiente del lenguaje en el que se El MSIL es independiente del lenguaje en el que se desarrolladesarrolla
.NE
T F
ram
ew
ork
.NE
T F
ram
ew
ork
AssemblyAssembly
Un Un Assembly es la unidad mínima de Assembly es la unidad mínima de ejecución, distribución, instalación y ejecución, distribución, instalación y versionado de aplicaciones .NETversionado de aplicaciones .NET
Una aplicación puede estar compuesta por Una aplicación puede estar compuesta por uno o mas Assembliesuno o mas Assemblies
Un Assembly es:Un Assembly es: Un archivo .exeUn archivo .exe Un archivo .dllUn archivo .dll
EjemploEjemplo
Se crea una aplicación en uno de los lenguajes Se crea una aplicación en uno de los lenguajes soportados (C#.NET, VB.NET, C++.NET, etc)soportados (C#.NET, VB.NET, C++.NET, etc)
Al compilar, el .NET Framework convierte la Al compilar, el .NET Framework convierte la aplicación al lenguaje MSIL, independientemente del aplicación al lenguaje MSIL, independientemente del lenguaje utilizadolenguaje utilizado
Al resultado se lo llama Assembly, este mismo esta Al resultado se lo llama Assembly, este mismo esta “precompilado”“precompilado”
Al ejecutarse la aplicación, el .NET Framework Al ejecutarse la aplicación, el .NET Framework termina de compilar de manera JIT a codigo nativo, y termina de compilar de manera JIT a codigo nativo, y este es ejecutado por el CLR.este es ejecutado por el CLR.
DemoDemo