SlideShare ist ein Scribd-Unternehmen logo
1 von 120
TALLERDesarrollo de Aplicaciones Profesionales con Tecnologías .NET
Sorey García(@soreygarcia)
AGENDA Sesión 1 Introducción a los conceptos básicos ( 1 hora) Orientación a Objetos Aplicaciones Distribuidas .NET Framework TALLER: Entendiendo y construyendo la base de nuestro proyecto (1 hora)
AGENDA Sesión 2 (2 horas) TALLER: Construyendo aplicación profesional. Presentación (Winforms, ASP.NET) Lógica de Negocio Acceso a Datos (LINQ, SQL Server 2008)
¡ADVERTENCIA! Este taller es para personas con conocimientos básicos, y también para aquellos que necesitan refrescarse o renovarse un poco. Los temas serán abordados en sus formas más simples con el ánimo de dar las herramientas necesarias para abordar las dos sesiones del taller.
¡ADVERTENCIA! Hacer una aplicación profesional no necesariamente significa hacer algo elaborado o técnicamente complejo, significa construir software pensando en su crecimiento, evolución y mantenimiento futuro.
Un par de consejos antes de empezar…
Antes de intentar aprender algo ten presente… lo complejo, alguna vez… fue simple, entiende lo primero lo simple.
El problema está en la técnica,  no en la herramienta
Manejar correctamente los conceptos te ayudará a defenderte en cualquier herramientaTu preocúpate por aprender a razonar y pensar, para aprender a usar las herramientas están los tutoriales
¿Listos?
AGENDA Sesión 1 Introducción a los conceptos básicos ( 1 hora) Orientación a Objetos Aplicaciones Distribuidas .NET Framework TALLER: Entendiendo y construyendo la base de nuestro proyecto (1 hora)
¿Qué es la  orientación a objetos?
La orientación a objetos es un  paradigma de programación
Si bien esta definición es correcta, el problema está, en que tanto lo comprendemos…
Intentemos algo simple… La orientación a objetos es  una forma de ver las situaciones y de analizar el entorno…
…es una forma de entender un problema identificando las entidades  principales que se encuentran en el
Identificar los conceptos relevantes  o las entidades involucradas  en un problema significa… El propósito de la programación orientada a objetosconsiste en proporcionar una solución informática identificando los conceptos relevantespresentes en el problema conceptos relevantes  = entidades abstraer los detalles y particularidades y emitir un concepto genérico
Esto se logra identificando las características comunesde un grupo de objetos y las accionesque realizan  o bien que producen  algún efecto sobre ellos
La programación orientada a objetos (POO) es por tanto  una forma de desarrollar software, pensando en las entidades principales del problema que dicho sistema pretende resolver y por tanto los datos que se manipularán de esas entidades y las acciones de las que estas son responsables dentro del sistema.
El lenguaje de programación es  la herramienta  para resolver elproblema
El propósitode la POO no tiene que ver con  el lenguaje de programación Sobre el lenguaje de programación lo que podemos decir es que este soporta unas y otras características de la Orientación a Objetos También podemos decir que cada quien elige la herramienta que satisface las necesidades de su proyecto, tanto a nivel de implementación como de conocimiento disponible en su recurso humano
Y aunque es claro que existe más  de una herramienta para resolver unproblema
Es seguro que también hay  formas más fáciles  de hacerlo…
Veamos algunos conceptos clave…
¿Qué es un Objeto?
Un Objeto es…  Cualquier Cosa
!En serio! Cualquier Cosa
Cualquier Cosa …de la que puedas emitir un concepto. Es decir… Cualquier Cosa, todo es un objeto.
Veamos,  Este es un objeto Es un automóvil  de plástico, rojo con 4 llantas y 2 puertas
Si realizáramos el proceso mental lentamente,  nos daríamos cuenta de que al ver el objeto emitimos un concepto preconcebido es decirautomóvil
En la imagen cada uno de los elementos  que vemos es considerado  un objeto Sin embargo de todos ellos  podemos emitir un concepto conocido  y para ello usamos la palabra globo
A ese concepto conocidoque representa una  agrupación de objetos …lo llamamosClase
Unaclase es como un molde de galletas… … este determina la forma y característicasque  la galleta (el objeto) va a tener, sin ser el objeto real
La clasees una…  …los objetosson todos los que podamos crear mentalmente a partir de dicha claseo concepto
¿Recuerdan eso de la abstracción? Pues bien… Una claseesta compuesta por  características(atributos o propiedades)  y por comportamientos(acciones o métodos) …esos que elegimos como generalidades del conjunto de objetos comunes de nuestro problema a resolver
Así entonces… entidad =  concepto relevante  =  clase
Las característicasy comportamientosde una clase son determinadas por el contexto del problema o escenario Esto en programación quiere decir, que dentro de un sistema, solo implementamos los atributosy métodosrelacionados con el ámbito del problema que estamos solucionando.
Veamos algunos conceptos adicionales… A los valores que tienen los atributos de un objetose les conoce como el estado del objeto, y a los atributos y métodos que ofrece se les conoce como la interfazal código usado para construir las clases se le conoce como la implementaciónde la clase.
Los objetosse comunican se comunican con otros a través de mensajes Un mensaje es una comunicación dirigida a un objeto, que le ordena que ejecute uno de sus métodos con ciertos parámetros asociados al evento que lo generó. Wikipedia
Con respecto a la comunicación entre objetos tenemos más principiosalta cohesión y el bajo acoplamiento
Cuando decimos que un objeto tiene una alta cohesiónhablamos de que sus características y comportamientos están estrechamente relacionados La relación que tienen esta determinada por el contexto del problema a resolver
Cuando decimos que un objeto tiene una bajo acoplamiento hablamos del nivel de independencia que tiene un objeto con respecto a otros El hacer un objeto independiente de los demás ayudará a que ese objeto pueda ser usado en otros contexto
Los principios que dirigen la orientación a objetos son… … la modularidad y la reusabilidad Qué son?
En términos simples la modularidadsignifica trabajar por partes…Esas partes deberían ser lo más independientes posibles, como piezas de Lego, de esa forma podrías usar diferentes piezas en la construcción de otro sistema
y la reusabilidadsignifica¡No se invente la rueda! Lo que ya esta hecho es para usarse y algunas de las cosas que no están hechas, deben construirse pensando en que alguien necesitará usarlo alguna vez. Por otro lado recuerde, reusar no es simplemente  copiar y pegar  código.
Por último, veamos algunas características de la  Programación Orientada a Objetos
Encapsulamiento
Herencia
Polimorfismo
Empecemos a conocer nuestro problema¿Qué tal algo que todos conocemos? Aplicación de Aforo a Campus Party
Algunos Objetos (Diagrama pendiente)
AGENDA Sesión 1 Introducción a los conceptos básicos ( 1 hora) Orientación a Objetos Aplicaciones Distribuidas .NET Framework TALLER: Aprendiendo .NET con C# (1 hora)
¿Qué es una aplicación distribuida?
Es una aplicación con distintos componentesque se ejecutan en entornos separados, normalmente en diferentes plataformas conectadas a través de una red Wikipedia
¿Se entendió? Veamos que tanto…
¿Cuales son los componentesque se distribuyen? ¿Qué criterios se usan para determinar que conforma un componente?¿A través de que mecanismos se realiza la comunicación entre componentes distribuidos?¿Qué es un componente?
Algunos Conceptos… Protocolos Cliente/Servidor Capas Despliegue Webservices UML Servicios Objetos Interfaces Niveles Comunicación Interoperabilidad Arquitectura Lógica de Negocio Acceso a Datos Interfaz de Usuario Paquetes Componentes
Vamos por partes…¿A qué se refiere la distribución? Las distribución refiere a la construcción de software por partes, a las cuales les son asignadas un conjunto específicode responsabilidades  dentro de un sistema.
Esta distribución como bien enunciaba la definición formal, habla de que las partes o componentes se encuentran en entornos separados, sin embargo, lo que tiene implícito esta definición, es que para realizar esta separación física primero debe tenerse clara la separación lógicade las partes de una aplicación, esto quiere decir que programáticamente existe una forma de separaro agruparlos componentes.
La separación físicano es en todas las ocasiones “maquinas diferentes” de acuerdo a la arquitectura también puede ser la ubicación de un conjunto de funcionalidades en archivos, rutas o tecnologías diferentes dentro de la misma máquina
Ahora bien, cuando hablemos de distribución lógica lo entenderemos como separación por “Capas” (layers) y cuando hablemos de distribución física usaremos el término separación en “Niveles” (tiers)
La separación por capas y niveles hace parte de la arquitectura del sistema y es definida por el arquitecto de la aplicación.
“Las capasdentro de una arquitectura son un conjunto de servicios especializados que pueden ser accesibles por múltiples clientes y que deben ser fácilmente reutilizables.”
Las capas además, según el escenarioy tipo de aplicación, están separadas físicamente.Si, físicamente! Lo que significa que una capa puede ser a su vez un nivel
Una capa puede contener muchoscomponentes, un mismo componente puede ubicarse en variascapas de acuerdo a su naturaleza y a las consideraciones explicitas de la arquitectura … como? No hay problema, lo iremos entendiendo, de eso se trata…
¿Qué es un componente? Veamos una definición formal...Un componentees un elementode software que encapsulauna serie de funcionalidades. Un componentees una unidad independiente, que puede ser utilizado en conjunto con otros componentes para formar un sistema más complejo.
Cada componente de un sistema puede verse como un paqueteo módulo Un componente esta compuesto por elementos que pueden ser clasesy/o recursos complementarios como archivos de configuración, imágenes, entre otros. Y a su vez esas clases y recursos pueden están agrupados dentro del componente en subpaquetes, de acuerdo a su naturaleza o necesidades de negocio.
En este punto visualizamos varios conceptos que podemos presentar de la siguiente forma… Aplicación Niveles Capas Componentes Paquetes Clases Otros Recursos Sub paquetes
Ahora bien… El paradigma básico de la separación por capas establece al menos 3 partes distintas dentro de una aplicaciónLa PresentaciónLa Lógica de NegocioEl Acceso a Datos y los Datos
La Presentación o interfaz de usuario se refiere al mecanismo de interacción del usuario con el sistemaLos tipos de interfaces de software más comunes son las aplicaciones de ventanas y web Los tipos de interfaces de hardware más comunes son el ratón, el teclado, el micrófono, pantallas táctiles, dispositivos de audio
La Lógica de Negocio refiere el conjunto de reglas que determinan específicamente como funciona un sistema, según su naturaleza, y bajo que parámetros y condiciones de acuerdo a las necesidades de los clientes y usuarios.
El acceso a datos refiere al medio a través del cual podemos acceder y manipular los datospersistentes de un sistemaEl almacenamiento de datos refiere a la forma en que se encuentran guardados dichos datos, por ejemplo, en archivos o bases de datos.
Así nos encontramos con componentes de diferentes tipos Ejecutables, Páginas Web, Librerías, Controles, Procedimientos Almacenados, Servicios Web…
Después de conocer estos conceptos básicos, podemos pasar entonces a ver, los diferentes tipos de aplicaciónAplicaciones MonolíticasAplicaciones Cliente/ServidorAplicaciones de 3 CapasAplicaciones de N Capas
Una aplicación monolítica o de una capa es aquella cuya interfaz, lógica de negocio y acceso a datos se encuentran mezclados o altamente acoplados, esto dificulta que pueda hacerse una separación lógica y física donde alguna de las partes pueda ser reutilizable.
Una aplicación Cliente/Servidor o aplicación de doscapas es aquella donde los datos y la lógica de negocio se encuentran separados de la interfaz, este tipo de aplicación también es denominada, cliente liviano. Otro escenario válido para una aplicación Cliente/Servidor, se da separando los datos de la interfaz y la lógica de negocio, este tipo de aplicación también es denominado, cliente pesado.
Una aplicación 3 capas es aquella donde la interfaz, la lógica de negocio, el acceso a datos y los datos se encuentran separados.
¡ATENCIÓN! Es muy importante entender, que la separación de la que se habla no es necesariamente física, como ya se había dicho antes, la primera separación que se da es lógica y debemos reiterar que la separación lógica es programática.
Ahora, para hacer un trabajo bien hecho, hay que reconocer que las consideraciones asociadas al desarrollo por capas…
¿Que consideraciones deberíamos tener en cuenta cuando pensamos en la Capa de Presentación?
¿Y las consideraciones de la Capa de Lógica de Negocios?
¿Y las consideraciones de la Capa de Acceso a Datos?
Bueno y si ya están separadas las 3 capas principales, ¿qué es entonces una de aplicación de N capas?
Pues bien, la evolución de la tecnología y las redes de comunicaciones, hacen que cada día se generen nuevos escenarios de intercambio de información entre empresas, y entre los mismos sistemas existentes dentro de las empresas, de forma que se satisfagan las necesidades constantes y cambiantes de clientes y usuarios, para quienes debe resultar transparenteel obtener información de un sistema u otro.
Otra de las razones importantes por las que surge este concepto, es debido a que en la evolución del desarrollo de software, se ha identificado la necesidad de crear nuevas capas, especializadas en funciones especificas, diferentes a las 3 identificadas previamente.Tal es el caso de la seguridad, el control de excepciones, el transporte de datos entre capas, la generación de trazas de errores, entre otros.
Usuarios Auditoria y Control  de Excepciones Seguridad Comunicación Componentes de Interfaz de Usuario Componentes de Proceso de Interfaz de Usuario Interfaces de Servicio Flujos de Negocio Componentes de negocio Entidades de Negocio ComponentesAccesoDatos Agentes de Servicio ServiciosExternos Orígenes de Datos UnapropuestaMicrosoft Patterns & Practices
¿Qué arquitectura tendrá nuestro ejemplo de Campus Party? (Diagrama pendiente)
AGENDA Sesión 1 Introducción a los conceptos básicos ( 1 hora) Orientación a Objetos Aplicaciones Distribuidas .NET Framework TALLER: Entendiendo y construyendo la base de nuestro proyecto (1 hora)
¿Qué es un  Framework? ¿Recuerdan esto? “No se invente la rueda....”
Veámoslo así… Los edificios de una ciudad son todos los tipos de software que podemos construir
Suponga que usted necesita construir un edificio…
Ahora imagine que a usted le tocara construir cada una de las partes…
¿Cuánto tiempo cree que tardaría  en terminar? Lo mismo sucede con el software, si cada vez tuviéramos que construir todos los componentes que lo conforman, tardaríamos mucho más tiempo…
¿Qué es un Framework? Un frameworkes, básicamente, un conjunto de clases que interactúan en forma cooperativapara dar solución a una determinada necesidad.
Ahora un poco menos conceptual... En términos simples un frameworkes un conjunto de clases base agrupadas en componentes, que pueden ser reutilizadas para la construcción de nuevo software
He ahí la razón para entender los conceptos iniciales Bien sea por que vas a usar un framework o por que quieres construir uno
Las características principales  de un frameworkson:  Estar enfocado en un tema específico  y el ser altamente reutilizable.
Microsoft .NET .NET es el conjunto de tecnologías en las que Microsoft  ha trabajado 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.
¿Qué es Visual Studio .NET? Es entorno de desarrollo (IDE), la herramienta sobre la cual los programadores desarrollan el software
Beta Línea de Tiempo .NET Framework 4 2010 2008 2010 2008 .NET Framework 3.5 .NET Framework 3.0 2007 2005 .NET Framework 2.0
¿Qué es  .NET Framework?
Es una Plataforma de Desarrollo, la cual esta compuesta por: ,[object Object]
Bibliotecas de funcionalidad (Class Library)
Lenguajes de programación
Compiladores.NET Framework
¿Qué NO es? NO es un sistema operativo NO es un lenguaje de programación NO es un entorno de desarrollo NO es un servidor de aplicaciones
¿Qué es el .NET Framework? Un conjunto de tecnologías que me permiten: Unir las aplicaciones Web actuales que están aisladas, de manera muy fácil Acceder a información en cualquier momento, en cualquier lugar Simplificar el desarrollo y la implementación Desarrollar aplicaciones para cualquier dispositivo, sin necesidad de mucho esfuerzo. Reutilizar mucho código Hacer más, con menos
Algunas Características Completamente Orientado a Objetos Multilenguaje Modelo de programación único para todo tipo de aplicaciones y dispositivos de hardware Se integra fácilmente con aplicaciones existentes desarrolladas en plataformas Microsoft o en otras plataformas.
Línea de Tiempo .NET Framework Visual Studio 6.0 Visual Basic VBA Visual FoxPro VBScript C++ J++ JScript ASP Visual Studio .NET 2003 .NET Framework 1.1 .NET Compact Framework J# Visual Studio 2008 .NET Framework 3.0 – 3.5 .NET Compact Framework 2000              2001         2002         2003         2004    2005    2006    2008      2010 Visual Studio 2005 .NET Framework 2.0 .NET Compact Framework 2.0 Visual Studio .NET 2002 .NET Framework 1.0 Visual Basic .NET C# Visual Studio 2010 .NET Framework 4.0 F#
VB C++ C# Visual Studio .NET J# … Common Language Specification ASP.NET: Servicios Web y Web Forms WindowsForms ADO.NET: Datos y XML Biblioteca de Clases Base Common Language Runtime Microsoft .NET Framework 2.0
¿Qué son los demás? 2.0 .NET Framework 2.0 VB C# J# IronPhyton Ruby … 3.0 .NET Framework 3.0 CLS y CTS ASP.NET WPF WCS WF & WCF  Enhancements Dynamic Data ADO.NET LINQ Additional  Enhancements Entity  Framework WCF WF Add-in  Framework WindowsForms MVC Data Services Biblioteca de Clases CommonLanguage Runtime (CLR) Windows 7, Windows Vista,Windows XP,Windows Server 2008
Microsoft .NET Framework Presentación Acceso a Datos Servicios Windows Presentation Foundation ASP.NET (WebForms, MVC, Dynamic Data) Entity Framework ADO.NET Data Services Windows Communication Foundation WinForms LINQ to SQL Windows Workflow Foundation “Velocity” Core Base Class Library Dynamic Language Runtime Languages Managed Extensibility Framework LINQ Parallel Extensions Common Language Runtime
Common Language Runtime (CLR) Es el motor de ejecución de .NET Caracteristicas: Compilacion Just In Time (JIT) Gestion de Memoria (Garbage Collector) Gestion de Errores (excepciones) Ejecucion basada en componentes (assemblies) Gestion de seguridad Multithreading
¿Como trabaja el CLR? Assembly  (MSIL) Compilador Bibliotecao Ejecutable Código Fuente Cualquierlenguaje .NET
Código MSIL Código Fuente Compilador Lenguaje Metadata Ejecución JIT Compiler CódigoNativo Tiempos: Compilación y Ejecución Compilación Antes de la instalación o cuando se ejecutaporprimeravez
Modelo de Ejecución del CLR Código Fuente VB.NET C++.NET C# Componente No Manejado Compilador  VB.NET Compilador C# Compilador C++ .NET Código  Manejado Assembly Código MSIL Assembly Código MSIL Assembly Código MSIL Common Language Runtime Compilador JIT Código Nativo Sistema Operativo (Windows)
Estructura de un proyecto .NET Solución Proyectos (Assemblies) Namespaces Clases Archivos de configuración Recursos adicionales
Descripción de Tipos Clases Clases Base Interfaces Implementadas Atributos de las Clases Métodos de las Clases MiBiblioteca.DLL Metadata Manifiesto del Assembly Código CompiladoMSIL Nombre Versión Cultura Recursos Otros Assemblies Permisos de Seguridad Tipos Externos Estructura de un Assembly
AGENDA Sesión 1 Introducción a los conceptos básicos ( 1 hora) Orientación a Objetos Aplicaciones Distribuidas .NET Framework TALLER: Entendiendo y construyendo la base de nuestro proyecto (1 hora)

