• Share
  • Email
  • Embed
  • Like
  • Save
  • Private Content
Paradigma de poo
 

Paradigma de poo

on

  • 6,294 views

buen trabajo

buen trabajo

Statistics

Views

Total Views
6,294
Views on SlideShare
6,166
Embed Views
128

Actions

Likes
1
Downloads
125
Comments
2

4 Embeds 128

http://pixeleante.blogspot.mx 93
http://pixeleante.blogspot.com 32
http://190.27.248.58 2
http://www.blogger.com 1

Accessibility

Categories

Upload Details

Uploaded via as Microsoft PowerPoint

Usage Rights

© All Rights Reserved

Report content

Flagged as inappropriate Flag as inappropriate
Flag as inappropriate

Select your reason for flagging this presentation as inappropriate.

Cancel

12 of 2 previous next

  • Full Name Full Name Comment goes here.
    Are you sure you want to
    Your message goes here
    Processing…
  • excelente
    Are you sure you want to
    Your message goes here
    Processing…
  • bueno
    Are you sure you want to
    Your message goes here
    Processing…
Post Comment
Edit your comment

    Paradigma de poo Paradigma de poo Presentation Transcript

    • Escuela Secundaria Técnica No. 4 Tecnología: Computación Temática: El Paradigma de laProgramación Orientada a Objetos
    • ¿Vivimos en un mundo de Objetos. ?
    • Origen del termino P O OLos conceptos de la programación orientada aobjetos tienen origen en Simula 67, unlenguaje diseñado para hacersimulaciones, creado por Ole – Johan Dahl yKristen Nvgaard del Centro de ComputoNoruego en Oslo. Según se informa, la historiaes que trabajaban en simulaciones de naves, yfueron confundidos por la explosióncombinatoria de cómo las diversas cualidades dediversas naves podían afectar unas a las otras.La idea ocurrió para agrupar los diversos tiposde naves en diversas clases de objetos, siendoresponsable cada clase de objetos de definir suspropios datos y comportamiento.
    • Fueron refinados más tarde en Smalltalk, quefue desarrollado en Simula en Xerox PARCpero diseñado para ser un sistemacompletamente dinámico en el cual los objetosse podrían crear y modificar "en marcha" enlugar de tener un sistema basado en programasestáticos.La programación orientada a objetos tomóposición como la metodología de programacióndominante a mediados de los años ochenta, engran parte debido a la influencia de C++, unaextensión del lenguaje de programación C.
    • C Lenguaje de Programación desarrollado porKernighan & Ritchie en 1972 en los laboratoriosATT.C++ Lenguaje de Programación desarrolladopor B. Stroustrup en los laboratorios ATT en1980.Su dominación fue consolidada gracias al augede las Interfases Gráficas de Usuario, paralos cuales la programación orientada a objetosestá particularmente bien adaptada.
    • ¿ Que es la Programación Orientada a Objetos?La Programación Orientada a Objetos (POO) esuna forma de enfocar la tarea de programación.Los enfoques de la programación han cambiadodrásticamente desde la invención de lascomputadoras, la creciente complejidad de losprogramas, antes se realizaban mediante unaconsola en la que se escribían las instruccionesmáquina en lenguaje binario. Esto funcionabaporque los programas sólo tenían unos pocoscientos de instrucciones. Cuando crecieron losprogramas, se invento el lenguaje ensambladorpara que el programador pudiera manejarprogramas más largos y complejos usando unarepresentación simbólica de las instruccionesmáquina.
    • Los lenguajes de alto nivel aparecieron paraproporcionar al programador más herramientascon las cuales gestionar esa complejidad. En losaños sesenta nace la programaciónestructurada, este es el método alentando porvarios lenguajes como Pascal y C. Con loslenguajes estructurados fue posible escribirprogramas moderadamente complejos de unaforma bastante sencilla. Sin embargo, usandoincluso la programación estructurada, cuandolos proyectos alcanzan cierto tamaño, sucomplejidad se vuelve demasiado difícil para sercontrolada por un programador.
    • La Programación Orientada a Objetos toma lasmejores ideas de la programación estructuradala combina con nuevos y poderosos conceptosque animan o alientan una nueva visión de latarea de la programación. La ProgramaciónOrientada a Objetos permite descomponerfácilmente un problema en subgrupos de partesrelacionadas. Entonces, puede traducir estossubgrupos en unidades auto contenidasllamadas Objetos.
    • Evolución de la ProgramaciónPOO (Programación Orientada aObjetos), es un importante conjunto detécnicas que se pueden utilizar para hacer eldesarrollo de programas más eficientes mientrasse mejora la facilidad de los programasresultantes. En esencia, POO es un nuevomedio de enfocar el trabajo de programación.Sin embargo, a fin de comprender lo que es laPOO, es necesario comprender sus raíces. Asípues, comenzaremos por examinar la historiadel proceso de programación analizada cómoevolución y deduciendo, en consecuencia, porqué es tan importante este concepto.
    • Programación LinealLos lenguajes de programación lineal(BASIC, COBOL Y FORTRAN) no teníanfacilidad para reutilizar el código existente deprogramas. De hecho se duplicaban segmentosde software cada vez más en muchosprogramas. Los programas se ejecutaban ensecuencias lógicas, haciendo la lógica difícil decomprender. El control de programas era difícil yse producían continuos saltos a lo largo delreferido programa. Aún más, los lenguajeslineales no tenían capacidad de controlar lavisibilidad de los elementos llamados datos.
    • Programación ModularEl soporte más elemental de la programaciónModular llegó con la aparición de la subrutina.Una subrutina se crea con una secuencia deinstrucciones a las que se les da un nombreindependiente; una vez que se ha definido, lasubrutina se puede ejecutar simplementeincluyendo el nombre del programasiempre que se requiera. Las subrutinasproporcionan una división natural de las tareas;que diferentes programas utilizan. Aunque lassubrutinas proporcionan el mecanismo básico dela programación modular, se necesita muchadisciplina para crear software bien estructurado.
    • Programación EstructuradaUn concepto importante en campo de laprogramación estructurada: Abstracción, yaque la Abstracción se puede definir como lacapacidad de examinar algo sin preocuparse delos detalles internos. En un programaestructurado, es suficiente conocer que unprocedimiento sea fiable, para que se puedautilizar sin tener que conocer cómo funciona suinterior. Esto se conoce como una Abstracciónfuncional y es el núcleo de la programaciónestructurada. Hoy casi todos los lenguajes deprogramación tienen construcciones que facílitanla programación estructurada.
    • Programación Orientada a ObjetosEste paradigma se basa en dividir el programaen pequeñas unidades lógicas de código.A estas pequeñas unidades lógicas de código seles llama objetos.También proporciona conceptos y herramientascon las cuales se modela y representa elmundo real tan fielmente como sea posible.
    • Programación Orientada a ObjetosSe define como el conjunto dedisciplinas que desarrollan ymodelan software y que facilitan laconstrucción de sistemas complejosa partir de componentes.
    • Un programa orientadoobjetos es una colección deobjetos que interactúan y serelacionan entre sí.
    • Lenguajes de POOSmalltalkObjetive CAda 95JavaOcamlPythonDelphiTurbo Pascal
    • Lenguajes de POOC SharpEiffelRubyAction ScriptVisual BasicPHPPower BuilderClarionC++
    • El Paradigma de Orientación a Objetos Es un método que permiten que los problemas del mundo real sean expresados de modo fácil y natural, a través de: Modelización del Mundo. Reusabilidad. Mantenibilidad. Metodología de Software Unificada.
    • Modelización del MundoLa gente entiende el mundo en términosde objetos, por lo tanto, un programaescrito en términos de objetos debería sermás intuitivo y entendible que unprograma estructurado de otra forma.
    • ReusabilidadComo modelos de programación losobjetos tienen alta cohesión porque losmismos encapsulan códigos y datos.Por eso los objetos pueden serreutilizados en la confección de otrosprogramas.
    • MantenibilidadLos objetos son más modulares. Losefectos de los cambios en programas sonmejor localizados. Los objetos son másfáciles de modificar.
    • Metodología de Software Unificada.El análisis se hace en términos de objetosdel mundo. Si el diseño, codificación ymantenimiento también son hechos entérminos de objetos, el proceso desoftware completo será regido por unúnico concepto.
    • Un Objeto es:Cualquier entidad lógica del mundoreal. tanto elementos palpables comoabstractos. Cumple un determinado roldentro de los sistemas.
    • Un Objeto es: La Entidad Central sobre la que gira el Paradigma de Programación Orientada a Objetos. Objeto / Entidad
    • ObjetosSe definen como tipos de datos queencapsulan con el mismo nombreestructuras de datos y las operacionesque manipulan esos datos. Datos Objetos = + Operaciones
    • ObjetosContienen características de:Una entidad (sus datos) Su comportamiento o funcionamiento(sus operaciones o procedimientos).
    • Los Objetos tienen: Identidad Operaciones EstadoEs el conjunto de Es el conjunto de Cuando a lasatributos que procedimientos característicasdefinen y que permiten del objeto lecaracterizan/di cambiar el ponemosferencian un estado del valores.objeto de otro. objeto, para Las variables procurar almacenan los adaptarse al estados de un medio y/o objeto en un interactuar con el determinado medio. momento.
    • Ejemplo:Para redondear estas ideas, imaginemos quetenemos estacionado en nuestra cochera unBMW Z4 color rojo que corre hasta 360 km/h. Objeto: Automóvil Marca: BMW Modelo: Z4 Color: Rojo Vel. Max.: 360 Km/h
    • Un objeto se compone de otros objetos: Llantas Sistema de Chasis Frenos ABS Sistema de Sistema de Dirección Audio Vehiculo Aire Suspensión Acond Sistema Motor Eléctrico
    • Un objeto se compone de otros objetos: Volante Juntas Flecha Homocin. Dirección Barra de Licuadora Dirección
    • ObjetoEste solo puede ser invocado a través de :Un Mensaje, consiste de un Nombre yopcionalmente de uno o varios parámetros.Cuando el receptor recibe elmensaje, hace la operación requerida de laforma en que sabe hacerlo.El emisor no especifica cómo debehacerse la operación.
    • Mensaje Objeto 1 Mensaje Objeto 2 Emisor Receptor 1.- Recibe el mensajeEnvía el mensaje 2.- Ejecuta la Operación al receptor. Solicitada. 3.- Retorna información de forma opcional.
    • El Conjunto de MensajesA los que un objeto puede responder seconoce como el comportamiento delobjeto.Cuando un objeto recibe un mensajerealiza la operación requerida mediante laejecución de un método.Un método es un algoritmo ejecutado es respuesta al envío de unmensaje. Siempre es parte de la representación privada delobjeto. Nunca es parte de la interfaz pública.
    • Propiedades básicas de un:O b j e t o.
    • Un objeto debe cubrirLa abstracciónEl encapsulamientoLa herenciaEl polimorfismo
    • La abstracciónEs la descripción de unaentidad del mundo real yposterior utilización de estadescripción en un programa.Una buena abstracción esaquella que enfatiza detallessignificativos al lector ousuario y suprime detallesque son, al menos , por elmomento irrelevantes ocausa de distracción.
    • ClaseDescripción Teléfonosabstracta de un Celularesgrupo de objetos Nokia Nokia Samsung 3520 3200 SX 426
    • Características de las Clases:Permite crear objetos.Permite la definición de una serie deatributos.Permite la definición de una serie deoperaciones.Permite la definición de restricciones de talmanera para conservar la consistencia delos Datos.Permite almacenar información de losobjetos que componen la clase.Sabe quienes la componen.Permite eliminar objetos.
    • Los objetos que se comportan de lamanera especificada por una clase sedenominan instancias de esa clase.
    • Instancias Miguel Clase Estudiante Sofía AntonioLos objetos son instancias de una clase
    • Encapsulamiento Es la propiedad que permite asegurar que el contenido de la información de un objeto está oculto al mundo exterior.Permite el ocultamiento de la información y la división del programa en módulos.
    • Modelos o BloquesSe implementan mediante clases, deforma que una clase representa laencapsulación de una abstracción. Estosignifica que cada clase tiene dospartes: una interfaz y unaimplementación. La interfaz de unaclase captura sólo su vista externa y laimplementación contiene larepresentación de la abstracción, asícomo los mecanismos que realizan elcomportamiento deseado.
    • Ventajas del EncapsulamientoReducción de la cohesión entredistintos objetos: Lo que implica laconstrucción de objetos independientes.Cambiar un objeto no afecta al resto, sóloal objeto en cuestión.Localización: La información relativa a unobjeto está centrada en la definición de élmismo y no distribuida en otros objetos.
    • Esto implica fácil modificación y adaptación alos cambios, rápida ubicación de lo que hayque cambiar.Protección de la Integridad: sólo permitecambiar el estado por sí mismo, a través desus operaciones propias. Esto asegura laintegridad y la consistencia de los datos.
    • Capsula Datos Clase Nombre Completo, RFC, Edo Civil,Estudiante Edad, No. Teléfono, Domicilio. Operaciones Estudiar, Trabajar, Tertuliar, Tomar Café, Hacer Tareas
    • PolimorfismoEs la propiedad quepermite que dos omás clases deobjetos respondan elmismo mensajede diferente forma.
    • Permite reconocer yexplotar las similitudesentre diferentes clasesde objetos.Cuando se reconoceque varios tiposdiferentes de objetospodrían responder elmismo mensaje, sevisualiza másclaramente la distinciónentre el mensaje y elmétodo.
    • Ejemplo: Objeto Operación Básquetbol Encestar ClaseDeportes Hacer Puntos Fútbol Anotar un Gol Anotar una Mensaje Béisbol Carrera Anotar un Fútbol Americano Touch Down
    • HerenciaEs un mecanismo que permite a unobjeto heredar propiedades de otraclase de objetos. Permite a su vez a unobjeto contener sus propiosprocedimientos y heredar los mismosde otros objetos.
    • Ejemplo PadreLas clases Hija e Hijoheredan las propiedadesde la clasePadre, incluyendo a suvez nuevas propiedades. Hija HijoLa herencia permite diseñar y especificar sólo las diferencias de la clase másespecífica. Esto hace posible reusar tanto el comportamiento como el estadointerno.
    • De la herencia surgen los conceptos de:Superclase ( Clase Base )Subclase ( Clase Derivada ) Padre Super Clase Sub Clase Hija Hijo
    • Definir con programación orientada a objetos la jerarquía de objetos que representan las figuras triangulo y cuadrado. Super clase Figuras GeométricasSub clase Cuadrado Triangulo
    • Definición de las clases:Figura:Datos - Area, Perimetro, FormaMétodos - CalculoArea, CalculoPerimetro, DibujarTriangulo:Datos – Altura, BaseMétodos - CalculoArea, CalculoPerimetro, DibujarCuadrado:Datos - LadoMétodos - CalculoArea, CalculoPerimetro, Dibujar Los métodos CalculoArea, CalculoPerímetro y Dibujar se declaran en la clase Figura pero se implementan en los objetos derivados, esto es dado que dichos procedimientos serán distintos según se trate de la figura triangulo o cuadrado.
    • CalculoArea (Triangulo) - Base * Altura / 2CalculoPerimetro(Triangulo) – Suma de sus LadosDibujar(Triangulo) -CalculoArea(Cuadrado) - Lado * LadoCalculoPerimetro(Cuadrado) – Suma de sus LadosDibujar(Cuadrado) -
    • ConstructorMétodo que permite la creación einicialización de los objetos.Pueden definirse desde ninguno a variosconstructores.Dependiendo del lenguaje, podrá ser unmétodo más de la clase o un métodoespecífico de instancia (mismo nombreque la clase).
    • La creación de objetos se realizamediante la invocación del operadornew invocando al El constructor pordefecto, aquel que no inicializa ningúnatributo, está disponible siempre paracada clase (no haría falta definir unconstructor para crear una instancia).
    • DestructorOpuesto al constructor que especificalas operaciones a realizar tras laeliminación de un objeto. La destrucción de objetos se realizamediante la invocación del operadordelete invocando al El destructor pordefecto.Muy específico del lenguaje deProgramación.
    • Comentarios,identificadores y tipos de datos
    • ComentariosC++ soporta dos tipos de comentarios: 1. Viejo estilo C: Entre /* y */. 2. Nuevo estilo C++: Comienzan con //.Su efecto termina cuando se alcanza el final de la línea actual.
    • IdentificadoresSon los nombres elegidos para lasvariables, constantes, funciones, clases ysimilares. El primer carácter debe ser unaletra o un subrayado. El resto del nombrepuede contener dígitos. Losidentificadores que comienzan con dossubrayados están reservados para usointerno del compilador C++.
    • ConstantesC++ permite utilizar varios tipos de constantes:1. Constantes enteras 440 -3452. Constantes enteras muy grandes. Se identifican situando una L al final de la constante entera 33L -105L3. Constantes octales o hexadecimales. Un 0 a la izquierda indica una constante octal y un 0x o bien 0X indican una constante hexadecimal 0 02 077 0123 equivalen a 0 2 63 83 en octal 0x0 0x2 0x3F 0x53 equivalen a 0 2 63 83 en hexadecimal
    • 4. Constantes reales (coma flotante) 0.0 3.1416 -99.2 C++ permite especificar constante de coma flotante de simple precisión (sufijo f o F) y doble precisión larga (sufijo l o L). 32.0f 3.1416L5. Constantes carácter “z” “5”6. Constantes cadena “hola” “hoy es lunes”
    • Tipos de datos C++, igual que C, contiene tipos fundamentales y tipos derivados o estructurados. Los fundamentales son: int, char, long int, float, double, long double. Tipo vacío. El tipo vacío (void) se utiliza principalmente para especificar: Funciones que no devuelven valores. Punteros void, que referencian a objetos cuyo tipo es desconocido.
    • Tipos enumerados. Un tipo enumerado estáconstruido por una serie de constantessimbólicas enteras.Los tipos enumerados se tratan de modoligeramente diferente en C++ que en C. Elnombre de la etiqueta enum se consideracomo un nombre de tipo igual que lasetiquetas de struct y unión. Por tanto sepuede declarar una variable de enumeración,estructura o unión sin utilizar las palabrasenum, strcut o union.
    • C define el tipo de enum de tipo int. En C++, sinembargo, cada tipo enumerado es su propio tipoindependiente. Esto significa que C++ no permiteque un valor int se convierta automáticamente aun valor enum. Sin embargo, un valor enumeradose puede utilizar en lugar de un int.
    • Ejemplo:enum lugar{primero,segundo,tercero};lugar pepe=primero; //correctoint vencedor=pepe; //correctolugar juan=1; //incorrecto La última sentencia de asignación es aceptable en C pero no en C++, ya que 1 no es un valor definido en lugar.
    • Tipos referencia.Las referencias son como alias. Sonalternativas al nombre de un objeto. Sedefine un tipo referencia haciéndolepreceder por el operador de dirección &. Unobjeto referencia, igual que una constantedebe ser inicializado.int a=50;int &refa=a; //correctoint &ref2a; //incorrecto: no inicializadoTodas las operaciones efectuadas sobre lareferencia se realizan sobre el propioobjeto:refa+=5; equivale a sumar 5 a a, que valeahora 55int *p=&refa; inicializa p con la direcciónde a
    • Operadores especiales de C++:: .* ->* new deleteResolución Indirección Indirección Asigna Liberade ámbito (eliminación (eliminación (inicializa) almacena(o alcance) de de referencia almacena miento referencia directa) un miento asignado directa) un puntero a un dinámico por new puntero a un miembro de miembro de una clase una clase
    • Declaraciones y definiciones Declaraciones Definiciones se utilizan para asignan memoria introducir un nombre alcompilador, pero nose asigna memoria. Los términos declaración y definición tienen un significado distinto aunque con frecuencia se intercambian.
    • En C++ cuando se C++, permite mezclardeclara una estructura se datos con funciones yproporciona su nombre al código ejecutable: tratacompilador pero no se una declaración como unasigna memoria. Cuando tipo de sentencia yse crea una instancia de permite situarla enla estructura es cuando se cualquier parte como tal.asigna memoria. Esta característica de C++ es muy cómoda ya que permite declarar una variable cuando se necesite e inicializarla inmediatamente.
    • Punteros
    • El especificador constante (const)Constantes PunteroPunteros y direcciones de constantes simbólicasPunteros a un tipo de dato constanteEl especificador de tipo volatilePunteros a voidSalidas y entradas
    • El especificador constante (const) Una constante es una entidad cuyo valor no se puede modificar, y en C++, la palabra reservada const se utiliza para declarar una constante.Ejemplo:const int longitud = 20;char array[longitud]; // válido en C++ pero no en C
    • Una vez que una constante se declarano se puede modificar dentro delprograma.En C++ una constante debe serinicializada cuando se declara.
    • En C++, las constantes que se declaran fuerade una función tienen ámbito de archivo pordefecto y no se pueden ver fuera del archivoen que están declaradas. Si se desea que unaconstante se vea en más de un archivo, sedebe declarar como extern.En C++ las constantes se pueden utilizar parasustituir a #define.En C:#define PI 3.141592#define long 128En C++:const PI = 3.141592const long = 128
    • Constantes PunterosSe puede definir una constante puntero enC++. Las constantes puntero se debeninicializar en el momento en que sedeclaran. Se leen de derecha a izquierda.void main(){int x=1,y;int *const xp= &x; // xp es un punteroconstante a un int.xp=&y; // error: el puntero es unaconstante y no se puede asignar un nuevovalor a punteros constantes.
    • Punteros y direcciones de constantes simbólicasEn C++ se puede desreferenciarel puntero (cambiar la posición actual delpuntero) y cambiar el valor de la constante.const int x=6;int *ip;*ip=7;ip = &x; //error
    • Punteros a un tipo de dato constanteSe puede declarar un puntero a un tipo de datoconstante pero no se puede desreferenciar.const int x=6;const int *ip; //puntero a una constante enteraint z; ip=&x; ip=&z;*ip=10; //error: no se puede desreferenciareste tipo de puntero y modificar z.z=7; //válido: z no es una constante y sepuede cambiar.
    • El puntero a un tipo constante Es muy útil cuando se desea pasar una variable puntero como un argumento a una función pero no se desea que la función cambie el valor de la variable a la que está apuntada.
    • El especificador de tipo volatileLa palabra reservada volatile se utilizasintácticamente igual que const, aunqueen cierto sentido tiene sentido opuesto.La declaración de una variable volatileindica al compilador que el valor de esavariable puede cambiar en cualquiermomento por sucesos externos al controldel programa.
    • En un principio es posible que lasvariables volatile se puedan modificar nosólo por el programador sino también porhardware o software del sistema.
    • Punteros a voidEn C++ se puede crear un punterogenérico que puede recibir la dirección decualquier tipo de dato.void main(){void *p;int a=1;double x=2.4;p=&a;p=&x;}
    • No se puede desrefernciar un punterovoid.void main(){ void *p;double x=2.5;p=&x;*p=3.6; // error: se desreferencia a un puntero void}
    • Salida y EntradasLas operaciones de salida y entrada se realizanen C++, mediante flujos (streams) o secuenciasde datos. Los flujos estandar son:cout (flujo de salida)cin (flujo de entrada).La salida fluye normalmente a la pantalla.La entrada representa los datos que procedende teclado. Ambos se pueden redireccionar.
    • SalidaEl flujo de salida se representa por elidentificador cout, que es en realidad unobjeto.El operador << se denomina operador deinserción y dirige el contenido de la variablesituada a su derecha al objeto situado a suizquierda.
    • SalidaEl equivalente en C de cout es printf.El archivo de cabecera iostream.h contienelas facilidades standard de entrada y salida de C++.En C++, los dispositivos de salida estandar norequieren la cadena de formato.
    • Se pueden utilizar también diferente tipos dedatos, enviando cada uno de ellos a la vez alflujo de salida. El flujo cout discierne elformato del tipo de dato, ya que el compiladorC++ lo descifra en el momento de la compilación.El operador de inserción se puede utilizarrepetidamente junto con cout.
    • void main(){int a=4;float b=3.4;char *texto="holan";cout<< "entero " << a << " real " << b <<" mensaje " << texto;}
    • Mostrar por pantalla:cout << expresión;Pedir por teclado:cin >> variable; La variable pude ser de cualquier tipo. EJEMPLO: #include <iostream.h> #include <stdio.h> #include <conio.h> void main() { int i,j; double d; clrscr(); i=10; j=15; cout <<"Introducir valor: "; cin>>d; cout << "Estos son los valores: "; cout << i << " "<< j << " "<< d; getch(); }
    • Salida con formatoC++ asocia un conjunto de manipuladores conel flujo de salida, que modifican el formato pordefecto de argumentos enteros. Por ejemplo,valores simbólicos de manipuladores son dec,oct y hex que visualizan representacionesdecimales, octales y hexadecimales de variable.
    • EntradaC++ permite la entrada de datos através del flujo de entrada cin.El objeto cin es un objeto predefinido quecorresponde al flujo de entrada estandar.Este flujo representa los datos queproceden del teclado. El operador >> sedenomina de extracción o de lectura.Toma el valor del objeto flujo de suizquierda y lo situa en la variable situadaa su derecha.
    • C++ hereda la misma noción de bloque yámbito. En ambos lenguajes, el mismoidentificador se puede usar parareferenciar a objetos diferentes. Un usoen un bloque interno oculta el uso externodel mismo nombre. C++ introduce eloperador de resolución de ámbito o de alcance.
    • El operador :: se utiliza para acceder a unelemento oculto en el ámbito actual.Su sintaxis es: :: variable
    • Ejemplo:#include <iostream.h>int a;void main(){float a;a=1.5;::a=2;cout << "a local " << a << "n";cout << "a global " << ::a << "n";}Este programa visualiza:a local 1.5a global 2Este operador se utilizará también en lagestión de clases.
    • La sintaxis en la P rogramación O rientada a O bjetos
    • Definición de ObjetosTipo Objeto <NombreObjeto>Privado<Campo 1> <TipoDato><Campo 2> <TipoDato><Campo 3> <TipoDato>...<Campo n> <TipoDato>FinPublicoProcedimiento <NombreProc> (lista parámetros formales)Funcion <NombreFunc> (lista parámetros formales) <TipoDatoFuncion>Fin-Objeto
    • Sintaxis de la definición de los procedimientos y funciones:Procedimiento <NombreObjeto>.<NombreProc>(lista parámetros formales)[declaraciones] <cuerpo del procedimiento>FinFuncion <NombreObjeto>.<NombreFunc> (listaparámetros formales) <TipoDatoFuncion>[declaraciones] <cuerpo de la funcion>Fin
    • Ejemplo: Definir el tipo objeto Estudiante con los campos Nombre, Apellido, No. de Carnet, Nota1, Nota2, Nota3, Nota4. Una función que calcule la media de las notas y un procedimiento que informe de dicha media.Definir el tipo objeto Estudiante con los camposNombre, Apellido, No. de Carnet, Nota1, Nota2, Nota3, Nota4.Una función que calcule la media de las notas y unprocedimiento que informe de dicha media.Análisis del problema:Primero se define el tipo objeto donde los campos de datos seestablecen como privados y los métodos como públicos.Luego se debe añadir un procedimiento a través del cual seasigne valores a los campos del objeto.Por último se colocará la unidad objeto dentro de un móduloque realice la declaración de instancias del objeto y el paso demensajes.
    • Procedimiento Estudiante.Iniciar(Nom, Ape Cadena; Num Entero; N1,N2,N3,N4 Real) Nombre = Nom Apellido = Ape NumCarnet = NumTipo Objeto Estudiante Nota1 = N1Privado ‘Definición de campos Nota2 = N2Nombre Cadena Nota3 = N3Apellido Cadena Nota4 = N4NumCarnet Entero FinNota1 RealNota2 Real Funcion Media RealNota3 Real Media = (Nota1+Nota2+Nota3+Nota4)/4Nota4 Real FinFinPublico ‘Definición de la Interfaz Procedimiento Estudiante.MostrarProcedimiento Iniciar(Nom, Ape Cadena; Escribir(Nombre + ‘ ‘ Apellido) Num Entero;N1,N2,N3,N4 Real) Escribir(‘Nota: ‘,Media)Funcion Media Real FinProcedimiento MostrarFinFin-Objeto Inicio Programa Variable E1 Estudiante ‘Instancia E1 de clase Estudiante Variable E2 Estudiante ‘Instancia E2 de clase Estudiante E1.Iniciar(‘Luis’,’Hernández’,348,15,18,13, 17) E1.Mostrar E2.Iniciar(‘Marta’,’Blanco’,839,17,14,12,15 ) E2.Mostrar Fin
    • Agradecimientos MC Alexandro Uc Gonzalez.Universidad Autonoma de Michoacán Lic. Leopoldo Nahúm Ramos Arano Conalep Plantel Zacualpan