1. ¿Qué
entiendes por programación orientada a objetos?
La
Programación Orientada a Objetos (POO u OOP por sus siglas en inglés), es
un paradigma de programación que usa los objetos en
sus interacciones, para diseñar aplicaciones y programas informáticos. Básicamente,
este paradigma se compone de 6 elementos y 7 características incluyendo
herencia, cohesión, abstracción, polimorfismo, acoplamiento y encapsulamiento.
Su uso se popularizó a principios de la década de los años 1990. En la
actualidad, existe una gran variedad de lenguajes de programación que soportan
la orientación a objetos.
2. Dentro
de la programación orientada a objetos menciona su herencia.
Algunos
objetos comparten las mismas propiedades y métodos que otro objeto, y además
agregan nuevas propiedades y métodos. A esto se lo denomina herencia: una clase
que hereda de otra. Vale aclarar, que en Python, cuando una clase no
hereda de ninguna otra, debe hacerse heredar de object, que es la clase
principal de Python, que define un objeto.
class Antena(object):
color = ""
longitud = ""
class Pelo(object):
color = ""
textura = ""
class Ojo(object):
forma = ""
color = ""
tamanio = ""
class Objeto(object):
color = ""
tamanio = ""
aspecto = ""
antenas = Antena()
ojos = Ojo()
pelos = Pelo()
def flotar(self):
pass
class Dedo(object):
longitud = ""
forma = ""
color = ""
class Pie(object):
forma = ""
color = ""
dedos = Dedo()
# NuevoObjeto sí hereda de otra clase: Objeto
class NuevoObjeto(Objeto):
pie = Pie()
def saltar(self):
pas
3. Polimorfismo
menciona sus clases, subclases y superclases.
El polimorfismo consiste en conseguir que un objeto de una clase se
comporte como un objeto de cualquiera de sus subclases, dependiendo de la forma
de llamar a los métodos de dicha clase o subclases. Una forma de conseguir
objetos polimórficos es mediante el uso de punteros a la superclase. De esta
forma podemos tener dentro de una misma estructura (arrays, listas, pilas,
colas, etc.) objetos de distintas subclases, haciendo que el tipo base de
dichas estructuras sea un puntero a la superclase.
Clasificación
Se puede clasificar el polimorfismo en dos grandes clases:
• Polimorfismo dinámico (o polimorfismo paramétrico) es aquél en el que
el código no incluye ningún tipo de especificación sobre el tipo de datos sobre
el que se trabaja. Así, puede ser utilizado a todo tipo de datos compatible.
• Polimorfismo estático (o polimorfismo ad hoc) es aquél en el que
los tipos a los que se aplica el polimorfismo deben ser explicitados y
declarados uno por uno antes de poder ser utilizados.
El polimorfismo dinámico unido a la herencia es lo que en ocasiones se
conoce como programación genérica.
También se clasifica en herencia por redefinición de métodos abstractos
y por método sobrecargado. El segundo hace referencia al mismo método con
diferentes parámetros. Otra clasificación agrupa los polimorfismo en dos tipos:
Ad-Hoc que incluye a su vez sobrecarga de operadores y coerción, Universal
(inclusión o controlado por la herencia, paramétrico o genericidad).
Las clases pueden derivar desde otras clases. La clase derivada se llama
subclase. La clase de la que está derivada se denomina superclase. Las
subclases heredan el estado y el comportamiento en forma de las variables y los
métodos de su superclase. La subclase puede utilizar los ítems heredados de su
superclase tal y como son, o puede modificarlos o sobrescribirlos. Por eso,
según se va bajando por el árbol de la herencia, las clases se convierten en
más y más especializadas.
4. ¿Qué
significan las siglas SQL y MySQL?
SQL (Structured Query Language ó Lenguaje
de Consulta Estructurado),
es un tipo de lenguaje vinculado con la gestión de bases
de datos de carácter relacional que permite la especificación de distintas clases de operaciones
entre éstas.
MySQL.- My Structured Query Language o Lenguaje de Consulta
Estructurado es el sistema de
base de datos operacionalde los más
importantes en lo que hace al diseño y programación de base de datos de tipo
relacional.
5. ¿Qué ventaja tiene desarrollar lenguajes en Netbeans, Eclipse y
JCretor?
NetBeans
Se utiliza mucho para los principiantes en la POO. Existen dos productos
que son el NetBeans IDE y el NetBeans Platform el primero totalmente gratuito y
se pueden descargar de la sitio oficial netbeans.org y del
segundo se adquiere la licencia en el mismo sitio.
NetBeans IDE es ideal para desarrollar java de escritorio, móviles,
aplicaciones web así como una gran herramienta en los desarrolladores de PHP, C
y C++
Las características de este entorno son:
• Tiene el mejor soporte para las últimas tecnologías Java (JDK 7, Java
EE 6 y 2.0 JavaFX).
• Contiene código Fast y Smart edición pues proporciona sugerencias de codificación y herramientas de refactorización, también soporta muchos lenguajes de programación por mencionar algunos Java, C, C++, HTML de PHP, XML, etc. Por lo tanto se puede extender a otros idiomas.
• Análisis de código estático, es decir, puede identificar rápidamente el origen de codificación de problemas de manera sencilla.
• Mejor organización y gestión de los proyectos.
• Contiene un findBug que optimiza la creación de programas sin tener perdidas de tiempo en el análisis.
• Contiene código Fast y Smart edición pues proporciona sugerencias de codificación y herramientas de refactorización, también soporta muchos lenguajes de programación por mencionar algunos Java, C, C++, HTML de PHP, XML, etc. Por lo tanto se puede extender a otros idiomas.
• Análisis de código estático, es decir, puede identificar rápidamente el origen de codificación de problemas de manera sencilla.
• Mejor organización y gestión de los proyectos.
• Contiene un findBug que optimiza la creación de programas sin tener perdidas de tiempo en el análisis.
Eclipse
Es el que más eligen para trabajar. Ya que al igual que Netbeans es de fácil uso y comparten similitud en características. Pues es un entorno de desarrollo multi-idioma con un área de trabajo extensible y varios plug –in. Este entorno fue desarrollado en Java.
Es el que más eligen para trabajar. Ya que al igual que Netbeans es de fácil uso y comparten similitud en características. Pues es un entorno de desarrollo multi-idioma con un área de trabajo extensible y varios plug –in. Este entorno fue desarrollado en Java.
Muchos programadores lo utilizan por la flexibilidad que tiene para
trabajar y hacer varias aplicaciones en diferentes lenguajes algunos de ellos
son: PHP, Python, R, Rubi, Scala, etc. Por la arquitectura que tiene eclipse y
la extensión de plug-in se vuelve un IDE multifuncional pues algunas de las
extensiones se usan para el manejo de aplicaciones de red como Telnet y Sistema
de gestión de Base de Datos.
Otra característica de Eclipse es la plataforma de servidor el cual
gracias al desarrollo del TomCat , GlasFish y otros servidores. Se admite la
depuración remota, lo que permite al usuario ver variables y paso a través del
código de una aplicación que se ejecuta en el servidor conectado.
El eclipse Web Tools Platform (WTP) es una extensión de la plataforma
Eclipse con herramientas para aplicaciones Web y Java EE.
JCreator
En el JCreator se puede crear tres elementos que son fundamentales
Workspaces (áreas de trabajo), Projects (Proyectos), Files (Archivos). Estos
son para administración de archivos y proyectos y crear archivos individuales.
Éstos últimos de extensión .java, .html, y .txt, teniendo la facilidad de
agregarlo a cualquier proyecto
Las características son:
• Enorme cantidad de plantillas para trabajos rápidos.
• Administrador de proyectos guiados.
• Editor de sintaxis incorporado.
• Interfaz de depuración independiente.
• Función de coloreado de comandos.
• Enorme cantidad de plantillas para trabajos rápidos.
• Administrador de proyectos guiados.
• Editor de sintaxis incorporado.
• Interfaz de depuración independiente.
• Función de coloreado de comandos.
La desventaja de JCreator es que sólo se utiliza para el lenguaje Java.
Fuentes:
·
https://deganteioannis.wordpress.com/ambiente-de-desarrollo-de-la-poo-ide/
·
http://es.wikipedia.org/wiki/Programaci%C3%B3n_orientada_a_objetos
·
http://es.wikipedia.org/wiki/Polimorfismo_(inform%C3%A1tica)
·
http://definicion.de/sql/
·
http://www.definicionabc.com/tecnologia/mysql.php
No hay comentarios:
Publicar un comentario