Weitere ähnliche Inhalte

Was ist angesagt?

Programacion orientada objetos-1
Programacion orientada objetos-1Programacion orientada objetos-1
Programacion orientada objetos-1Scott Chavez
 
Orientacion a objetos cristina cachero
Orientacion a objetos   cristina cacheroOrientacion a objetos   cristina cachero
Orientacion a objetos cristina cacheroLuis R Castellanos
 
Programación orientada a objetos, fundamentos
Programación orientada a objetos, fundamentosProgramación orientada a objetos, fundamentos
Programación orientada a objetos, fundamentosEdna Rheiner
 
Orientacion A Objetos Para Dummies
Orientacion A Objetos Para DummiesOrientacion A Objetos Para Dummies
Orientacion A Objetos Para DummiesSorey García
 
Programación Orientada a Objetos
Programación Orientada a ObjetosProgramación Orientada a Objetos
Programación Orientada a ObjetosJuan Carlos Riva
 
Fundamentos de Programación Orientada a Objetos
Fundamentos de Programación Orientada a ObjetosFundamentos de Programación Orientada a Objetos
Fundamentos de Programación Orientada a ObjetosMarines Ahuanlla
 
Fundamentos básicos de la programación orientada a objetos
Fundamentos básicos de la programación orientada a objetosFundamentos básicos de la programación orientada a objetos
Fundamentos básicos de la programación orientada a objetosALGLYS RAMIREZ
 
