Você está na página 1de 8

Instituto Politcnico Nacional

Unidad Profesional Interdisciplinaria en Ingeniera y Tecnologas Avanzadas

Anlisis y diseo de sistemas operativos

Actividad "Cuestionario de paradigma orientado a objetos (POO)

M en C. Paola Nayeli Cortez Herrera

Alumnos
Bruno Alexis Ramrez Huerta Eduardo Samuel Zamora Alonso

1TV1
1

Introduccin al paradigma orientado a objetos


1. Qu se entiende por el paradigma orientado a objetos?
Antes de explicar cualquier cosa quisiera hacer nfasis en la definicin de paradigma, que en pocas palabras significa Modo de Pensar, de aqu podemos decir que tambin es un modelo o patrn en cualquier disciplina. Entendiendo esto podemos explicar de mejor manera acerca del paradigma orientado a objetos que es una forma especial de programar (pensar), ms cercana a como expresaramos las cosas en la vida real que otros tipos de programacin, aqu tenemos que aprender a pensar las cosas de una manera distinta, para escribir nuestros programas en trminos de objetos, propiedades y mtodos.

De manera ms especfica este paradigma se fundamenta en los conceptos de objetos y clase, es decir, objeto se entiende como una entidad autnoma con una funcionalidad concreta y bien definida, es decir, nosotros creamos un objeto y lo hacemos solo para realizar una orden o alguna accin especfica, y clase que es una especificacin de las caractersticas de un conjunto de objetos, un objeto es una instancia de una clase, en otras palabras la clase define como se puede comportar un o algn grupo de objetos con caractersticas en comn, tambin existen 4 bases principales que cualquier sistema orientado a objetos en comparacin con la programacin clsica que si debe tener tales como incorporar la herencia, el el

encapsulamiento,

polimorfismo y la abstraccin esto en las siguientes preguntas se explicara.

2. Cul fue la evolucin de C a C++?


Para responder a esta pregunta, tomare una breve parte de la historia de C y como por varias necesidades y problemas fue cambiando y evolucionando a C++.
2

El lenguaje C evoluciono a partir de B; dicha evolucin estuvo a cargo de Dennis Ritchie en los laboratorios Bell y, en 1972, se implement en una computadora DEC PDP11. C utiliza muchos conceptos importantes de BCPL y B cuando agrega tipos de datos y otras caractersticas. Inicialmente, C se hizo muy popular como lenguaje de desarrollo para el sistema operativo UNIX. En la actualidad, la mayora de los sistemas operativos estn escritos en C y/o C++ y C se encuentra disponible para la mayora de las computadoras, y es independiente del hardware. Con un diseo cuidadoso, es posible escribir programas en C que sean portables para la mayora de computadoras. La amplia utilizacin de C para distintos tipos de computadoras ocasiono, desafortunadamente, muchas variantes. Estas eran similares, pero a menudo incompatibles, lo que se volvi un problema serio para los desarrolladores que necesitaban escribir programas que se pudieran ejecutar en distintas plataformas. Entonces, se hizo evidente la necesidad de una versin estndar de C. A principios de la dcada de los ochenta, Bjarne Stroustrup desarrollo una extensin de C en los laboratorios Bell: C++. C++ proporciona un conjunto de caractersticas que pulen al lenguaje C como las clases y funciones virtuales (de SIMULA67), tipos genricos y expresiones (de ADA), la posibilidad de declarar variables en cualquier punto del programa (de ALGOL68), pero lo ms importante, proporciona la capacidad de una programacin orientada a objetos. Estas nuevas caractersticas mantienen siempre la esencia del lenguaje C: otorgan el control absoluto de la aplicacin al programador, consiguiendo una

velocidad muy superior a la ofrecida por otros lenguajes. El siguiente hecho fundamental en la evolucin de C++ es sin duda la incorporacin de la librera STL aos ms tarde, obra de Alexander Stepanov y Adrew Koening. Esta librera de clases con contenedores y algoritmos genricos proporciona a
3

C++ una potencia nica entre los lenguajes de alto nivel. C++ es un lenguaje hibrido (en l es posible programas tanto en estilo C, como en estilo orientado a objetos, o en ambos).

3. Mencione personajes que disearon lenguajes de programacin

