elhacker.net cabecera Bienvenido(a), Visitante. Por favor Ingresar o Registrarse
¿Perdiste tu email de activación?.

 

 


Tema destacado: Rompecabezas de Bitcoin, Medio millón USD en premios


+  Foro de elhacker.net
|-+  Programación
| |-+  Programación General
| | |-+  ¿Qué es la programación orientada a objetos?
0 Usuarios y 1 Visitante están viendo este tema.
Páginas: [1] 2 Ir Abajo Respuesta Imprimir
Autor Tema: ¿Qué es la programación orientada a objetos?  (Leído 5,753 veces)
Linton

Desconectado Desconectado

Mensajes: 239



Ver Perfil
¿Qué es la programación orientada a objetos?
« en: 4 Febrero 2014, 08:25 am »

Por más que busco en Google, sólo me entero de que es la nueva forma de programar, que aventaja a las anteriores, como leemos en este artículo de Asensio López: http://toodaim.blogspot.com.es/2013/01/articulo-los-pilares-de-la-programacion.html

Y como soy novicio en programación, no consigo ver cuáles son las ventajas, ya que no sé cómo se programaba antes  :huh:

¿Alguien me explica de manera clara y sencilla qué ha cambiado con la POO? Gracias, un saludo  :)


En línea

Eleкtro
Ex-Staff
*
Desconectado Desconectado

Mensajes: 9.788



Ver Perfil
Re: ¿Qué es la programación orientada a objetos?
« Respuesta #1 en: 4 Febrero 2014, 10:46 am »

¿Que es la programación orientada a objetos?: Las respuesta rápida y sencilla (eliminando todos los tecnicismos que habrás leido por ahi) sería: Un estilo de programación (un paradigma de programación), ni más, ni menos, donde, obviamente, se maneja la implementación del concepto 'objetos'.

¿Y que es un objeto?: Pues prácticamente es un término/concepto (esto es algo que está muy bien explicado por la Wikipedia), un objeto es un espacio en la memoria (Si, la memoria RAM del PC, para no dejar dudas) al que se le asigna un valor respectívamente de un identificador. Dicho espacio puede contener una variable o una función entera. Y en la programación orientada a objetos, el término objeto se usa para referirse a aquellos 'objetos' instanciados por una Class, en fin, variables que instancian una Class que se usará en tiempo de ejecución.

Básicamente la programación orientada a objetos te permite infinidad de mejoras/optimizaciones en tiempo de ejecución, aparte de los ya conocidos objetos, por ejemplo, el uso de enlaces dinámicos: http://es.wikipedia.org/wiki/Enlace_din%C3%A1mico_%28programaci%C3%B3n_orientada_a_objetos%29
Y en fin ...todo lo demás que puedes ver en un lenguaje orientado a objetos.

Te muestro un ejemplo del uso de un objeto, en VB.NET:

Código
  1. Public Class Form1
  2.  
  3.    ' Declaro una variable (un objeto) donde hay instanciado un Form (Es una Class)
  4.    ' Fíjate en el operador 'New', esto llama al método "New" (El constructor) dentro de la Class, para instanciarla.
  5.    Dim MiObjeto As Form = New Form
  6.  
  7.    Private Shadows Sub Load() Handles MyBase.Load
  8.  
  9.        ' Establezco algunas propiedades del objeto (es decir, del Form).
  10.        With MiObjeto
  11.            .Text = "Form2" ' El título del Form.
  12.            .WindowState = FormWindowState.Maximized ' El estado de la ventana (Maximizada).
  13.            .ShowDialog() ' Y por último, llamo al método 'ShowDialog' para mostrar el Form instanciado.
  14.        End With
  15.  
  16.        Application.Exit()
  17.  
  18.    End Sub
  19.  
  20. End Class

no consigo ver cuáles son las ventajas, ya que no sé cómo se programaba antes  :huh:

Pues no tienes que irte muy lejos ni retroceder muchos años atrás!!!, basta con que hallas usado uno de los lenguajes nativos en Windows o Linux ...Batch o Bash, entonces te puedes hacer una inmensa idea sobre la cantidad de diferencias que tienen estos lenguajes de programación, en especial la morralla de Batch en comparación con cualquier otro lenguaje, Batch es un tipo de programación, si es que se le puede llamar así al 'procesamiento por lotes'.