Metodologia orientada a objeto - libro
Metodologia orientada a objeto -  libroMetodologia orientada a objeto -  libro
Metodologia orientada a objeto - librotaninof
 
Programación Orientada a Objetos - Resumen
Programación Orientada a Objetos - ResumenProgramación Orientada a Objetos - Resumen
Programación Orientada a Objetos - ResumenKarlytoz_36
 
Programación Orientada a Objetos
Programación Orientada a ObjetosProgramación Orientada a Objetos
Programación Orientada a Objetospontifica
 
Trabajo de Programacion Orientada a Objetos.
Trabajo de Programacion Orientada  a Objetos.Trabajo de Programacion Orientada  a Objetos.
Trabajo de Programacion Orientada a Objetos.Vicente Alberca
 
Análisis y Diseño OO 1
Análisis y Diseño OO 1Análisis y Diseño OO 1
Análisis y Diseño OO 1Jano González
 

Was ist angesagt? (20)

Trabajo poo
Trabajo poo Trabajo poo
Trabajo poo
 
Programacion orientada objetos-1
Programacion orientada objetos-1Programacion orientada objetos-1
Programacion orientada objetos-1
 
Orientacion a objetos cristina cachero
Orientacion a objetos   cristina cacheroOrientacion a objetos   cristina cachero
Orientacion a objetos cristina cachero
 
POO sencillito
POO sencillitoPOO sencillito
POO sencillito
 
Poo
PooPoo
Poo
 
Programación orientada a objetos, fundamentos
Programación orientada a objetos, fundamentosProgramación orientada a objetos, fundamentos
Programación orientada a objetos, fundamentos
 
Orientacion A Objetos Para Dummies
Orientacion A Objetos Para DummiesOrientacion A Objetos Para Dummies
Orientacion A Objetos Para Dummies
 
Programacion orientado a objetos
Programacion orientado a objetosProgramacion orientado a objetos
Programacion orientado a objetos
 
Programación Orientada a Objetos
Programación Orientada a ObjetosProgramación Orientada a Objetos
Programación Orientada a Objetos
 
Fundamentos de Programación Orientada a Objetos
Fundamentos de Programación Orientada a ObjetosFundamentos de Programación Orientada a Objetos
Fundamentos de Programación Orientada a Objetos
 
Programación Orientada a Objetos
Programación Orientada a ObjetosProgramación Orientada a Objetos
Programación Orientada a Objetos
 
1 Paradigma Objetos
1 Paradigma Objetos1 Paradigma Objetos
1 Paradigma Objetos
 
PROGRAMACIÓN ORIENTADA A OBJETOS
PROGRAMACIÓN ORIENTADA A OBJETOSPROGRAMACIÓN ORIENTADA A OBJETOS
PROGRAMACIÓN ORIENTADA A OBJETOS
 
Fundamentos básicos de la programación orientada a objetos
Fundamentos básicos de la programación orientada a objetosFundamentos básicos de la programación orientada a objetos
Fundamentos básicos de la programación orientada a objetos
 
ESTUDIANTE
ESTUDIANTEESTUDIANTE
ESTUDIANTE
 
Metodologia orientada a objeto - libro
Metodologia orientada a objeto -  libroMetodologia orientada a objeto -  libro
Metodologia orientada a objeto - libro
 
Programación Orientada a Objetos - Resumen
Programación Orientada a Objetos - ResumenProgramación Orientada a Objetos - Resumen
Programación Orientada a Objetos - Resumen
 
Programación Orientada a Objetos
Programación Orientada a ObjetosProgramación Orientada a Objetos
Programación Orientada a Objetos
 
Trabajo de Programacion Orientada a Objetos.
Trabajo de Programacion Orientada  a Objetos.Trabajo de Programacion Orientada  a Objetos.
Trabajo de Programacion Orientada a Objetos.
 
Análisis y Diseño OO 1
Análisis y Diseño OO 1Análisis y Diseño OO 1
Análisis y Diseño OO 1
 

Andere mochten auch

Xamarin 基礎講座 2016年7月版
Xamarin 基礎講座 2016年7月版Xamarin 基礎講座 2016年7月版
Xamarin 基礎講座 2016年7月版Yoshito Tabuchi
 
Desarrollo de Apps nativas multiplataforma con Xamarin
Desarrollo de Apps nativas multiplataforma con XamarinDesarrollo de Apps nativas multiplataforma con Xamarin
Desarrollo de Apps nativas multiplataforma con XamarinItequia
 
TechDay 2015 - C# y XAML: El poder de construir aplicaciones en todas las pla...
TechDay 2015 - C# y XAML: El poder de construir aplicaciones en todas las pla...TechDay 2015 - C# y XAML: El poder de construir aplicaciones en todas las pla...
TechDay 2015 - C# y XAML: El poder de construir aplicaciones en todas las pla...Sorey García
 
Introducción a Xamarin Forms con XAML
Introducción a Xamarin Forms con XAMLIntroducción a Xamarin Forms con XAML
Introducción a Xamarin Forms con XAMLSorey García
 
POO Programación Orientada a Objetos
POO Programación Orientada a ObjetosPOO Programación Orientada a Objetos
POO Programación Orientada a ObjetosLuis Berganza
 

Andere mochten auch (7)

Xamarin 基礎講座 2016年7月版
Xamarin 基礎講座 2016年7月版Xamarin 基礎講座 2016年7月版
Xamarin 基礎講座 2016年7月版
 
Introducción a xamarin
Introducción a xamarinIntroducción a xamarin
Introducción a xamarin
 
Desarrollo de Apps nativas multiplataforma con Xamarin
Desarrollo de Apps nativas multiplataforma con XamarinDesarrollo de Apps nativas multiplataforma con Xamarin
Desarrollo de Apps nativas multiplataforma con Xamarin
 
TechDay 2015 - C# y XAML: El poder de construir aplicaciones en todas las pla...
TechDay 2015 - C# y XAML: El poder de construir aplicaciones en todas las pla...TechDay 2015 - C# y XAML: El poder de construir aplicaciones en todas las pla...
TechDay 2015 - C# y XAML: El poder de construir aplicaciones en todas las pla...
 
Introducción a Xamarin Forms con XAML
Introducción a Xamarin Forms con XAMLIntroducción a Xamarin Forms con XAML
Introducción a Xamarin Forms con XAML
 
Introducción a Xamarin
Introducción a XamarinIntroducción a Xamarin
Introducción a Xamarin
 
POO Programación Orientada a Objetos
POO Programación Orientada a ObjetosPOO Programación Orientada a Objetos
POO Programación Orientada a Objetos
 

Ähnlich wie Taller campus party .net

Tecnología Orientada A Objetos
Tecnología Orientada A ObjetosTecnología Orientada A Objetos
Tecnología Orientada A ObjetosAndrés
 
