Documentos de Académico
Documentos de Profesional
Documentos de Cultura
Trabajo Sexto
Trabajo Sexto
Nombre de la Licenciatura
Ingeniarían en sistemas Computacionales
Nombre del alumno
Matrícula
Nombre de la Tarea
Conceptos basicos de la programacion orientada a
Objetos
Unidad #1
Conceptos basicos de la programacion orientada a
Objetos.
Nombre del Tutor
Carlos Alanias Rodrigo Rico
Fecha
9/1/2017
Unidad 1. Conceptos basicos de la programacion orientada a
Objetos.
Conceptos basicos de la programacion orientada a
Objetos
Desarrollo____________________________________________________________________
1. Investiga otro paradigma de programación (además del orientado a objetos) y pon un ejemplo de qué
lenguaje de programación pertenece a ese paradigma y qué aplicaciones tiene.
www.aprenderaprogramar.com/index.php?...programacion-orientada-a-objetos
fcasua.contad.unam.mx/apuntes/interiores/docs/98/opt/java D)) (s/f)
2
Unidad 1. Conceptos basicos de la programacion orientada a
Objetos.
Conceptos basicos de la programacion orientada a
Objetos
a cualquier escala de producción. La OO parece estar ligada en sus orígenes con lenguajes Como Lisp y
Simula, aunque el primero que acuñó el título de "programación orientada a objetos" fue Smalltalk”
Con código funcional, en contraste, el valor generado por una función depende exclusivamente de los
argumentos alimentados a la función. Al eliminar los efectos secundarios se puede entender y predecir el
comportamiento de un programa mucho más fácilmente. Ésta es una de las principales motivaciones para
utilizar la programación funcional. Los lenguajes de programación funcional, especialmente los puramente
funcionales, han sido enfatizados en el ambiente académico y no tanto en el desarrollo comercial o
industrial. Sin embargo, lenguajes de programación funcional como Scheme, Erlang, Rust, Objective Caml ,
Scala, F# y Haskell, han sido utilizados en aplicaciones comerciales e industriales por muchas
organizaciones. La programación funcional también es utilizada en la industria a través de lenguajes de
dominio específico como R (estadística), Mathematica (matemáticas simbólicas), J y K (análisis financiero).
JavaScript, uno de los lenguajes más ampliamente utilizados en la actualidad, también incorpora
capacidades de programación funcional. Python también incorpora particularidades de los lenguajes
funcionales como listas de comprensión y funciones de tratamiento de listas como matemática de conjuntos.
Java en su versión 8, está incorporando la programación funcional, así como el uso de las expresiones
lambda.
Los programas escritos en un lenguaje funcional están constituidos únicamente por definiciones de
funciones, entendiendo éstas no como subprogramas clásicos de un lenguaje imperativo, sino como
funciones puramente matemáticas, en las que se verifican ciertas propiedades como la transparencia
referencial (el significado de una expresión depende únicamente del significado de sus subexpresiones), y
por tanto, la carencia total de efectos colaterales.
Entre los lenguajes funcionales puros, cabe destacar a Haskell y Miranda. Los lenguajes funcionales
híbridos más conocidos son Scala, Lisp, Clojure, Scheme, Ocaml, SAP y Standard ML (estos dos últimos,
www.aprenderaprogramar.com/index.php?...programacion-orientada-a-objetos
fcasua.contad.unam.mx/apuntes/interiores/docs/98/opt/java D)) (s/f)
3
Unidad 1. Conceptos basicos de la programacion orientada a
Objetos.
Conceptos basicos de la programacion orientada a
Objetos
descendientes del lenguaje ML). Erlang es otro lenguaje funcional de programación concurrente.
Mathematica permite la programación en múltiples estilos, pero promueve la programación funcional. R
también es un lenguaje funcional dedicado a la estadística. Recientemente Microsoft Research está
trabajando en el lenguaje F# (Functional#). Entre otros lenguajes que se podrían utilizar para programación
funcional se podrían incluir a Perl, pues, aunque es un lenguaje de propósito muy general, se pueden
realizar programas usando exclusivamente funciones definidas por el usuario; así como Python, como
lenguaje que incorpora el paradigma funcional; o Ruby.
Miranda fue desarrollado entre los años 1985 y 1986 por David Turner. Se trata de un lenguaje de
programación funcional sucesor de SASL y KRC.
El principal objetivo de este lenguaje era el desarrollar una versión comercial de un lenguaje funcional:
no-estricto.
puramente funcional.
Fue comercializado por Research Software Ltd. de Inglaterra, la cual registró la palabra 'Miranda' como
marca comercial. Fue el primer lenguaje puramente funcional en ser destinado al uso comercial y no al
académico La solución a muchos ejemplos de programas resulta más simple en Miranda que en la mayoría
de los lenguajes de programación excepto quizás APL, y como otros lenguajes funcionales, sus usuarios
comentan que este les permite producir programas fiables en un menor período en comparación con otros
lenguajes de programación usados anteriormente
Salió por primera vez en 1985 como un intérprete rápido en C para los sistemas operativos Unix, con
sucesivas entregas en 1987 y 1989. El último lenguaje de programación Haskell es similar un muchos
aspectos a Miranda.Todos los lenguajes de la familia de MIRANDA se caracterizan porque los argumentos
se pasan a las funciones sin evaluar (lazy evaluation): el argumento de una función se evalúa cuando la
función necesita su valor.
www.aprenderaprogramar.com/index.php?...programacion-orientada-a-objetos
fcasua.contad.unam.mx/apuntes/interiores/docs/98/opt/java D)) (s/f)
4
Unidad 1. Conceptos basicos de la programacion orientada a
Objetos.
Conceptos basicos de la programacion orientada a
Objetos
Es raro la necesidad del uso de corchetes y no es necesario el uso de terminaciones de instrucción (;, endif,
…) Los comentarios se inician utilizando los caracteres ‘||’ y continua hasta el final de la línea. Una
convención alternativa de comentarios es la que afecta a todo el fichero fuente, conocida como “literate
srcript”, en la cual todo línea es comentario a no ser que empiece por el signo’ >’
Los tipos básicos de datos de Miranda son char, num y bool. Una cadena de caracteres no es más que una
lista de chars, mientras que num puede representar tanto a enteros como a reales sin necesidad de
conversiones explícita
Las tuplas son secuencias de elementos de distintos tipos, análogo a los registros de los lenguajes
parecidos a Pascal, y son escritos entre paréntesis
La lista en cambio, es la estructura de datos más usada en Miranda. Se escribe entre corchetes y separa
cada elemento por comas, los cuales deben de ser del mismo tipo.
week_days = ["Mon","Tue","Wed","Thur","Fri"]
La concatenación de listas es mediante ‘++’, la diferencia con ‘--‘, la construcción con ‘:’ comprobar el
tamaño con ‘#’ y devolver el elemento de cierta posición de la lista (indexación) mediante ‘!’
days = "Nil":days
days!0
→ "Nil"
5
Unidad 1. Conceptos basicos de la programacion orientada a
Objetos.
Conceptos basicos de la programacion orientada a
Objetos
#days
→7
Existen muchos atajos para construir listas: ‘..’ es usado para listas cuyos elementos forman un serie
aritmética, con la posibilidad de especificar un orden de incremento a parte de en 1:
2. Investiga qué otras opciones de IDE (entornos integrados de desarrollo) existen para programar con
Java y enuméralos (al menos 3). Además, enumera 5 programas que estén desarrollados con Java;
por ejemplo, BlueJ está hecho con Java.
IDE como a un programa que nos permite desarrollar código en un lenguaje y que incorpora habitualmente:
a) Un espacio para la escritura de código con cierta ayuda interactiva para generar código y para indicar los
errores de sintaxis que se cometan por parte del programador.
a) Eclipse: software libre que se puede descargar en http://www.eclipse.org. Es uno de los entornos Java más
utilizados a nivel profesional. El paquete básico de Eclipse se puede expandir mediante la instalación de
plugins para añadir funcionalidades a medida que se vayan necesitando.
www.aprenderaprogramar.com/index.php?...programacion-orientada-a-objetos
fcasua.contad.unam.mx/apuntes/interiores/docs/98/opt/java D)) (s/f)
6
Unidad 1. Conceptos basicos de la programacion orientada a
Objetos.
Conceptos basicos de la programacion orientada a
Objetos
b) NetBeans: software libre que se puede descargar en http://www.netbeans.org. Otro de los entornos Java
muy utilizados, también expandible mediante plugins. Facilita bastante el diseño gráfico asociado a
aplicaciones Java.
c) BlueJ: software libre que se puede descargar en http://bluej.org. Es un entorno de desarrollo dirigido al
aprendizaje de Java (entorno académico) y sin uso a nivel profesional. Es utilizado en distintas universidades
para la enseñanza de Java. Destaca por ser sencillo e incluir algunas funcionalidades dirigidas a que las
personas que estén aprendiendo tengan mayor facilidad para comprender aspectos clave de la programación
orientada a objetos.
d) JBuilder: software comercial. Se pueden obtener versiones de prueba o versiones simplificadas gratuitas en
la web http://www.embarcadero.com buscando en la sección de productos y desarrollo de aplicaciones.
Permite desarrollos gráficos.
e) JCreator: software comercial. Se pueden obtener versiones de prueba o versiones simplificadas gratuitas
en la web http://www.jcreator.com. Este IDE está escrito en C++ y omite herramientas para desarrollos
gráficos, lo cual lo hace más rápido y eficiente que otros IDEs.
1. BlueJ - Programación
BlueJ es una herramienta diseñada en una forma básica, pero potente para la realización de programas
escritos en Java. Puede crear, compilar y ejecutar el código.
Además es posible empaquetar las clases de las aplicaciones escritas en un archivo “.jar” porque resulta
bastante útil.
Cuenta con una interfaz muy sencilla, y además es una aplicación libre.
2. Buho21 - Juegos
Buho21, es una aplicación que se basa en juegos humano – humano por internet.
Esta pequeña pero poderosa aplicación, es capaz de proporcionar las herramientas para poder jugar con
personas de otros países. Es muy fácil de manejar, ya que puedes o no estar registrado para poder utilizarla.
Cuando yo conocí este programa, fue hace 2 o 3 años aproximadamente, y en ese tiempo solo contaba con el
juego de Ajedrez y Trivia.
www.aprenderaprogramar.com/index.php?...programacion-orientada-a-objetos
fcasua.contad.unam.mx/apuntes/interiores/docs/98/opt/java D)) (s/f)
7
Unidad 1. Conceptos basicos de la programacion orientada a
Objetos.
Conceptos basicos de la programacion orientada a
Objetos
Hoy cuentas con mas juegos, como lo son: Parchís, Domino y Reversi.
3. JDownloader – Descargas
Sin duda alguna, cuando de descargar de servidores como RapidShare, MegaUpload, GigaSize, etc. (ver lista
completa de servidores que soporta en su sitio), esta es la mejor opción.
Se actualiza constantemente. Cuenta con una interfaz sencilla. Además es capaz de manipular tus descargas:
puedes pausar, resumir, limitar cantidad de descargas simultáneas, limitar el ancho de banda, reconectar, etc.
Puede reconocer la mayoría de las capchas que utilizan los servidores, y se mejoran las herramientas para
poder detectarlas y hacer más ameno su uso. Así como también aumenta la cantidad de servidores. Y
actualmente, también puede descargar videos de las páginas más reconocidas de almacenamiento de videos
online.
LimeWire, es otro gran programa que sirve para realizar descargas tipo P2P y torrent. Existen 2 versiones: la
Basic y la Pro (de paga).
Desde su versión 5, contiene una interfaz un poco más complicada que sus versiones anteriores. Pero no
resulta difícil su uso.
Contiene un poderoso motor de búsqueda para los diferentes formatos que existen.
5. NetBeans – Programación
Esta es mi herramienta preferida a la hora de estar programando en Java, aunque soportas otros lenguajes de
programación como lo son: C++, Ruby, PHP, Java SE, Java ME, Java 2EE, Java FX, Groove.
Al ser una herramienta súper completa, resulta un poco más difícil acostumbrarse las primeras veces de uso,
pero una vez adquiridos los conocimientos básicos, lo demás resulta bastante fácil de comprender y
manipular.
www.aprenderaprogramar.com/index.php?...programacion-orientada-a-objetos
fcasua.contad.unam.mx/apuntes/interiores/docs/98/opt/java D)) (s/f)
8
Unidad 1. Conceptos basicos de la programacion orientada a
Objetos.
Conceptos basicos de la programacion orientada a
Objetos
Algo bueno que tiene este IDE de programación, es que es libre y contiene gran cantidad de plugins
desarrollados tanto por los creadores (Sun Microsystem) como de programadores ajenos a la compañía. Esto
es de gran ayuda ya que facilita las tareas.
Si eres programador de alguno de los lenguajes antes mencionados, te recomiendo ampliamente usar este
sistema tan impresionante, ya que te facilitara tus tareas de programación.
6. OpenOffice – Ofimática
También desarrollada por Sun Microsystem, esta es una gran herramienta de ofimática que recientemente
está estrenando versión.
Aunque no está completamente programada en Java, resulta bastante útil, ya que es una aplicación libre y
soporta la mayoría de los formatos de ofimática del mercado (incluyendo Microsoft Office).
También cuenta con gran cantidad de plugins para poder hacer de esta suit, una herramienta más completa.
Conclusión________________________________________________________________________
La programación Orientada a objetos (POO) es una forma especial de programar, más cercana a como
expresaríamos las cosas en la vida real que otros tipos de programación. Con la POO tenemos que aprender
a pensar las cosas de una manera distinta, para escribir nuestros programas en términos de objetos,
propiedades, métodos y otras cosas que veremos rápidamente para aclarar conceptos y dar una pequeña
base que permita soltarnos un poco con este tipo de programación.
www.aprenderaprogramar.com/index.php?...programacion-orientada-a-objetos
fcasua.contad.unam.mx/apuntes/interiores/docs/98/opt/java D)) (s/f)