Está en la página 1de 54

Clase I

•[nombre instructor]
•[fecha]
Agenda
 Presentación del curso
 Programación Orientada a Objetos
 Conceptos Fundamentales
 Herencia, Encapsulamiento, Polimorfismo
 .NET Framework 2.0
 ¿Qué es el Framework?
 Common Language Runtime
 MSIL
Agenda
 Presentación del curso
 Programación Orientada a Objetos
 Conceptos Fundamentales
 Herencia, Encapsulamiento, Polimorfismo
 .NET Framework 2.0
 ¿Qué es el Framework?
 Common Language Runtime
 MSIL
Presentación

 Programa de Pasantias
 Programa Desarrollador 5 Estrellas 2005
 Como usar el contenido del curso
 Programa de Empleos
Presentación
Programa de Pasantias
 Formación de Desarrolladores en .NET
 +Valor
 +Posibilidades
 +Empleo
 Contenido, Programa Desarrollador 5 Estrellas 2005
 (hasta la 2da estrella)
 Exámenes
 Programa DCE2005 , 2da Estrella Aprobada
 Asistencia al entrenamiento presencial (80%) de las 16
clases
Presentación
Programa de Pasantias
Presentación
Programa Desarrollador 5 Estrellas 2005

 Es un conjunto de herramientas que te permiten


aprender y desarrollar tus habilidades en la
tecnología .NET
 En que Consiste:
 Cursos Gratuitos en Internet
 Exámenes de evaluación
 Comunidad de Profesionales en desarrollo
 Alto reconocimiento del mercado
Presentación
Programa Desarrollador 5 Estrellas 2005
Presentación
Como usar el contenido del curso

 Registrese en DCE2005 www.dce2005.com


 Leer el contenido y realizar las prácticas
 Materiales:
 .NET Esencial
 Fundamentos de la Programación
 Programación Orientados a Objetos
 Primera Estrella
 .NET Framework 2.0
 Introducción a C# 2005
 Introducción a VB.NET 2005
 Segunda Estrella
Presentación

 Programación Web con C# 2005


 Programación Web con VB.NET 2005
Como usar el contenido del curso

 Registrarse con datos reales


 Cuenta asociada con .net passport
 Esos datos serán luego usados en el programa de empleo
 Registrarse con el código de institución
 No rendir los exámenes hasta que esten preparados
 Usar Foros, chats, y los recursos que encuentren en el sitio
dce2005
Presentación
Programa de Empleos
 Oportunidades de Empleos
 Sitio de empleos .net
 Para quienes completen y aprueben el curso
 Trabajo en Socios de Negocios
