Sei sulla pagina 1di 18

10-6-2016

Universidad Tecnolgica del


Estado de Zacatecas
ITIC
Trabajo de investigacin
Materia: Programacin de
Aplicaciones
Docente: M.IA
MARTHA GRISELDA NAVA
DE LA ROSA

JORGE LUIS LEDEZMA MONSIVAIS


Jorge Luis Ledezma Monsivis Programacin de Aplicaciones UTZAC

Introduccin

En este trabajo de investigacin hablramos de programacin orientada a objetos


se darn a conocer algunas metodologas de programacin, lenguaje que es
utiliza en para programa pginas web y seguir una metodologa determinada, por
tanto los lenguajes de programacin se pueden utilizar diferente para el diseo de
una pgina web.
La programacin es cual nos permite crear mecanismo para facilitar la tarea en
especficas para facilitar vida diaria en las personas comunes.
Actualmente la programacin ms utilizada en mbito de la industria, empresarial
y en el mbito acadmico cual promete mejoras de amplio alcance en la forma de
diseo de las pginas o aplicaciones que utiliza programacin orientadas a
objetos.

1
Jorge Luis Ledezma Monsivis Programacin de Aplicaciones UTZAC

INDICE

Contenido
Introduccin ........................................................................................................................................ 1
INDICE.................................................................................................................................................. 2
Lenguajes de Programacin Orientada a Objetos............................................................................... 3
Framework .......................................................................................................................................... 7
Tipos de aplicaciones existentes ......................................................................................................... 8
Paradigma de Programacin Orientada a objetos .............................................................................. 9
Clases................................................................................................................................................. 10
Objetos .............................................................................................................................................. 10
Herencia: ........................................................................................................................................... 11
Asociacin: ........................................................................................................................................ 11
Agregacin......................................................................................................................................... 12
Conceptos Avanzados de la Programacin Orientada a Objetos...................................................... 13
Interfaces: ......................................................................................................................................... 13
Clases Abstractas............................................................................................................................... 14
Conclusiones ..................................................................................................................................... 15
Bibliografa ........................................................................................................................................ 16

2
Jorge Luis Ledezma Monsivis Programacin de Aplicaciones UTZAC

Lenguajes de Programacin Orientada a Objetos


La programacin Orientada a objetos (POO) es una forma especial de programar,
ms cercana a como expresaramos las cosas en la vida real que otros tipos de
programacin.
Con la POO tenemos que aprender a pensar las cosas de una manera distinta,
para escribir nuestros programas en trminos de objetos, propiedades, mtodos y
otras cosas que veremos rpidamente para aclarar conceptos y dar una pequea
base que permita soltarnos un poco con este tipo de programacin.

3
Jorge Luis Ledezma Monsivis Programacin de Aplicaciones UTZAC

A continuacin en el siguiente apartado se muestra una tabla representado


diferentes lenguajes de programacin.

Lenguaje Definicin Caractersticas Ventajas Desventajas


Java Es un lenguaje -Lenguaje -Es -Hay diferentes
de programacin simple independiente tipos soporte
y plataforma Se le conoce de la tcnico para misma
informtica, java como lenguaje plataforma de herramienta, por lo
es rpido, seguro simple porque desarrollo. que el anlisis de
y fiable. viene de la -Existen dentro la mejor opcin se
misma de su librera dificulta.
estructura de c. clases grficos -Para manejo a
-Orientado a comunes bajo nivel deben
objetos: Toda la altamente usarse mtodos
programacin en configurables. nativos, lo que
java en su limita la potabilidad.
mayora est -Puede ser que no
orientada a haya JDBC para
objeto. bases de datos
-Seguro: La poco comerciales.
seguridad es
una
caracterstica
muy importante
en java.
Python Es un lenguaje -Lenguaje de -Rpido de -Los programas
de programacin programacin de desarrollar. interpretados son
desarrollado alto nivel de tipo -Sencillez y ms lentos que
como proyecto scripting. velocidad. compilados
de cdigo abierto -Diseado para -Sus bibliotecas
y es fcil de leer y hacen gran
administrado por simple de parte del
la empresa implementar. trabajo.
Python software -Es cdigo -Soporta varias
Foundation. abierto (de libre bases de datos.
uso).
Es a menudo
usado para
desarrollar
aplicaciones
web y contenido
web dinmico.
4
Jorge Luis Ledezma Monsivis Programacin de Aplicaciones UTZAC