Personajes
John Backus John McCarthy John George Kemeny y Thomas Eugene Kurtz Niklaus Wirth Alain Colmerauer y Phillipe Roussel Larry Wall Guido Van Rossum Yukihiro Matsumoto James Gosling Brendan Eich Rasmus Lerdorf Ken Thompson Martin Richard Dennis Ritchie Bjarne Stroustrup Anders Hejlsberg

Lenguaje de programacin
Fortran Lisp Basic Pascal Prolog Perl Phyton Ruby Java Java script Php B BCPL C C++ C#

4. Del punto anterior, de la bibliografa de un personaje

Dennis Ritchie
Naci en Bronxville (Nueva York) el 9 de septiembre de 1941. Obtuvo dos grados en Harvard, en fsica y matemtica aplicada. En 1967 entr a trabajar en los Laboratorios Bell, donde participo en los equipos que desarrollaron Multics, BCPL, ALTRAN y el lenguaje de

programacin B. En Lucent encabez los esfuerzos para la creacin de Plan 9 e Inferno, as como del lenguaje de programacin Limbo. Ritchie es conocido sobre todo por ser el creador del lenguaje de programacin C y cocreador, junto con Ken Thompson, del sistema operativo Unix. Tambin fue coautor junto con Brian Kernighan del manual El lenguaje de programacin C, que durante aos fue el estndar de facto del lenguaje (conocido como K&R C), hasta la aparicin del ANSI C. Estas aportaciones han convertido a Ritchie en un importante pionero de la informtica moderna. El lenguaje C an se usa ampliamente hoy da en el desarrollo de aplicaciones y sistemas operativos, y ha sido una gran influencia en otros lenguajes ms modernos como el lenguaje de programacin Java. Unix tambin ha sentado las bases de los sistemas operativos modernos, estableciendo conceptos y principios que hoy son ampliamente adoptados.

5. Mencione los lenguajes de programacin programacin orientada o objetos (POO)


C++ Objetive c Python CBOL Java Smalltalk Visual basic.net Php Eiffel Lexico Perl C# Ruby

que

soportan

la

Object Pascal Clips Action script OCAML Visual.net Power Builder Delphi

6. Cules son las caractersticas de la programacin orientada a objetos (POO)?


Encapsulamiento En la programacin clsica existen datos y procedimientos que actan sobre esos datos. No hay una relacin aparente entre datos y procedimientos (funciones) y esta relacin se establece de manera ms o menos precisa de acuerdo a la profesionalidad del programador. En un objeto podemos distinguir dos aspectos bien diferenciados:

Estado -----------> Propiedades Comportamiento ---> Mtodos En Programacin Orientada a Objetos los datos y los procedimientos que los rigen estn relacionados explcitamente y se "encapsulan" en un objeto. La especificacin de las propiedades de un objeto y los mtodos de acceso se realiza en la declaracin de la clase de la que se instancia el objeto.
6

Herencia Cuando una clase hereda de otra, la clase derivada incorpora todos los miembros de la clase base adems de los suyos propios. La herencia es una herramienta muy importante en muchos aspectos del desarrollo de aplicaciones:

Organizacin del diseo. Reusabilidad de clases (propias o no). Mejora del mantenimiento. Polimorfismo Es demostrar comportamientos distintos segn la situacin. Puede darse de tres formas diferentes:

Funciones: sobrecarga. Clases: es al que se refiere normalmente el concepto de polimorfismo. Enlace dinmico: mtodos virtuales. Sobrecarga de funciones. Ocurre cuando en una clase existen dos mtodos con idntico nombre pero con distinta lista de parmetros. El compilador los considera como dos mtodos distintos y aplicar cada uno de ellos en la situacin apropiada. Abstraccin Es la ocultacin de detalles irrelevantes o que no se desean mostrar. Podemos distinguir en una clase dos aspectos desde el punto de vista de la abstraccin:

Interfaz: lo que se puede ver/usar externamente de un objeto. Implementacin: cmo lleva a cabo su cometido.

Bibliografa
-Cmo programar en C++, Deitel Deitel, Pearson Prentice Hall -http://expo.itch.edu.mx/view.php?f=prog_20 -http://www.desarrolloweb.com/articulos/499.php

Você também pode gostar