Fundamentos De ProgramacióN Unidad 1
Fundamentos De ProgramacióN Unidad 1Fundamentos De ProgramacióN Unidad 1
Fundamentos De ProgramacióN Unidad 1cesarmrl2
 
Diseña y construye programas orientados a objetos
Diseña y construye programas orientados a objetosDiseña y construye programas orientados a objetos
Diseña y construye programas orientados a objetosJosue Sarabia
 
Programacion orientada a objetos
Programacion orientada a objetosProgramacion orientada a objetos
Programacion orientada a objetosbrandonhh10
 
Aplicaciones Distribuidas
Aplicaciones DistribuidasAplicaciones Distribuidas
Aplicaciones DistribuidasSorey García
 
Fundamentos del Enfoque OO
Fundamentos del Enfoque OOFundamentos del Enfoque OO
Fundamentos del Enfoque OOsullinsan
 
Fundamentos de POO
Fundamentos de POOFundamentos de POO
Fundamentos de POOgueritamala
 
Introduccion a la POO
Introduccion a la POOIntroduccion a la POO
Introduccion a la POOLibertad25
 
Aplicaciones distribuidas
Aplicaciones distribuidasAplicaciones distribuidas
Aplicaciones distribuidasTensor
 
Paradigma de Programación Orientada a Objetos
Paradigma de Programación Orientada a ObjetosParadigma de Programación Orientada a Objetos
Paradigma de Programación Orientada a ObjetosJose Sanchez
 
Presentacion De La Primera Unidad 2
Presentacion De La Primera Unidad 2Presentacion De La Primera Unidad 2
Presentacion De La Primera Unidad 2warmab
 
Clase 1- Enfoque Orientado a Objeto.pptx
Clase 1- Enfoque Orientado a Objeto.pptxClase 1- Enfoque Orientado a Objeto.pptx
Clase 1- Enfoque Orientado a Objeto.pptxssuser42bf48
 
Programacion orientada a objetos de Felipe Tocora
Programacion orientada a objetos de Felipe TocoraProgramacion orientada a objetos de Felipe Tocora
Programacion orientada a objetos de Felipe TocoraFelipe Ardila
 

Ähnlich wie Taller campus party .net (20)

Tema nº 1
Tema nº 1Tema nº 1
Tema nº 1
 
Tema nº 1
Tema nº 1Tema nº 1
Tema nº 1
 
Tecnología Orientada A Objetos
Tecnología Orientada A ObjetosTecnología Orientada A Objetos
Tecnología Orientada A Objetos
 
Fundamentos De ProgramacióN Unidad 1
Fundamentos De ProgramacióN Unidad 1Fundamentos De ProgramacióN Unidad 1
Fundamentos De ProgramacióN Unidad 1
 
Diseña y construye programas orientados a objetos
Diseña y construye programas orientados a objetosDiseña y construye programas orientados a objetos
Diseña y construye programas orientados a objetos
 
Programacion orientada a objetos
Programacion orientada a objetosProgramacion orientada a objetos
Programacion orientada a objetos
 
Aplicaciones Distribuidas
Aplicaciones DistribuidasAplicaciones Distribuidas
Aplicaciones Distribuidas
 
Fundamentos del Enfoque OO
Fundamentos del Enfoque OOFundamentos del Enfoque OO
Fundamentos del Enfoque OO
 
Fundamentos de POO
Fundamentos de POOFundamentos de POO
Fundamentos de POO
 
Introduccion a la POO
Introduccion a la POOIntroduccion a la POO
Introduccion a la POO
 
PRESENTACION
PRESENTACIONPRESENTACION
PRESENTACION
 
Aplicaciones distribuidas
Aplicaciones distribuidasAplicaciones distribuidas
Aplicaciones distribuidas
 
Compu 1
Compu 1Compu 1
Compu 1
 
Poo y visual
Poo y visualPoo y visual
Poo y visual
 
Paradigma de Programación Orientada a Objetos
Paradigma de Programación Orientada a ObjetosParadigma de Programación Orientada a Objetos
Paradigma de Programación Orientada a Objetos
 
Presentacion De La Primera Unidad 2
Presentacion De La Primera Unidad 2Presentacion De La Primera Unidad 2
Presentacion De La Primera Unidad 2
 
Poovb
PoovbPoovb
Poovb
 
4.1, 4.2
4.1, 4.24.1, 4.2
4.1, 4.2
 
Clase 1- Enfoque Orientado a Objeto.pptx
Clase 1- Enfoque Orientado a Objeto.pptxClase 1- Enfoque Orientado a Objeto.pptx
Clase 1- Enfoque Orientado a Objeto.pptx
 
Programacion orientada a objetos de Felipe Tocora
Programacion orientada a objetos de Felipe TocoraProgramacion orientada a objetos de Felipe Tocora
Programacion orientada a objetos de Felipe Tocora
 

Mehr von campus party

¿Qué es SCADA y cómo me afecta su (in)seguridad?
¿Qué es SCADA y cómo me afecta su (in)seguridad? ¿Qué es SCADA y cómo me afecta su (in)seguridad?
¿Qué es SCADA y cómo me afecta su (in)seguridad? campus party
 
Producción del largometraje pequeñas voces
Producción del largometraje pequeñas vocesProducción del largometraje pequeñas voces
Producción del largometraje pequeñas vocescampus party
 
Conferencia: Aplicaciones y el reto del desarrollo móvil
Conferencia: Aplicaciones y el reto del desarrollo móvilConferencia: Aplicaciones y el reto del desarrollo móvil
Conferencia: Aplicaciones y el reto del desarrollo móvilcampus party
 
Como sería un viaje a la velocidad de la luz - Miguel Ángel Contreras
Como sería un viaje a la velocidad de la luz - Miguel Ángel ContrerasComo sería un viaje a la velocidad de la luz - Miguel Ángel Contreras
Como sería un viaje a la velocidad de la luz - Miguel Ángel Contrerascampus party
 
Como sería un viaje a la velocidad de la luz - Miguel Ángel Contreras
Como sería un viaje a la velocidad de la luz - Miguel Ángel ContrerasComo sería un viaje a la velocidad de la luz - Miguel Ángel Contreras
Como sería un viaje a la velocidad de la luz - Miguel Ángel Contrerascampus party
 
X taller bluevialiminal
X taller bluevialiminalX taller bluevialiminal
X taller bluevialiminalcampus party
 
X liminal buevia 2 (dllo.)-taller
X liminal buevia 2 (dllo.)-tallerX liminal buevia 2 (dllo.)-taller
X liminal buevia 2 (dllo.)-tallercampus party
 
X elalgoritmodelamemoria maria juliana soto (social media) (1) 1
X elalgoritmodelamemoria maria juliana soto (social media) (1) 1X elalgoritmodelamemoria maria juliana soto (social media) (1) 1
X elalgoritmodelamemoria maria juliana soto (social media) (1) 1campus party
 
Theremin Alfredo Vargas
Theremin Alfredo Vargas Theremin Alfredo Vargas
Theremin Alfredo Vargas campus party
 
Sonido y cine Ricardo Escallon
Sonido y cine Ricardo Escallon Sonido y cine Ricardo Escallon
Sonido y cine Ricardo Escallon campus party
 
Photoshop para fotógrafos. Del cuarto oscuro al cuarto digital - Andrés Bautista
Photoshop para fotógrafos. Del cuarto oscuro al cuarto digital - Andrés BautistaPhotoshop para fotógrafos. Del cuarto oscuro al cuarto digital - Andrés Bautista
Photoshop para fotógrafos. Del cuarto oscuro al cuarto digital - Andrés Bautistacampus party
 
Photoshop para fotógrafos. Del cuarto oscuro al cuarto digital - Andrés Fonseca
Photoshop para fotógrafos. Del cuarto oscuro al cuarto digital - Andrés FonsecaPhotoshop para fotógrafos. Del cuarto oscuro al cuarto digital - Andrés Fonseca
Photoshop para fotógrafos. Del cuarto oscuro al cuarto digital - Andrés Fonsecacampus party
 
Aseguramiento de Vulnerabilidades Web con tecnologías OWASP
Aseguramiento de Vulnerabilidades Web con tecnologías OWASPAseguramiento de Vulnerabilidades Web con tecnologías OWASP
Aseguramiento de Vulnerabilidades Web con tecnologías OWASPcampus party
 
Mundos virtuales inmersivos y social shopping
Mundos virtuales inmersivos y social shopping Mundos virtuales inmersivos y social shopping
Mundos virtuales inmersivos y social shopping campus party
 
Creación transmediática y comunidades en práctica
Creación transmediática y comunidades en prácticaCreación transmediática y comunidades en práctica
Creación transmediática y comunidades en prácticacampus party
 
Implementación de Cloud Computing con Software Libre y medidas de seguridad p...
Implementación de Cloud Computing con Software Libre y medidas de seguridad p...Implementación de Cloud Computing con Software Libre y medidas de seguridad p...
Implementación de Cloud Computing con Software Libre y medidas de seguridad p...campus party
 

Mehr von campus party (20)

Titulo
Titulo Titulo
Titulo
 
¿Qué es SCADA y cómo me afecta su (in)seguridad?
¿Qué es SCADA y cómo me afecta su (in)seguridad? ¿Qué es SCADA y cómo me afecta su (in)seguridad?
¿Qué es SCADA y cómo me afecta su (in)seguridad?
 