Php Es un lenguaje -Es un lenguaje -Programacin - Se necesita


de cdigo abierto multiplataforma orientada a instalar un servidor
muy popular -Completamente objetos. web.
especialmente orientado de -Lenguaje de -Seguridad como
adecuado para el aplicaciones cdigo libre y es un lenguaje de
desarrollo web y web dinmicas gratuito. cdigo abierto,
que puede ser con acceso a -Biblioteca muy todas las personas
incrustado en informacin amplia de pueden ver el
HTML. almacenada en funciones cdigo fuente.
una Base de nativas -Difcil de
Datos. mantener.

Ruby Es un lenguaje -Orientada a -Permite -No soporta


de programacin objetos. desarrollar polimorfismo de
dinmico y de -Cuatro niveles soluciones a funciones
cdigo abierto de mbito de bajo Costo. -Interpretado
enfocado en la variables: global, -Software libre. =Lento.
simplicidad y clase, instancia Multiplataforma.
productividad. Su y local.
elegante sintaxis -Manejo de
se siente natural excepciones.
al leerla y fcil al -Amplia librera
escribirla. estndar.

Visual En un lenguaje -Control flow -Es un lenguaje -No es


Basic de programacin muestra como RAD multiplataforma
visual con un regular el flujo -Posee una (Sin embargo se
entorno de de la ejecucin curva de pueden usar
desarrollo grafico del programa. aprendizaje emuladores e
proveniente del -Matrices explica muy rpida. intrpretes para
Basic. Es uno de cmo hacer el -Integra el correrlos en otras
los lenguajes cdigo ms diseo e plataformas).
ms utilizados compactos y implementacin -Solo permite el
para realizar eficaz de formularios uso de funciones
aplicaciones de declarando y de Windows. de libreras
grande o utilizando -Permite usar dinmicas.
pequeo tamao. matrices. con suma -Es un lenguaje
facilidad la basado en objetos
plataforma de y no orientado a
los sistemas objetos.
Windows.
Java Es un lenguaje -Maneja objetos -Es un lenguaje - Sus recursos no
Script de scripting dentro de sencillo. son tan extensos.

5
Jorge Luis Ledezma Monsivis Programacin de Aplicaciones UTZAC

multiplataforma y nuestra pgina -Es un lenguaje -Sus opciones 3d


orientado a WEB y sobre de son limitadas
objetos, es ese objeto programacin -En sistemas no
lenguaje podemos definir muy liviano. tan complejos
pequeo y diferentes -Se recomienda puede generar
liviano. Dentro de eventos. para la creacin errores.
un ambiente de -Es dinmico, de aplicaciones
host, java Script responde a web.
puede eventos en -Utiliza poca
conectarse a los tiempo real. memoria.
objetos de su -Eventos como -Tiene gran
ambiente y presionar un cantidad de
proporcionar botn, pasar el efectos visuales
control puntero del -Fcil manejo
programtico mouse sobre un Datos.
sobre ellos. determinado
texto.
CSS Es un lenguaje -Se basa en una -La principal -Mayor esfuerzo el
que describe la serie de reglas ventaja CSS CSS reset es arma
presentacin de que rigen el sobre el de doble filo solo
los documentos estilo de los lenguaje HTML no ahorra tiempo
estructurados en elementos en o similar. en el caso en que
hoja de estilo los documentos -Aumento de la nos interese
para diferentes estructurados. accesibilidad de conservar los
mtodos de - Cada regla los usuarios estilos por defecto.
interpretacin, consiste en un gracias a que -Cdigo sucio si se
describe cmo selector y una pueden da el caso
se va a mostrar declaracin. especificar su mencionado en el
un documento en propia hoja de primer punto, la
pantalla. estilo. redefinicin de
estilo genera
cdigo CSS
excesivo y difcil de
comprender.
Perl Es un lenguaje Es fcil de usar - Facilitan la -Una consecuencia
de programacin es difcil de tarea del de estos es que
muy utilizado aprender. programador a Perl no es un
para construir -Es rpido de costa de unos lenguaje ordenado.
aplicaciones CGI crear, ya que no requerimientos - A vece los errores
para el web. posee funciones de CPU pueden ser difciles
Que viene a que , aunque memoria de encontrar.
indicar que se sean bastantes mayor.
trata de un interesantes, -Soportan una
lenguaje de hagan disminuir variedad
programacin la velocidad de paradigmas de
muy prctico. desarrollo de programacin,