Otros estilos de programación (paradigmas de programación) que están por debajo de la escala evolutiva de la programación orientada a objetos (seguro que por este comentario vendrá el típico listo a decir que si X lenguaje de programación es peor que otro y blablabla... que cada uno se lo tome como quiera) serían la programación estructurada ('structured programming paradigm') o 'procedural programming' o 'imperative programming', como por ejemplo C y C++ (no C#) (Aunque por otro lado C++ soporta el estilo de programación orientada a objetos pero básicamente se basa en C, así que se queda como procedural), Pascal, Basic y otros derivados de Basic como QBasic PureBasic o VisualBasic (VB6, no VB.NET), Perl, etc...

Y también el estilo de programación 'expression oriented language', donde como su nombre indica tódas las órdenes o la mayoría de ellas (excepto las declaraciones) son expresiones y se tratan como tal por el compilador (me imagino), un ejemplo de este paradigma de programación sería el lenguaje 'LISP' de los años 50 (me he tenido que informar sobre esto en la wikipedia, no me tomes por un erudito que lo sabe todo).



Y bueno, después de toda esta parrafada, solo te puedo dar una mi más sincera opinión:

No importa que ahora mismo no seas capaz de darte cuenta de las diferencias de programación o de las ventajas de los objetos, y que segúramente oigas comentar a la gente que C++ es el mejor lenguaje ...pero lo será para ellos, la verdad es que no es un lenguaje orientado a objetos (de forma completa) y bueno, solo lo comento porque me ciño a tu duda, no odio a C++, lo respeto como el gran lenguaje que es, pero la elección debe ser tuya y no de los que desde los años 80 no saben ver más hallá de C/C++, en fín yo te aseguro que una vez que hayas usado un lenguaje complétamente orientado a objetos (VB.NET, C#, Java, etc...)... no querrás probar otra cosa y verás lo ridículamente inferiores que son todos los demás lenguajes que llegues a probar o que ya hayas probado ;).

Saludos!


« Última modificación: 4 Febrero 2014, 11:11 am por Eleкtro » En línea

Linton

Desconectado Desconectado

Mensajes: 239



Ver Perfil
Re: ¿Qué es la programación orientada a objetos?
« Respuesta #2 en: 4 Febrero 2014, 13:58 pm »

¡Caramba, muchas gracias por tu extensa y esclarecedora respuesta!  ;-) Tomo buena nota de todo, un saludote.
En línea

0xDani


Desconectado Desconectado

Mensajes: 1.077



Ver Perfil
Re: ¿Qué es la programación orientada a objetos?
« Respuesta #3 en: 4 Febrero 2014, 16:39 pm »

@Elektro, no creo que sea desmesurado decir que te has resbalado un poco en lo que has dicho sobre C++.

Saludos.
En línea

I keep searching for something that I never seem to find, but maybe I won't, because I left it all behind!

I code for $$$
Hago trabajos en C/C++
Contactar por PM
El Benjo


Desconectado Desconectado

Mensajes: 392



Ver Perfil WWW
Re: ¿Qué es la programación orientada a objetos?
« Respuesta #4 en: 4 Febrero 2014, 17:22 pm »

Esperando que ataque una horda de programadores de C/C++ en tres... dos... uno...

XD
En línea

www.es.neftis-ai.com

Sí hay un mejor lenguaje de programación y es ese con el que puedes desarrollar tus objetivos.
Eleкtro
Ex-Staff
*
Desconectado Desconectado

Mensajes: 9.788



Ver Perfil
Re: ¿Qué es la programación orientada a objetos?
« Respuesta #5 en: 4 Febrero 2014, 19:28 pm »

xD

Vale, lo reconozco, me pasé (@0xDani aunque no se si eso es lo que quieres decir con resbalarse), y tampoco soy el más indicado para hablar mal de C++ por lo muy poco que lo he tocado, mil perdones chavales, pero es que me saca de quizio que en estos temas donde se mencionan o se debaten distintos lenguajes de programación siempre acabe apareciendo alguien al que le gusta criticar un comentario ajeno sobre "X" lenguaje para poner verde al lenguaje opuesto y favorecer al lenguaje criticado, y he visto que eso siempre suele pasar con las críticas de C++. (@0xDani no lo digo por tu comentario, ni por nadie en especial).

Saludos!
« Última modificación: 4 Febrero 2014, 19:31 pm por Eleкtro » En línea

x64core


Desconectado Desconectado

Mensajes: 1.908


Ver Perfil
Re: ¿Qué es la programación orientada a objetos?
« Respuesta #6 en: 5 Febrero 2014, 00:26 am »

Bueno, que puedo decir... empezando mi día bien temprano y ya un epic fail...
Como siempre el tipico haxor con sus epic fails...
-


« Última modificación: 5 Febrero 2014, 00:49 am por x64Core » En línea

Eleкtro
Ex-Staff
*
Desconectado Desconectado

Mensajes: 9.788



Ver Perfil
Re: ¿Qué es la programación orientada a objetos?
« Respuesta #7 en: 5 Febrero 2014, 11:41 am »

Ahí está, salió de su guarida el típico Troll de turno al que yo me refería (x64core tenia que ser, como yo me imaginaba), imagino que tu ilustrativo, interesante, e informativo comentario va dirigido hacia mi persona ya que soy el único que ha comentado algo relevante en este post. siempre disfruto con tu patética forma de intentar Trollear mencionando en esta ocasión a ¿Hackers y Batch?, tu sabrás lo que quieres decir con todo eso (pero porfavor, no vengas a contarmelo, no me interesa).

Bueno,
Saludos!
« Última modificación: 5 Febrero 2014, 11:50 am por Eleкtro » En línea

0xDani


Desconectado Desconectado

Mensajes: 1.077



Ver Perfil
Re: ¿Qué es la programación orientada a objetos?
« Respuesta #8 en: 5 Febrero 2014, 16:25 pm »

@Elektro a mí tampoco me gustan las discusiones sobre lenguajes de programación... cada uno que use y aconseje el que le venga mejor.

Y sí, @x64Core podría ser un poco menos troll. Si supones que alguien ha incurrido en lo que tú das en llamar un epic fail, puedes comentar para explicarle por qué lo ha hecho en vez de soltar el comentario sarcástico y punto.

Saludos.
En línea

I keep searching for something that I never seem to find, but maybe I won't, because I left it all behind!

I code for $$$
Hago trabajos en C/C++
Contactar por PM
El Benjo


Desconectado Desconectado

Mensajes: 392



Ver Perfil WWW
Re: ¿Qué es la programación orientada a objetos?
« Respuesta #9 en: 5 Febrero 2014, 16:42 pm »

¿Este post se va convertir en una pelea de gatas? Si es así les aconsejo que hagan lo que yo y se pongan unas medias que no les importe romper, un rimel que no se corra y se echen uno o dos ladrillos en el bolso. XD

Posdata: x64core, que bien jodes. Saludos
En línea

www.es.neftis-ai.com

Sí hay un mejor lenguaje de programación y es ese con el que puedes desarrollar tus objetivos.
Páginas: [1] 2 Ir Arriba Respuesta Imprimir 

Ir a:  

Mensajes similares
Asunto Iniciado por Respuestas Vistas Último mensaje
Programacion orientada a objetos en php, ide
PHP
wizache 2 4,433 Último mensaje 11 Marzo 2008, 02:44 am
por [ Alberto]
programacion orientada a objetos con C#
.NET (C#, VB.NET, ASP)
Bleach@lex 3 4,909 Último mensaje 21 Abril 2012, 19:55 pm
por Bleach@lex
Programacion orientada a objetos
Programación C/C++
cazagavilan 4 3,363 Último mensaje 21 Abril 2012, 10:55 am
por cazagavilan
Programacion orientada a objetos
Programación C/C++
edwinabril1992 2 2,226 Último mensaje 9 Octubre 2013, 08:47 am
por eferion
Programacion orientada a objetos
Programación C/C++
edwinabril1992 2 2,528 Último mensaje 11 Octubre 2013, 09:24 am
por eferion
WAP2 - Aviso Legal - Powered by SMF 1.1.21 | SMF © 2006-2008, Simple Machines