Producción del largometraje pequeñas voces
Producción del largometraje pequeñas vocesProducción del largometraje pequeñas voces
Producción del largometraje pequeñas voces
 
Conferencia: Aplicaciones y el reto del desarrollo móvil
Conferencia: Aplicaciones y el reto del desarrollo móvilConferencia: Aplicaciones y el reto del desarrollo móvil
Conferencia: Aplicaciones y el reto del desarrollo móvil
 
Liminal Bluevia 1
Liminal Bluevia 1Liminal Bluevia 1
Liminal Bluevia 1
 
Como sería un viaje a la velocidad de la luz - Miguel Ángel Contreras
Como sería un viaje a la velocidad de la luz - Miguel Ángel ContrerasComo sería un viaje a la velocidad de la luz - Miguel Ángel Contreras
Como sería un viaje a la velocidad de la luz - Miguel Ángel Contreras
 
Como sería un viaje a la velocidad de la luz - Miguel Ángel Contreras
Como sería un viaje a la velocidad de la luz - Miguel Ángel ContrerasComo sería un viaje a la velocidad de la luz - Miguel Ángel Contreras
Como sería un viaje a la velocidad de la luz - Miguel Ángel Contreras
 
X taller bluevialiminal
X taller bluevialiminalX taller bluevialiminal
X taller bluevialiminal
 
X liminal buevia 2 (dllo.)-taller
X liminal buevia 2 (dllo.)-tallerX liminal buevia 2 (dllo.)-taller
X liminal buevia 2 (dllo.)-taller
 
X elalgoritmodelamemoria maria juliana soto (social media) (1) 1
X elalgoritmodelamemoria maria juliana soto (social media) (1) 1X elalgoritmodelamemoria maria juliana soto (social media) (1) 1
X elalgoritmodelamemoria maria juliana soto (social media) (1) 1
 
Theremin Alfredo Vargas
Theremin Alfredo Vargas Theremin Alfredo Vargas
Theremin Alfredo Vargas
 
Sonido y cine Ricardo Escallon
Sonido y cine Ricardo Escallon Sonido y cine Ricardo Escallon
Sonido y cine Ricardo Escallon
 
Photoshop para fotógrafos. Del cuarto oscuro al cuarto digital - Andrés Bautista
Photoshop para fotógrafos. Del cuarto oscuro al cuarto digital - Andrés BautistaPhotoshop para fotógrafos. Del cuarto oscuro al cuarto digital - Andrés Bautista
Photoshop para fotógrafos. Del cuarto oscuro al cuarto digital - Andrés Bautista
 
Photoshop para fotógrafos. Del cuarto oscuro al cuarto digital - Andrés Fonseca
Photoshop para fotógrafos. Del cuarto oscuro al cuarto digital - Andrés FonsecaPhotoshop para fotógrafos. Del cuarto oscuro al cuarto digital - Andrés Fonseca
Photoshop para fotógrafos. Del cuarto oscuro al cuarto digital - Andrés Fonseca
 
Aseguramiento de Vulnerabilidades Web con tecnologías OWASP
Aseguramiento de Vulnerabilidades Web con tecnologías OWASPAseguramiento de Vulnerabilidades Web con tecnologías OWASP
Aseguramiento de Vulnerabilidades Web con tecnologías OWASP
 
Mundos virtuales inmersivos y social shopping
Mundos virtuales inmersivos y social shopping Mundos virtuales inmersivos y social shopping
Mundos virtuales inmersivos y social shopping
 
Creación transmediática y comunidades en práctica
Creación transmediática y comunidades en prácticaCreación transmediática y comunidades en práctica
Creación transmediática y comunidades en práctica
 
Android+Arduino
Android+ArduinoAndroid+Arduino
Android+Arduino
 
Implementación de Cloud Computing con Software Libre y medidas de seguridad p...
Implementación de Cloud Computing con Software Libre y medidas de seguridad p...Implementación de Cloud Computing con Software Libre y medidas de seguridad p...
Implementación de Cloud Computing con Software Libre y medidas de seguridad p...
 
Linux en caja
Linux en cajaLinux en caja
Linux en caja
 

Kürzlich hochgeladen

TALLER DE ANALISIS SOLUCION PART 2 (1)-1.docx
TALLER DE ANALISIS SOLUCION  PART 2 (1)-1.docxTALLER DE ANALISIS SOLUCION  PART 2 (1)-1.docx
TALLER DE ANALISIS SOLUCION PART 2 (1)-1.docxobandopaula444
 
La Electricidad Y La Electrónica Trabajo Tecnología.pdf
La Electricidad Y La Electrónica Trabajo Tecnología.pdfLa Electricidad Y La Electrónica Trabajo Tecnología.pdf
La Electricidad Y La Electrónica Trabajo Tecnología.pdfjeondanny1997
 
Trabajo de tecnología excel avanzado.pdf
Trabajo de tecnología excel avanzado.pdfTrabajo de tecnología excel avanzado.pdf
Trabajo de tecnología excel avanzado.pdfedepmariaperez
 
Actividad integradora 6 CREAR UN RECURSO MULTIMEDIA
Actividad integradora 6    CREAR UN RECURSO MULTIMEDIAActividad integradora 6    CREAR UN RECURSO MULTIMEDIA
Actividad integradora 6 CREAR UN RECURSO MULTIMEDIA241531640
 
AREA TECNOLOGIA E INFORMATICA TRABAJO EN EQUIPO
AREA TECNOLOGIA E INFORMATICA TRABAJO EN EQUIPOAREA TECNOLOGIA E INFORMATICA TRABAJO EN EQUIPO
AREA TECNOLOGIA E INFORMATICA TRABAJO EN EQUIPOnarvaezisabella21
 
LAS_TIC_COMO_HERRAMIENTAS_EN_LA_INVESTIGACIÓN.pptx
LAS_TIC_COMO_HERRAMIENTAS_EN_LA_INVESTIGACIÓN.pptxLAS_TIC_COMO_HERRAMIENTAS_EN_LA_INVESTIGACIÓN.pptx
LAS_TIC_COMO_HERRAMIENTAS_EN_LA_INVESTIGACIÓN.pptxAlexander López
 
Tecnologias Starlink para el mundo tec.pptx
Tecnologias Starlink para el mundo tec.pptxTecnologias Starlink para el mundo tec.pptx
Tecnologias Starlink para el mundo tec.pptxGESTECPERUSAC
 
GonzalezGonzalez_Karina_M1S3AI6... .pptx
GonzalezGonzalez_Karina_M1S3AI6... .pptxGonzalezGonzalez_Karina_M1S3AI6... .pptx
GonzalezGonzalez_Karina_M1S3AI6... .pptx241523733
 
Modelo de Presentacion Feria Robotica Educativa 2024 - Versión3.pptx
Modelo de Presentacion Feria Robotica Educativa 2024 - Versión3.pptxModelo de Presentacion Feria Robotica Educativa 2024 - Versión3.pptx
Modelo de Presentacion Feria Robotica Educativa 2024 - Versión3.pptxtjcesar1
 
tics en la vida cotidiana prepa en linea modulo 1.pptx
tics en la vida cotidiana prepa en linea modulo 1.pptxtics en la vida cotidiana prepa en linea modulo 1.pptx
tics en la vida cotidiana prepa en linea modulo 1.pptxazmysanros90
 
Guía de Registro slideshare paso a paso 1
Guía de Registro slideshare paso a paso 1Guía de Registro slideshare paso a paso 1
Guía de Registro slideshare paso a paso 1ivanapaterninar
 
Crear un recurso multimedia. Maricela_Ponce_DomingoM1S3AI6-1.pptx
Crear un recurso multimedia. Maricela_Ponce_DomingoM1S3AI6-1.pptxCrear un recurso multimedia. Maricela_Ponce_DomingoM1S3AI6-1.pptx
Crear un recurso multimedia. Maricela_Ponce_DomingoM1S3AI6-1.pptxNombre Apellidos
 
CommitConf 2024 - Spring Boot <3 Testcontainers
CommitConf 2024 - Spring Boot <3 TestcontainersCommitConf 2024 - Spring Boot <3 Testcontainers
CommitConf 2024 - Spring Boot <3 TestcontainersIván López Martín
 
El_Blog_como_herramienta_de_publicacion_y_consulta_de_investigacion.pptx
El_Blog_como_herramienta_de_publicacion_y_consulta_de_investigacion.pptxEl_Blog_como_herramienta_de_publicacion_y_consulta_de_investigacion.pptx
El_Blog_como_herramienta_de_publicacion_y_consulta_de_investigacion.pptxAlexander López
 
Red Dorsal Nacional de Fibra Óptica y Redes Regionales del Perú
Red Dorsal Nacional de Fibra Óptica y Redes Regionales del PerúRed Dorsal Nacional de Fibra Óptica y Redes Regionales del Perú
Red Dorsal Nacional de Fibra Óptica y Redes Regionales del PerúCEFERINO DELGADO FLORES
 
Presentación sobre la Inteligencia Artificial
Presentación sobre la Inteligencia ArtificialPresentación sobre la Inteligencia Artificial
Presentación sobre la Inteligencia Artificialcynserafini89
 
Documentacion Electrónica en Actos Juridicos
Documentacion Electrónica en Actos JuridicosDocumentacion Electrónica en Actos Juridicos
Documentacion Electrónica en Actos JuridicosAlbanyMartinez7
 