6
Jorge Luis Ledezma Monsivis Programacin de Aplicaciones UTZAC

una aplicacin como la


del lenguaje imperativa,
funcional y la
orientada a
objetos.

Framework
Es una estructura de soporte definida, en la cual otro proyecto de software puede
ser organizado y desarrollado, es un esquema (un esqueleto, un patrn) para el
desarrollo y/o la implementacin de una aplicacin. S, es una definicin muy
genrica, pero tambin puede serlo un framework: sin ir ms lejos, el paradigma
MVC (Model-View-Controller) dice poco ms que separa en tu aplicacin la
gestin de los datos, las operaciones, y la presentacin.
Qu ventajas tiene utilizar un framework?
Las que se derivan de utilizar un estndar; entre otras:
1. El programador no necesita plantearse una estructura global de la
aplicacin, sino que el framework le proporciona un esqueleto que hay que
rellenar.
2. Facilita la colaboracin. Cualquiera que haya tenido que pelearse con el
cdigo fuente de otro programador (o incluso con el propio, pasado algn
tiempo!) sabr lo difcil que es entenderlo y modificarlo; por tanto, todo lo
que sea definir y estandarizar va a ahorrar tiempo y trabajo a los desarrollos
colaborativos.
3. Es ms fcil encontrar herramientas (utilidades, libreras) adaptadas al
framework concreto para facilitar el desarrollo.
Tipos de framework web
Existen varios tipos de frameworks Web: orientados a la interfaz de usuarios,
como Java Server Faces, orientados a aplicaciones de publicacin de
documentos, como Coocon, orientados a la parte de control de eventos, como
Struts y algunos que incluyen varios elementos como Tapestry.

7
Jorge Luis Ledezma Monsivis Programacin de Aplicaciones UTZAC

Un ejemplo: una aplicacin web que utilice Java como lenguaje de programacin
puede implementarse de multitud de formas, mediante servlets y JSPs. Hay
algunas convenciones que es necesario seguir, como usar un fichero de
configuracin web.xml, pero el programador sigue sin tener un patrn claro a
seguir para la creacin de servlets, clases, JSPs, etc.
En una primera estandarizacin, la utilizacin de una arquitectura MVC aconseja
que separemos la lgica de la aplicacin (en los servlets) de la presentacin
(usando JSPs); en concreto, no sera correcto codificar lgica de aplicacin o
accesos a base de datos dentro de los JSP.

Tipos de aplicaciones existentes


Applet
Es muy fcil personalizar tu pgina web, pues incluir en tu pgina web un
calendario, animar de tus imgenes dar efectos especiales al texto o incluir una
seccin para buscar en la red.

Los applets son pequeas aplicaciones Java que se incluye en pginas Web
(HTML) y que se puede ejecutar en cualquier navegador que disponga de un
intrprete Java sin que para su uso necesite intercambiar Informacin con el
servidor.

Ejemplos
Crazy Pages Este applet te permite escribir texto y lo despliega con letras en
diferentes tamao y colores (Miscrosft word Applets, 2007)

Aplicaciones
Las aplicaciones son programas standalone de propsito general que
normalmente se ejecutan desde la lnea de comandos del sistema operativo. Con
Java se puede realizar cualquier programa que normalmente se creara con algn
otro lenguaje de programacin

Servelts

Los servlets al contrario de los applets son programas que estn pensados para
trabajar en el lado del servidor y desarrollar aplicaciones Web que interacten con
los clientes. Los servlets son una alternativa de la programacin CGI traiciona

8
Jorge Luis Ledezma Monsivis Programacin de Aplicaciones UTZAC