Presentación
Temas a desarrollarse en el Curso
 Introducción al Programa
 Programación Orientado a Objetos y Servicios
 Microsoft .Net Framework v2.0
 IDE VisualStudio.Net 2005
 Sintaxis del Lenguaje (C# y VB.NET)
 SQL Server 2005
 Sentencias SQL
 ADO.NET 2.0
 BCL (Base Class Library)
 ASP.NET 2.0
Presentación

 ASP.NET WebService
 Seguridad
Agenda
 Presentación del curso
 Programación Orientada a Objetos
 Conceptos Fundamentales
 Herencia, Encapsulamiento,
Polimorfismo
 .NET Framework 2.0
 ¿Qué es el Framework?
 Common Language Runtime
 MSIL
¿Qué es la Programación Orientada a
Objetos?
 Es una manera de construir Software
basada en un nuevo paradigma.
 Propone resolver problemas de la
realidad a través de identificar objetos y
relaciones de colaboración entre ellos.
 El Objeto y el mensaje son sus
elementos fundamentales.
POO
¿Qué es lo que ves?
POO
¿Qué es lo que ves?
POO
¿Qué es lo que ves?
POO
¿Qué es lo que tienen en común?
POO
¿Qué es lo que tienen en común?
POO
¿Qué es una clase?

 Clase  Clasificación
 Clasificación en base a
comportamiento y atributos comunes
 Crea un vocabulario
 La forma en que nos comunicamos
 La forma en que pensamos
POO
¿Qué es una clase?

 Construcción Estática
 Describe:
 Comportamiento común
 Atributos [estado]
 Estructura de datos
 Incluye:
 Datos
 Funciones o métodos
POO
Constructor y Destructor

 Dos métodos de las clases


 Existen por defecto
 Constructor, inicializa valores
 Destructor, libera recursos al finalizar
la vida de una instancia de una clase
creada en memoria
 Existen constructores y destructores
por defecto
POO
¿Qué es un objeto?
POO
¿Qué es un objeto?
 Instancia de una clase
 Un objeto posee:
 Identidad: Relación única entre el objeto
del modelo y el ente de la realidad que
representa. Se implementa a través de un
id único en el modelo.
 Comportamiento: Resuelve un conjunto
particular de problemas a través de su
protocolo.
 Estado: Almacena información
 Fija
 Variable
POO
Demo
•Modelizando el mundo real
POO
Pilares de POO

Herencia Polimorfismo Encapsulamiento

Abstracción
POO
Abstracción
 Ignorancia selectiva
 Decide que es importante y que no lo es
 Se enfoca [depende] en lo que es importante
 Ignora [no depende] de lo que no es
importante
 Utiliza la encapsulación para reforzar la
abstracción
POO
Encapsulamiento

Acelera() 125
km
/h
300 km/h
velocidad

Frena() 40 km
/h
POO
¿Por qué utilizar encapsulamiento?
 Dos grandes razones
 Control
 Cambio
POO
Encapsulamiento

 Los métodos
Acelera() son públicos:
son accesibles
desde fuera
velocidad  Los datos son
privados:
Frena() accesibles
desde dentro

Controlador del Motor


POO
Datos del Objeto
 Describe los objetos de forma individual
 Color: Azul
 Color 2: Gris
 Instrumental Digital
 Ventanas eléctricas
 4 asientos

 Color: Verde
 Color 2: Negro
 Instrumental digital
 2 asientos
POO
Datos Estáticos

 Describen información para todos los objetos


 Número de llantas: 4
 Capacidad del tanque: 40
litros
 Tipo de Transmisión:
Automática
POO
Métodos Estáticos

 Solo pueden acceder a datos


compartidos por todas las instancias
de la clase.
 Encapsula los datos estáticos
 Son invocados en la clase, no en el
objeto
 No es necesaria la creación de una
instancia para invocarlos
POO
Métodos Estáticos

llantas
tanque
transmision

NumeroLlantas()
CapacidadTanque()
TipoTransmision()

Automóvil
POO
Herencia

 Es “un tipo de” relación


 Relación “es un”
 Entre Clases Transporte

 Va de la generalización a la Acelera

especialización Frena

 Clase base Automóvil

 Clase derivada
 Hereda la implementación
POO
Jerarquías de Clase
Transporte

Marítimo Aire Nieve Tierra

DentroAtmosfera FueraAtmosfera 1-Persona N-Personas


POO
Jerarquías de Clase – Otro ejemplo

Cuentas

Cuenta Corriente Caja Ahorro

Común Sueldo
POO
Herencia Múltiple

 Singular: La clase hija deriva de una única clase


padre
 Múltiple: La clase hija deriva de varias clases padre
 No es soportada por todos los lenguajes
 Puede ser confusa
Nieve 1-Persona Terrestre
POO
Laboratorio
•Creando clases
POO
Polimorfismo y sobrecarga
 Polimorfismo: desconocimiento del cliente sobre la
clase concreta del objeto que brinda el servicio.
Esto me da libertad de intercambiar libremente el
objeto servidor.
 Sobrecarga: Definir más de un método por cada
mensaje, los tipos de los argumentos ayudan a
decidir a qué mensaje se invoca.
 Tareas similares son realizadas por métodos con
mismo nombre
 Suma
 Enteros
 Decimales
 Fracciones
 Simplifican la tarea del desarrollador, al no tener
que recordar distintos nombres para
POO

comportamientos iguales.
Polimorfismo

 La definición del método reside en la clase base


 La implementación del método reside en la clase derivada
 La invocación es resuelta al momento de ejecución
 Early binding
 Late binding

Auto
Acelera
Frena

Cohete
Acelera
Frena
Transporte

Acelera
Frena

Caballo
Acelera
POO

Frena
Clases Base Abstractas

 Existen solamente para que se


deriven de ellas
 No tiene sentido crear una instancia de
este tipo de clases
 Métodos abstractos
 Clases abstractas – Concrete classes
Automóvil
Color
Asientos
Transporte
Acelera
frena ?
POO
Resumen
 ¿Qué es la Programación Orientada
a Objetos?
 Clases y Objetos
 Métodos y Atributos
 Encapsulamiento
 Herencia
 Polimorfismo
POO
Agenda
 Presentación del curso
 Programación Orientada a Objetos
 Conceptos Fundamentales
 Herencia, Encapsulamiento, Polimorfismo
 .NET Framework 2.0
 ¿Qué es el Framework?
 Common Language Runtime
 MSIL
¿Qué es un Framework?
 Marco de trabajo
 Puede estar compuesto por
 Librerías de clases
 Documentación
 Ayuda
 Ejemplos
 Tutoriales
.NET Framework

 Etc.
¿Qué es Framework 2.0?

Herramientas Clientes
de Desarrollo

Aplicaciones
Bases de Datos Web ASP.NET
.NET Framework

Servicios Aplicaciones
.NET Web XML de Usuario
Framework
VB C++ C# J# …

Common Language Specification

Visual Studio .NET


ASP .NET Windows
Web Forms Web Services
ASP.NET Mobile Controls
Forms

ADO .NET and XML

Base Class Library

Common Language Runtime


.NET Framework

Operating System
¿Qué problemas resuelve .NET?

 Desde Internet, muchas aplicaciones y


dispositivos están fuertemente
comunicados entre sí
 Los programadores escribían
arquitectura en lugar de aplicaciones
 Los programadores tenían
conocimientos limitados o debían
.NET Framework

aprender nuevos lenguajes


.NET Framework
 El .NET Framework constituye las bases
sobre las que, tanto aplicaciones como
servicios, son ejecutadas y construidas.
 La naturaleza unificada del .NET Framework
permite que cualquier tipo de aplicación sea
desarrollada mediante herramientas
comunes haciendo la integración mucho
mas simple.
 El .NET Framework esta compuesto de:
.NET Framework

 El CLR (Common Language Runtime)


 La BCL (Base Class Library)
CLR – Common Language Runtime
 El CLR es el motor de ejecución (runtime)
del .NET Framework.
 Ofrece servicios automáticos tales como:
 Administración de la memoria
 Seguridad del código, asegurando:
 Conversión de tipos
 Inicialización de variables
 Indexación de arreglos fuera de sus
.NET Framework

límites
 Versionamiento
Componentes de CLR

.NET Framework Class Library Support

Thread Support COM Marshaler

Type Checker Exception Manager

Security Engine Debug Engine

MSIL to Native Code Garbage


Compilers Manager Collector
.NET Framework

Class Loader
CTS (Common Type System)
 Define un conjunto común de “tipos”
orientado a objetos
 Todo lenguaje de programación debe
implementar los tipos definidos por el CTS

 Todo tipo hereda


directa o
indirectamente del
tipo OBJECT
.NET Framework

 Tipos de VALOR y
de REFERENCIA
Microsoft Intermediate Language (MSIL)

 El compilador convierte al código soportado por


.NET en lenguaje intermedio.
 Es un conjunto de instrucciones independientes de
la CPU, que se convierten en código nativo al
ejecutarse.
 Para convertir MSIL a código nativo, se utilizan
compiladores llamados “Just In Time” JIT
 Los archivos ejecutables estan conformados por
 MSIL
.NET Framework

 Datos Adicionales (Metadata)


 El MSIL es independiente del lenguaje en el que se
desarrolla
Resumen
 ¿Qué es el .NET Framework?
 Common Language Runtime
 Common Type System
 Microsoft Intermediate Language
.NET Framework

También podría gustarte