FloresMorales_Montserrath_M1S3AI6 (1).pptx
FloresMorales_Montserrath_M1S3AI6 (1).pptxFloresMorales_Montserrath_M1S3AI6 (1).pptx
FloresMorales_Montserrath_M1S3AI6 (1).pptx241522327
 
LUXOMETRO EN SALUD OCUPACIONAL(FINAL).ppt
LUXOMETRO EN SALUD OCUPACIONAL(FINAL).pptLUXOMETRO EN SALUD OCUPACIONAL(FINAL).ppt
LUXOMETRO EN SALUD OCUPACIONAL(FINAL).pptchaverriemily794
 
tarea de exposicion de senati zzzzzzzzzz
tarea de exposicion de senati zzzzzzzzzztarea de exposicion de senati zzzzzzzzzz
tarea de exposicion de senati zzzzzzzzzzAlexandergo5
 

Kürzlich hochgeladen (20)

TALLER DE ANALISIS SOLUCION PART 2 (1)-1.docx
TALLER DE ANALISIS SOLUCION  PART 2 (1)-1.docxTALLER DE ANALISIS SOLUCION  PART 2 (1)-1.docx
TALLER DE ANALISIS SOLUCION PART 2 (1)-1.docx
 
La Electricidad Y La Electrónica Trabajo Tecnología.pdf
La Electricidad Y La Electrónica Trabajo Tecnología.pdfLa Electricidad Y La Electrónica Trabajo Tecnología.pdf
La Electricidad Y La Electrónica Trabajo Tecnología.pdf
 
Trabajo de tecnología excel avanzado.pdf
Trabajo de tecnología excel avanzado.pdfTrabajo de tecnología excel avanzado.pdf
Trabajo de tecnología excel avanzado.pdf
 
Actividad integradora 6 CREAR UN RECURSO MULTIMEDIA
Actividad integradora 6    CREAR UN RECURSO MULTIMEDIAActividad integradora 6    CREAR UN RECURSO MULTIMEDIA
Actividad integradora 6 CREAR UN RECURSO MULTIMEDIA
 
AREA TECNOLOGIA E INFORMATICA TRABAJO EN EQUIPO
AREA TECNOLOGIA E INFORMATICA TRABAJO EN EQUIPOAREA TECNOLOGIA E INFORMATICA TRABAJO EN EQUIPO
AREA TECNOLOGIA E INFORMATICA TRABAJO EN EQUIPO
 
LAS_TIC_COMO_HERRAMIENTAS_EN_LA_INVESTIGACIÓN.pptx
LAS_TIC_COMO_HERRAMIENTAS_EN_LA_INVESTIGACIÓN.pptxLAS_TIC_COMO_HERRAMIENTAS_EN_LA_INVESTIGACIÓN.pptx
LAS_TIC_COMO_HERRAMIENTAS_EN_LA_INVESTIGACIÓN.pptx
 
Tecnologias Starlink para el mundo tec.pptx
Tecnologias Starlink para el mundo tec.pptxTecnologias Starlink para el mundo tec.pptx
Tecnologias Starlink para el mundo tec.pptx
 
GonzalezGonzalez_Karina_M1S3AI6... .pptx
GonzalezGonzalez_Karina_M1S3AI6... .pptxGonzalezGonzalez_Karina_M1S3AI6... .pptx
GonzalezGonzalez_Karina_M1S3AI6... .pptx
 
Modelo de Presentacion Feria Robotica Educativa 2024 - Versión3.pptx
Modelo de Presentacion Feria Robotica Educativa 2024 - Versión3.pptxModelo de Presentacion Feria Robotica Educativa 2024 - Versión3.pptx
Modelo de Presentacion Feria Robotica Educativa 2024 - Versión3.pptx
 
tics en la vida cotidiana prepa en linea modulo 1.pptx
tics en la vida cotidiana prepa en linea modulo 1.pptxtics en la vida cotidiana prepa en linea modulo 1.pptx
tics en la vida cotidiana prepa en linea modulo 1.pptx
 
Guía de Registro slideshare paso a paso 1
Guía de Registro slideshare paso a paso 1Guía de Registro slideshare paso a paso 1
Guía de Registro slideshare paso a paso 1
 
Crear un recurso multimedia. Maricela_Ponce_DomingoM1S3AI6-1.pptx
Crear un recurso multimedia. Maricela_Ponce_DomingoM1S3AI6-1.pptxCrear un recurso multimedia. Maricela_Ponce_DomingoM1S3AI6-1.pptx
Crear un recurso multimedia. Maricela_Ponce_DomingoM1S3AI6-1.pptx
 
CommitConf 2024 - Spring Boot <3 Testcontainers
CommitConf 2024 - Spring Boot <3 TestcontainersCommitConf 2024 - Spring Boot <3 Testcontainers
CommitConf 2024 - Spring Boot <3 Testcontainers
 
El_Blog_como_herramienta_de_publicacion_y_consulta_de_investigacion.pptx
El_Blog_como_herramienta_de_publicacion_y_consulta_de_investigacion.pptxEl_Blog_como_herramienta_de_publicacion_y_consulta_de_investigacion.pptx
El_Blog_como_herramienta_de_publicacion_y_consulta_de_investigacion.pptx
 
Red Dorsal Nacional de Fibra Óptica y Redes Regionales del Perú
Red Dorsal Nacional de Fibra Óptica y Redes Regionales del PerúRed Dorsal Nacional de Fibra Óptica y Redes Regionales del Perú
Red Dorsal Nacional de Fibra Óptica y Redes Regionales del Perú
 
Presentación sobre la Inteligencia Artificial
Presentación sobre la Inteligencia ArtificialPresentación sobre la Inteligencia Artificial
Presentación sobre la Inteligencia Artificial
 
Documentacion Electrónica en Actos Juridicos
Documentacion Electrónica en Actos JuridicosDocumentacion Electrónica en Actos Juridicos
Documentacion Electrónica en Actos Juridicos
 
FloresMorales_Montserrath_M1S3AI6 (1).pptx
FloresMorales_Montserrath_M1S3AI6 (1).pptxFloresMorales_Montserrath_M1S3AI6 (1).pptx
FloresMorales_Montserrath_M1S3AI6 (1).pptx
 
LUXOMETRO EN SALUD OCUPACIONAL(FINAL).ppt
LUXOMETRO EN SALUD OCUPACIONAL(FINAL).pptLUXOMETRO EN SALUD OCUPACIONAL(FINAL).ppt
LUXOMETRO EN SALUD OCUPACIONAL(FINAL).ppt
 
tarea de exposicion de senati zzzzzzzzzz
tarea de exposicion de senati zzzzzzzzzztarea de exposicion de senati zzzzzzzzzz
tarea de exposicion de senati zzzzzzzzzz
 