Son pequeos programas escritos en Java que admiten peticiones a travs del
protocolo HTTP. Los servlets reciben peticiones desde un navegador web, las
procesan y devuelven una respuesta al navegador, normalmente en HTML. Para
realizar estas tareas podrn utilizar las clases incluidas en el lenguaje Java. Estos
programas son los intermediarios entre el cliente (casi siempre navegador web) y
los datos (BBDD) (Los Teatinos, s.f.)

Paradigma de Programacin Orientada a objetos

Paradigma POO
El paradigma orientado a objetos (OO) define los programas en trminos de
comunidades de objetos. Los objetos con caractersticas comunes se agrupan en
clases (un concepto similar al de tipo abstracto de dato (TAD)). Los objetos son
entidades que combinan un estado (es decir, datos) y un comportamiento (esto es,
procedimientos o mtodos). Estos objetos se comunican entre ellos para realizar
tareas. Es en este modo de ver un programa donde este paradigma difiere del
paradigma imperativo o estructurado, en los que los datos y los mtodos estn
separados y sin relacin. El paradigma OO surge para solventar los problemas
que planteaban otros paradigmas, como el imperativo, con el objeto de elaborar
programas y mdulos ms fciles de escribir, mantener y reutilizar. Entre los
lenguajes que soportan el paradigma OO estn Smalltalk, C++, Delphi (Object
Pascal), Java y C#. (Plataforma educativa, s.f.)

9
Jorge Luis Ledezma Monsivis Programacin de Aplicaciones UTZAC

Clases
Las clases son uno de los principales componentes de un lenguaje de
programacin, pues en ellas ocurren todos los procesos lgicos requeridos para
un sistema, en si podemos definirlas como estructuras que representan objetos del
mundo real, tomando como objetos a personas, lugares o cosas, en general las
clases poseen propiedades, comportamientos y relaciones con otras clases del
sistema.
Una clase se compone por tres partes fundamentales:

Nombre: contiene el nombre de clase


Atributos: Representan los propiedades que caracterizan la clase.
Mtodo: Representan el comportamiento u operaciones, la forma como interacta
la clase con su entorno.

Objetos
Los objetos representan una entidad concreta o abstracta del mundo real, en
programacin bsicamente se le conoce como la instancia de una clase en si es lo
que da el sentido a estas.

Al igual que las clases se componen de tres partes fundamentales:

Estado: Representa los atributos o caractersticas con valores concretos del


objeto.
Comportamiento: Se define por los mtodos u operaciones que se pueden realizar
con l.
Identidad: Es la propiedad nica que representa al objeto y lo diferencia del resto.
En java se representa creando una instancia de la clase por medio de la palabra
new al hacer eso creamos el objeto de la clase y podemos hacer uso de los
mtodos o atributos de esta (dependiendo de la visibilidad de los mismos

10
Jorge Luis Ledezma Monsivis Programacin de Aplicaciones UTZAC

Herencia:
La herencia en java representa lo que conocemos de herencia en el mundo real,
bsicamente mediante esta obtenemos las caractersticas o rasgos comunes de
nuestros padres o abuelos, en java es el mismo enfoque permitiendo la creacin
de nuevas clases basadas en clases ya existentes, con las cuales podemos
obtener las caractersticas de las clases padres, heredando campos, atributos,
mtodos o funcionalidades.
En Java solo se puede heredar de una sola clase padre y se representa mediante
la palabra extend. (Conceptos Basicos de progrmacion Orientada a objetos, s.f.)
En la siguiente ilustracin es muestra un ejemplo de herencia

Asociacin:
Es generalmente, una relacin estructural entre clases, es decir, que en el
ejemplo, existe un atributo de la clase medio de transportes, que es del tipo
Conductor. La navegalidad nos muestra donde est ubicado el atributo. Es decir
cul es la clase que tiene contiene el atributo si sta no lo mostrase.

11
Jorge Luis Ledezma Monsivis Programacin de Aplicaciones UTZAC

La multiplicidad en una Asociacin dice bastante, ya que de eso depender si el


atributo, es una coleccin o simplemente una variable de referencia a un objeto.
Ejemplos
El ingeniero usa una computadora
El cliente usa tarjeta de crdito.
En la siguiente ilustracin es muestra un ejemplo de asociacin

Agregacin
Es una relacin que se deriv de la asociacin, por ser igualmente estructural, es
decir que contiene un atributo, que en todos los casos, ser una coleccin, es
decir un Array, Vector, Collections, etc., y adems de ello la clase que contiene la
coleccin debe tener un mtodo que agregue los elementos a la coleccin.
Tambin se puede leer como que un medio de transporte tiene varios pasajeros.
Nos est diciendo que los objetos pasajeros forman parte del objeto medio de
transporte. Pero, su ciclo de vida no est atado al del objeto medio de transporte.
Es decir si el Autobs se destruye los pasajeros pueden seguir existiendo
independientemente, (o por lo menos por eso rezaramos) (Pensamientos, 2008)

12
Jorge Luis Ledezma Monsivis Programacin de Aplicaciones UTZAC

Conceptos Avanzados de la Programacin Orientada a Objetos

Polimorfismo
Este tal vez sea uno de los conceptos de la programacin orientada a objetos ms
usados pero muchas veces sin saber que se aplica ya que el concepto
inicialmente puede ser un poco confuso, bsicamente mediante el polimorfismo
programamos de forma general en lugar de hacerlo de forma especfica, se usa

Cuando se trabajen con la herencia y objetos de caractersticas comunes los


cuales comparten la misma superclase y rbol jerrquico, al trabajar con este
concepto optimizamos y simplificamos en gran medida nuestro trabajo.
Bsicamente podemos definirlo como la capacidad que tienen los objetos de
comportarse de mltiples formas sin olvidar que para esto se requiere de la
herencia, en si consiste en hacer referencia a objetos de una clase que puedan
tomar comportamientos de objetos descendientes de esta.

En la siguiente ilustracin es muestra un ejemplo de polimorfismo

Interfaces:
Las interfaces son el mecanismo que utiliza Java para simular la herencia mltiple,
como mencionamos en Java solo se puede extender de una sola clase, mediante
el uso de interfaces esto se puede simular ya que el lenguaje permite implementar
el nmero de interfaces que necesitemos, bsicamente son clases completamente
abstractas, es comn relacionarlas con un contrato en el que se define que se
debe hacer, as cada clase concreta que implemente una interfaz est obligada a
implementar todos los mtodos que la compongan.

13
Jorge Luis Ledezma Monsivis Programacin de Aplicaciones UTZAC

Las interfaces definen lo que la clase que la implemente deber hacer, ms no la


forma como lo har.
Al decir que las interfaces son clases completamente abstractas significa que
todos sus mtodos lo son y por ende no poseen implementacin, no requieren el
uso de la palabra reservada abstract, ya que al ser completamente abstracta todo
dentro de ella lo es, al igual que las clases abstractas la implementacin de los
mtodos depende de las clases concretas que las usen.
Se debe tener en cuenta que toda variable definida en una interfaz
automticamente se convierte en una constante, adems tampoco se puede
instanciar una interfaz
En la siguiente ilustracin es muestra un ejemplo de una interfaces

Clases Abstractas.

La abstraccin permite resaltar la parte ms representativa de algo, ignorando


detalles para centrarse en lo principal.

14
Jorge Luis Ledezma Monsivis Programacin de Aplicaciones UTZAC

Las clases abstractas permiten crear mtodos generales con un comportamiento


comn para otras clases concretas sin importar sus caractersticas ni el
comportamiento que usen para dichos mtodos.

La Abstraccin en java solo tiene lgica mediante la Herencia, ya que una clase
abstracta posee al menos un mtodo abstracto el cual no tiene implementacin, el
comportamiento de estos mtodos lo definen las clases concretas que lo hereden.
Podemos usarlos cuando existan varias clases con caractersticas o acciones
comunes pero con diferentes comportamientos, mediante el uso de la herencia y
componentes abstractos hacemos ms ptima y organizada nuestra aplicacin.
(Hay que tener en cuenta que a diferencia de las clases concretas, las clases
abstractas no se pueden instanciar).
En la siguiente ilustracin es muestra un ejemplo de clase abstractas

Conclusiones

La programacin orientada a objetos nos permite la programacin de aplicaciones


de cdigo generado gracias a que mediante tcnicas de herencia, clases, atributos
entre otros que permiten, pueda llevar acabo a la programacin manera que sea
reutilizable el cdigo de algunas aplicaciones.
Mediante la programacin podemos establecer soluciones primitivas de un
problema real para poder solucionar necesidades de hoy en da.

15
Jorge Luis Ledezma Monsivis Programacin de Aplicaciones UTZAC

Por eso la programacin es gran importancia para resolver problemas y dar


soluciones cual nos ayuda crear herramientas de para beneficio de la misma
carrera as como para otra rea importantes.

Bibliografa
(s.f.). Obtenido de https://es.scribd.com/doc/65833678/Conceptos-Basicos-de-Visual-Basic

ALESCA. (s.f.). Obtenido de Definicin de Python (lenguaje de programacin):


http://www.alegsa.com.ar/Dic/python.php

Alvarez, M. A. (s.f.). Que es Perl. Obtenido de http://www.desarrolloweb.com/articulos/541.php

caractersticas de Java - caractersticas de java:. (22 de 11 de 2012). Obtenido de


http://sheyla88.blogspot.es/1252973711/caracter-sticas-de-java/#com

Caracteristicas de Java Script. (18 de 01 de 2013). Obtenido de


http://www.uazuay.edu.ec/estudios/sistemas/lenguaje_iii/MAnualJavaScript/caracteristic
as.htm

Conceptos Basicos de progrmacion Orientada a objetos. (s.f.). Obtenido de


http://codejavu.blogspot.mx/2013/05/conceptos-de-programacion-orientada.html

garpetta. (13 de 11 de 2008). VENTAJAS Y DESVENTAJAS DE VISUAL BASIC . Obtenido de


http://wwwgarpetta-cafa.blogspot.mx/2008/11/ventajas-y-desventajas-de-visual-
basic.html

Java script ventajas y desventajas. (10 de 01 de 2016). Obtenido de


https://www.clubensayos.com/Temas-Variados/JAVA-SCRIPT-VENTAJAS-Y-
DESVENTAJAS/222066.html

Lenguaje de programacion. (7 de 12 de 2011). Obtenido de http://aplicaciones-web-lenguajes-


programaci.blogspot.mx/2011/12/ruby.html

Lenguaje perl. (2 de 10 de 2014). Obtenido de http://perlanaypaty.blogspot.mx/2008/12/lenguaje-


perl.html

Los Teatinos. (s.f.). Obtenido de http://www.losteatinos.es/servlets/servlet.html

masadelante. (s.f.). Definicin de CSS -. Obtenido de http://www.masadelante.com/faqs/css

MDN. (15 de 01 de 2016). Introduccion javaScript. Obtenido de


https://developer.mozilla.org/es/docs/Web/JavaScript/Guide/Introducci%C3%B3n

Miscrosft word Applets. (29 de 08 de 2007). Obtenido de


http://campus.iztacala.unam.mx/mmrg/mono54/archivos_archivos/arch_005_applets.pdf

16
Jorge Luis Ledezma Monsivis Programacin de Aplicaciones UTZAC

Pensamientos. (27 de 09 de 2008). Obtenido de http://arodm.blogspot.mx/2008/09/uml-


relaciones-compocicion-agregacion.html

Plataforma educativa. (s.f.). Obtenido de


http://aprendeenlinea.udea.edu.co/lms/men_udea/mod/page/view.php?id=19537

Programacion perl caracteriticas. (5 de 10 de 2014). Obtenido de


http://trabajodeprogramacionperl.blogspot.mx/p/caracteristicas.html

PYTHON. (2008). Obtenido de


http://www.it.uc3m.es/spickin/docencia/comsoft/presentations/spanish/doc/Python.pdf

Que es un Framework. (s.f.). Obtenido de http://jordisan.net/blog/2006/que-es-un-framework/

RUBY. (s.f.). RUBY. Obtenido de https://www.ruby-lang.org/es/

Ventajas y desventajas de los css. (15 de 05 de 2014). Obtenido de


http://www.4rsoluciones.com/blog/ventajas-y-desventajas-de-los-css-resets-2/

17

Potrebbero piacerti anche