Taller campus party .net

  • 1. TALLERDesarrollo de Aplicaciones Profesionales con Tecnologías .NET
  • 3. AGENDA Sesión 1 Introducción a los conceptos básicos ( 1 hora) Orientación a Objetos Aplicaciones Distribuidas .NET Framework TALLER: Entendiendo y construyendo la base de nuestro proyecto (1 hora)
  • 4. AGENDA Sesión 2 (2 horas) TALLER: Construyendo aplicación profesional. Presentación (Winforms, ASP.NET) Lógica de Negocio Acceso a Datos (LINQ, SQL Server 2008)
  • 5. ¡ADVERTENCIA! Este taller es para personas con conocimientos básicos, y también para aquellos que necesitan refrescarse o renovarse un poco. Los temas serán abordados en sus formas más simples con el ánimo de dar las herramientas necesarias para abordar las dos sesiones del taller.
  • 6. ¡ADVERTENCIA! Hacer una aplicación profesional no necesariamente significa hacer algo elaborado o técnicamente complejo, significa construir software pensando en su crecimiento, evolución y mantenimiento futuro.
  • 7. Un par de consejos antes de empezar…
  • 8. Antes de intentar aprender algo ten presente… lo complejo, alguna vez… fue simple, entiende lo primero lo simple.
  • 9. El problema está en la técnica, no en la herramienta
  • 10. Manejar correctamente los conceptos te ayudará a defenderte en cualquier herramientaTu preocúpate por aprender a razonar y pensar, para aprender a usar las herramientas están los tutoriales
  • 12. AGENDA Sesión 1 Introducción a los conceptos básicos ( 1 hora) Orientación a Objetos Aplicaciones Distribuidas .NET Framework TALLER: Entendiendo y construyendo la base de nuestro proyecto (1 hora)
  • 13. ¿Qué es la orientación a objetos?
  • 14. La orientación a objetos es un paradigma de programación
  • 15. Si bien esta definición es correcta, el problema está, en que tanto lo comprendemos…
  • 16. Intentemos algo simple… La orientación a objetos es una forma de ver las situaciones y de analizar el entorno…
  • 17. …es una forma de entender un problema identificando las entidades principales que se encuentran en el
  • 18. Identificar los conceptos relevantes o las entidades involucradas en un problema significa… El propósito de la programación orientada a objetosconsiste en proporcionar una solución informática identificando los conceptos relevantespresentes en el problema conceptos relevantes = entidades abstraer los detalles y particularidades y emitir un concepto genérico
  • 19. Esto se logra identificando las características comunesde un grupo de objetos y las accionesque realizan o bien que producen algún efecto sobre ellos
  • 20. La programación orientada a objetos (POO) es por tanto una forma de desarrollar software, pensando en las entidades principales del problema que dicho sistema pretende resolver y por tanto los datos que se manipularán de esas entidades y las acciones de las que estas son responsables dentro del sistema.
  • 21. El lenguaje de programación es la herramienta para resolver elproblema
  • 22. El propósitode la POO no tiene que ver con el lenguaje de programación Sobre el lenguaje de programación lo que podemos decir es que este soporta unas y otras características de la Orientación a Objetos También podemos decir que cada quien elige la herramienta que satisface las necesidades de su proyecto, tanto a nivel de implementación como de conocimiento disponible en su recurso humano
  • 23. Y aunque es claro que existe más de una herramienta para resolver unproblema
  • 24. Es seguro que también hay formas más fáciles de hacerlo…
  • 26. ¿Qué es un Objeto?
  • 27. Un Objeto es… Cualquier Cosa
  • 29. Cualquier Cosa …de la que puedas emitir un concepto. Es decir… Cualquier Cosa, todo es un objeto.
  • 30. Veamos, Este es un objeto Es un automóvil de plástico, rojo con 4 llantas y 2 puertas
  • 31. Si realizáramos el proceso mental lentamente, nos daríamos cuenta de que al ver el objeto emitimos un concepto preconcebido es decirautomóvil
  • 32. En la imagen cada uno de los elementos que vemos es considerado un objeto Sin embargo de todos ellos podemos emitir un concepto conocido y para ello usamos la palabra globo
  • 33. A ese concepto conocidoque representa una agrupación de objetos …lo llamamosClase
  • 34. Unaclase es como un molde de galletas… … este determina la forma y característicasque la galleta (el objeto) va a tener, sin ser el objeto real
  • 35. La clasees una… …los objetosson todos los que podamos crear mentalmente a partir de dicha claseo concepto
  • 36. ¿Recuerdan eso de la abstracción? Pues bien… Una claseesta compuesta por características(atributos o propiedades) y por comportamientos(acciones o métodos) …esos que elegimos como generalidades del conjunto de objetos comunes de nuestro problema a resolver
  • 37. Así entonces… entidad = concepto relevante = clase
  • 38. Las característicasy comportamientosde una clase son determinadas por el contexto del problema o escenario Esto en programación quiere decir, que dentro de un sistema, solo implementamos los atributosy métodosrelacionados con el ámbito del problema que estamos solucionando.
  • 39. Veamos algunos conceptos adicionales… A los valores que tienen los atributos de un objetose les conoce como el estado del objeto, y a los atributos y métodos que ofrece se les conoce como la interfazal código usado para construir las clases se le conoce como la implementaciónde la clase.
  • 40. Los objetosse comunican se comunican con otros a través de mensajes Un mensaje es una comunicación dirigida a un objeto, que le ordena que ejecute uno de sus métodos con ciertos parámetros asociados al evento que lo generó. Wikipedia
  • 41. Con respecto a la comunicación entre objetos tenemos más principiosalta cohesión y el bajo acoplamiento
  • 42. Cuando decimos que un objeto tiene una alta cohesiónhablamos de que sus características y comportamientos están estrechamente relacionados La relación que tienen esta determinada por el contexto del problema a resolver
  • 43. Cuando decimos que un objeto tiene una bajo acoplamiento hablamos del nivel de independencia que tiene un objeto con respecto a otros El hacer un objeto independiente de los demás ayudará a que ese objeto pueda ser usado en otros contexto
  • 44. Los principios que dirigen la orientación a objetos son… … la modularidad y la reusabilidad Qué son?
  • 45. En términos simples la modularidadsignifica trabajar por partes…Esas partes deberían ser lo más independientes posibles, como piezas de Lego, de esa forma podrías usar diferentes piezas en la construcción de otro sistema
  • 46. y la reusabilidadsignifica¡No se invente la rueda! Lo que ya esta hecho es para usarse y algunas de las cosas que no están hechas, deben construirse pensando en que alguien necesitará usarlo alguna vez. Por otro lado recuerde, reusar no es simplemente copiar y pegar código.
  • 47. Por último, veamos algunas características de la Programación Orientada a Objetos
  • 51. Empecemos a conocer nuestro problema¿Qué tal algo que todos conocemos? Aplicación de Aforo a Campus Party
  • 53. AGENDA Sesión 1 Introducción a los conceptos básicos ( 1 hora) Orientación a Objetos Aplicaciones Distribuidas .NET Framework TALLER: Aprendiendo .NET con C# (1 hora)
  • 54. ¿Qué es una aplicación distribuida?
  • 55. Es una aplicación con distintos componentesque se ejecutan en entornos separados, normalmente en diferentes plataformas conectadas a través de una red Wikipedia
  • 56. ¿Se entendió? Veamos que tanto…
  • 57. ¿Cuales son los componentesque se distribuyen? ¿Qué criterios se usan para determinar que conforma un componente?¿A través de que mecanismos se realiza la comunicación entre componentes distribuidos?¿Qué es un componente?
  • 58. Algunos Conceptos… Protocolos Cliente/Servidor Capas Despliegue Webservices UML Servicios Objetos Interfaces Niveles Comunicación Interoperabilidad Arquitectura Lógica de Negocio Acceso a Datos Interfaz de Usuario Paquetes Componentes
  • 59. Vamos por partes…¿A qué se refiere la distribución? Las distribución refiere a la construcción de software por partes, a las cuales les son asignadas un conjunto específicode responsabilidades dentro de un sistema.
  • 60. Esta distribución como bien enunciaba la definición formal, habla de que las partes o componentes se encuentran en entornos separados, sin embargo, lo que tiene implícito esta definición, es que para realizar esta separación física primero debe tenerse clara la separación lógicade las partes de una aplicación, esto quiere decir que programáticamente existe una forma de separaro agruparlos componentes.
  • 61. La separación físicano es en todas las ocasiones “maquinas diferentes” de acuerdo a la arquitectura también puede ser la ubicación de un conjunto de funcionalidades en archivos, rutas o tecnologías diferentes dentro de la misma máquina
  • 62. Ahora bien, cuando hablemos de distribución lógica lo entenderemos como separación por “Capas” (layers) y cuando hablemos de distribución física usaremos el término separación en “Niveles” (tiers)
  • 63. La separación por capas y niveles hace parte de la arquitectura del sistema y es definida por el arquitecto de la aplicación.
  • 64. “Las capasdentro de una arquitectura son un conjunto de servicios especializados que pueden ser accesibles por múltiples clientes y que deben ser fácilmente reutilizables.”
  • 65. Las capas además, según el escenarioy tipo de aplicación, están separadas físicamente.Si, físicamente! Lo que significa que una capa puede ser a su vez un nivel
  • 66. Una capa puede contener muchoscomponentes, un mismo componente puede ubicarse en variascapas de acuerdo a su naturaleza y a las consideraciones explicitas de la arquitectura … como? No hay problema, lo iremos entendiendo, de eso se trata…
  • 67. ¿Qué es un componente? Veamos una definición formal...Un componentees un elementode software que encapsulauna serie de funcionalidades. Un componentees una unidad independiente, que puede ser utilizado en conjunto con otros componentes para formar un sistema más complejo.
  • 68. Cada componente de un sistema puede verse como un paqueteo módulo Un componente esta compuesto por elementos que pueden ser clasesy/o recursos complementarios como archivos de configuración, imágenes, entre otros. Y a su vez esas clases y recursos pueden están agrupados dentro del componente en subpaquetes, de acuerdo a su naturaleza o necesidades de negocio.
  • 69. En este punto visualizamos varios conceptos que podemos presentar de la siguiente forma… Aplicación Niveles Capas Componentes Paquetes Clases Otros Recursos Sub paquetes
  • 70. Ahora bien… El paradigma básico de la separación por capas establece al menos 3 partes distintas dentro de una aplicaciónLa PresentaciónLa Lógica de NegocioEl Acceso a Datos y los Datos
  • 71. La Presentación o interfaz de usuario se refiere al mecanismo de interacción del usuario con el sistemaLos tipos de interfaces de software más comunes son las aplicaciones de ventanas y web Los tipos de interfaces de hardware más comunes son el ratón, el teclado, el micrófono, pantallas táctiles, dispositivos de audio
  • 72. La Lógica de Negocio refiere el conjunto de reglas que determinan específicamente como funciona un sistema, según su naturaleza, y bajo que parámetros y condiciones de acuerdo a las necesidades de los clientes y usuarios.
  • 73. El acceso a datos refiere al medio a través del cual podemos acceder y manipular los datospersistentes de un sistemaEl almacenamiento de datos refiere a la forma en que se encuentran guardados dichos datos, por ejemplo, en archivos o bases de datos.
  • 74. Así nos encontramos con componentes de diferentes tipos Ejecutables, Páginas Web, Librerías, Controles, Procedimientos Almacenados, Servicios Web…
  • 75. Después de conocer estos conceptos básicos, podemos pasar entonces a ver, los diferentes tipos de aplicaciónAplicaciones MonolíticasAplicaciones Cliente/ServidorAplicaciones de 3 CapasAplicaciones de N Capas
  • 76. Una aplicación monolítica o de una capa es aquella cuya interfaz, lógica de negocio y acceso a datos se encuentran mezclados o altamente acoplados, esto dificulta que pueda hacerse una separación lógica y física donde alguna de las partes pueda ser reutilizable.
  • 77. Una aplicación Cliente/Servidor o aplicación de doscapas es aquella donde los datos y la lógica de negocio se encuentran separados de la interfaz, este tipo de aplicación también es denominada, cliente liviano. Otro escenario válido para una aplicación Cliente/Servidor, se da separando los datos de la interfaz y la lógica de negocio, este tipo de aplicación también es denominado, cliente pesado.
  • 78. Una aplicación 3 capas es aquella donde la interfaz, la lógica de negocio, el acceso a datos y los datos se encuentran separados.
  • 79. ¡ATENCIÓN! Es muy importante entender, que la separación de la que se habla no es necesariamente física, como ya se había dicho antes, la primera separación que se da es lógica y debemos reiterar que la separación lógica es programática.
  • 80. Ahora, para hacer un trabajo bien hecho, hay que reconocer que las consideraciones asociadas al desarrollo por capas…
  • 81. ¿Que consideraciones deberíamos tener en cuenta cuando pensamos en la Capa de Presentación?
  • 82. ¿Y las consideraciones de la Capa de Lógica de Negocios?
  • 83. ¿Y las consideraciones de la Capa de Acceso a Datos?
  • 84. Bueno y si ya están separadas las 3 capas principales, ¿qué es entonces una de aplicación de N capas?
  • 85. Pues bien, la evolución de la tecnología y las redes de comunicaciones, hacen que cada día se generen nuevos escenarios de intercambio de información entre empresas, y entre los mismos sistemas existentes dentro de las empresas, de forma que se satisfagan las necesidades constantes y cambiantes de clientes y usuarios, para quienes debe resultar transparenteel obtener información de un sistema u otro.
  • 86. Otra de las razones importantes por las que surge este concepto, es debido a que en la evolución del desarrollo de software, se ha identificado la necesidad de crear nuevas capas, especializadas en funciones especificas, diferentes a las 3 identificadas previamente.Tal es el caso de la seguridad, el control de excepciones, el transporte de datos entre capas, la generación de trazas de errores, entre otros.
  • 87. Usuarios Auditoria y Control de Excepciones Seguridad Comunicación Componentes de Interfaz de Usuario Componentes de Proceso de Interfaz de Usuario Interfaces de Servicio Flujos de Negocio Componentes de negocio Entidades de Negocio ComponentesAccesoDatos Agentes de Servicio ServiciosExternos Orígenes de Datos UnapropuestaMicrosoft Patterns & Practices
  • 88. ¿Qué arquitectura tendrá nuestro ejemplo de Campus Party? (Diagrama pendiente)
  • 89. AGENDA Sesión 1 Introducción a los conceptos básicos ( 1 hora) Orientación a Objetos Aplicaciones Distribuidas .NET Framework TALLER: Entendiendo y construyendo la base de nuestro proyecto (1 hora)
  • 90. ¿Qué es un Framework? ¿Recuerdan esto? “No se invente la rueda....”
  • 91. Veámoslo así… Los edificios de una ciudad son todos los tipos de software que podemos construir
  • 92. Suponga que usted necesita construir un edificio…
  • 93. Ahora imagine que a usted le tocara construir cada una de las partes…
  • 94. ¿Cuánto tiempo cree que tardaría en terminar? Lo mismo sucede con el software, si cada vez tuviéramos que construir todos los componentes que lo conforman, tardaríamos mucho más tiempo…
  • 95. ¿Qué es un Framework? Un frameworkes, básicamente, un conjunto de clases que interactúan en forma cooperativapara dar solución a una determinada necesidad.
  • 96. Ahora un poco menos conceptual... En términos simples un frameworkes un conjunto de clases base agrupadas en componentes, que pueden ser reutilizadas para la construcción de nuevo software
  • 97. He ahí la razón para entender los conceptos iniciales Bien sea por que vas a usar un framework o por que quieres construir uno
  • 98. Las características principales de un frameworkson: Estar enfocado en un tema específico y el ser altamente reutilizable.
  • 99. Microsoft .NET .NET es el conjunto de tecnologías en las que Microsoft ha trabajado 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.
  • 100. ¿Qué es Visual Studio .NET? Es entorno de desarrollo (IDE), la herramienta sobre la cual los programadores desarrollan el software
  • 101. Beta Línea de Tiempo .NET Framework 4 2010 2008 2010 2008 .NET Framework 3.5 .NET Framework 3.0 2007 2005 .NET Framework 2.0
  • 102. ¿Qué es .NET Framework?
  • 103.
  • 104. Bibliotecas de funcionalidad (Class Library)
  • 107. ¿Qué NO es? NO es un sistema operativo NO es un lenguaje de programación NO es un entorno de desarrollo NO es un servidor de aplicaciones
  • 108. ¿Qué es el .NET Framework? Un conjunto de tecnologías que me permiten: Unir las aplicaciones Web actuales que están aisladas, de manera muy fácil Acceder a información en cualquier momento, en cualquier lugar Simplificar el desarrollo y la implementación Desarrollar aplicaciones para cualquier dispositivo, sin necesidad de mucho esfuerzo. Reutilizar mucho código Hacer más, con menos
  • 109. Algunas Características Completamente Orientado a Objetos Multilenguaje Modelo de programación único para todo tipo de aplicaciones y dispositivos de hardware Se integra fácilmente con aplicaciones existentes desarrolladas en plataformas Microsoft o en otras plataformas.
  • 110. Línea de Tiempo .NET Framework Visual Studio 6.0 Visual Basic VBA Visual FoxPro VBScript C++ J++ JScript ASP Visual Studio .NET 2003 .NET Framework 1.1 .NET Compact Framework J# Visual Studio 2008 .NET Framework 3.0 – 3.5 .NET Compact Framework 2000 2001 2002 2003 2004 2005 2006 2008 2010 Visual Studio 2005 .NET Framework 2.0 .NET Compact Framework 2.0 Visual Studio .NET 2002 .NET Framework 1.0 Visual Basic .NET C# Visual Studio 2010 .NET Framework 4.0 F#
  • 111. VB C++ C# Visual Studio .NET J# … Common Language Specification ASP.NET: Servicios Web y Web Forms WindowsForms ADO.NET: Datos y XML Biblioteca de Clases Base Common Language Runtime Microsoft .NET Framework 2.0
  • 112. ¿Qué son los demás? 2.0 .NET Framework 2.0 VB C# J# IronPhyton Ruby … 3.0 .NET Framework 3.0 CLS y CTS ASP.NET WPF WCS WF & WCF Enhancements Dynamic Data ADO.NET LINQ Additional Enhancements Entity Framework WCF WF Add-in Framework WindowsForms MVC Data Services Biblioteca de Clases CommonLanguage Runtime (CLR) Windows 7, Windows Vista,Windows XP,Windows Server 2008
  • 113. Microsoft .NET Framework Presentación Acceso a Datos Servicios Windows Presentation Foundation ASP.NET (WebForms, MVC, Dynamic Data) Entity Framework ADO.NET Data Services Windows Communication Foundation WinForms LINQ to SQL Windows Workflow Foundation “Velocity” Core Base Class Library Dynamic Language Runtime Languages Managed Extensibility Framework LINQ Parallel Extensions Common Language Runtime
  • 114. Common Language Runtime (CLR) Es el motor de ejecución de .NET Caracteristicas: Compilacion Just In Time (JIT) Gestion de Memoria (Garbage Collector) Gestion de Errores (excepciones) Ejecucion basada en componentes (assemblies) Gestion de seguridad Multithreading
  • 115. ¿Como trabaja el CLR? Assembly (MSIL) Compilador Bibliotecao Ejecutable Código Fuente Cualquierlenguaje .NET
  • 116. Código MSIL Código Fuente Compilador Lenguaje Metadata Ejecución JIT Compiler CódigoNativo Tiempos: Compilación y Ejecución Compilación Antes de la instalación o cuando se ejecutaporprimeravez
  • 117. Modelo de Ejecución del CLR Código Fuente VB.NET C++.NET C# Componente No Manejado Compilador VB.NET Compilador C# Compilador C++ .NET Código Manejado Assembly Código MSIL Assembly Código MSIL Assembly Código MSIL Common Language Runtime Compilador JIT Código Nativo Sistema Operativo (Windows)
  • 118. Estructura de un proyecto .NET Solución Proyectos (Assemblies) Namespaces Clases Archivos de configuración Recursos adicionales
  • 119. Descripción de Tipos Clases Clases Base Interfaces Implementadas Atributos de las Clases Métodos de las Clases MiBiblioteca.DLL Metadata Manifiesto del Assembly Código CompiladoMSIL Nombre Versión Cultura Recursos Otros Assemblies Permisos de Seguridad Tipos Externos Estructura de un Assembly
  • 120. AGENDA Sesión 1 Introducción a los conceptos básicos ( 1 hora) Orientación a Objetos Aplicaciones Distribuidas .NET Framework TALLER: Entendiendo y construyendo la base de nuestro proyecto (1 hora)
  • 121. TAREA  Para desarrollar la siguiente sesión del taller se espera que se traiga una idea de proyecto para implementar Si no quieres crear una nueva idea igual puedes bajar el material y el avance del que estamos trabajando en www.avanet.org
  • 122. @soreygarcia @mteheran @dramirez2009 @khriztianmoreno @jodageeks @hernandgr (virtual) @magicovercast (virtual) ACOMPAÑAMIENTO
  • 123. LOS ESPERAMOS EN LA SESIÓN 2 30 de Junio – 10 a.m. a 12 m.