Re: [Python-es] POO

2010-08-02 Por tema Chema Cortes
El día 29 de julio de 2010 15:48, Juan Marcelo Leiva Sandoval
 escribió:
> Este semestre tengo un ramo que se llama POO y lo enseñan con Java, la
> profesora que nos dictara ese ramo nos recomendó Java o Ruby y yo le
> pregunte por Python y me comento que nos es 100% Orientado a Objeto,
> pero que no tenia problemas que trabajara durante el semestre en
> Python. Ahora el problema seria que ella no dictara el ramo xD

Si exceptuamos Smalltalk, ningún lenguaje puede decirse 100% orientado
a objetos.

A python lo han denominado lenguaje multiparadigma ya que puedes
programar como mejor te vaya, ya sea orientado a objetos, funcional o
procedural. Si elijes POO tendrás todo lo necesario, incluso la
herencia múltiple de la que carece java y ruby.

El gran problema que vas a encontrar si sigues el curso con python es
que sus técnicas POO son diferentes a las de java. Por ejemplo, al
carecer java de herencia múltiple necesita crear "interfaces" que
complican bastante el diseño y las reglas de herencia. A la larga
precisarás conocer de algunos patrones de diseño si quieres
sobrevivir. En python, gracias a ese estado intermedio que se ha
comentado entre prototipo y clase (consecuencia de la "unificación" de
tipo y clase), se han ido tejiendo unas reglas de buenas prácticas que
conforman el modo "pythónico" de hacer las cosas (el Zen de Python).
Lamentablemente, no es lo que vas a ver en el curso, y menos si es de
dictado. Te recomiendo que no te compliques y sigas el curso con java,
ya tendrás tiempo luego de disfrutar con python.
___
Python-es mailing list
Python-es@python.org
http://mail.python.org/mailman/listinfo/python-es
FAQ: http://python-es-faq.wikidot.com/


Re: [Python-es] POO

2010-07-30 Por tema Kiko
El 30 de julio de 2010 15:02, Oscar Carballal Prego <
oscar.carbal...@gmail.com> escribió:

>
> El 30/07/2010, a las 10:55, Rafael Villar Burke (Pachi) escribió:
>
>
>  On 29/07/2010 19:52, Robert C. Rodriguez wrote:
>>
>>>
>>> El 28 de julio de 2010 19:44, Oscar Carballal Prego <
>>> oscar.carbal...@gmail.com> escribió:
>>> Sin duda, ese es uno de los mejores tutoriales en español dedicados a la
>>> POO. Además creo que es de algún compañero de la lista, si no me equivoco.
>>> Muy útil y todo muy bién explicado.
>>>
>> ¡Muchas gracias por el cumplido!
>>
>> La idea era hacer una introducción a la POO sin necesidad de tener grandes
>> conocimientos de programación y sin perder demasiado rigor, de forma que se
>> pudiese profundizar a posteriori sin tener que "corregir" conceptos
>> incorrectamente definidos. Con todo, seguro que se puede mejorar mucho y se
>> agradecen los comentarios que puedan hacerlo más claro.
>>
>> ¡Saludos!
>>
>
> Opino igual, aunque hayan dicho que está desfasado yo creo que sirve
> perfectamente para meterse en POO sin romperte demasiado la cabeza (a mí por
> lo menos me sirvió)
>
> P.D. Respecto a la lista, casualmente estamos aquí los dos, el que lo hizo
> y el que lo pasó a PDF jaja.
>
> Un saludo ;)
> ___
> Python-es mailing list
> Python-es@python.org
> http://mail.python.org/mailman/listinfo/python-es
> FAQ: http://python-es-faq.wikidot.com/
>

Yo me lo he leído estos días y me ha parecido muy claro.

Muchas gracias a los dos

Una información más amplia se puede encontrar en [1].

[1] Aprenda a Pensar Como un Programador, de Allen Downey (
http://manuales.gfc.edu.co/python/thinkCSpy.es.pdf)
___
Python-es mailing list
Python-es@python.org
http://mail.python.org/mailman/listinfo/python-es
FAQ: http://python-es-faq.wikidot.com/


Re: [Python-es] POO

2010-07-30 Por tema Oscar Carballal Prego


El 30/07/2010, a las 10:55, Rafael Villar Burke (Pachi) escribió:


On 29/07/2010 19:52, Robert C. Rodriguez wrote:


El 28 de julio de 2010 19:44, Oscar Carballal Prego  
 escribió:
Sin duda, ese es uno de los mejores tutoriales en español  
dedicados a la POO. Además creo que es de algún compañero de la  
lista, si no me equivoco. Muy útil y todo muy bién explicado.

¡Muchas gracias por el cumplido!

La idea era hacer una introducción a la POO sin necesidad de tener  
grandes conocimientos de programación y sin perder demasiado rigor,  
de forma que se pudiese profundizar a posteriori sin tener que  
"corregir" conceptos incorrectamente definidos. Con todo, seguro  
que se puede mejorar mucho y se agradecen los comentarios que  
puedan hacerlo más claro.


¡Saludos!


Opino igual, aunque hayan dicho que está desfasado yo creo que sirve  
perfectamente para meterse en POO sin romperte demasiado la cabeza (a  
mí por lo menos me sirvió)


P.D. Respecto a la lista, casualmente estamos aquí los dos, el que lo  
hizo y el que lo pasó a PDF jaja.


Un saludo ;)
___
Python-es mailing list
Python-es@python.org
http://mail.python.org/mailman/listinfo/python-es
FAQ: http://python-es-faq.wikidot.com/


Re: [Python-es] POO

2010-07-30 Por tema Rafael Villar Burke (Pachi)

 On 29/07/2010 19:52, Robert C. Rodriguez wrote:

El 28 de julio de 2010 19:44, Oscar Carballal Prego mailto:oscar.carbal...@gmail.com>> escribió:
Sin duda, ese es uno de los mejores tutoriales en español dedicados a la POO. 
Además creo que es de algún compañero de la lista, si no me equivoco. Muy útil 
y todo muy bién explicado.

¡Muchas gracias por el cumplido!

La idea era hacer una introducción a la POO sin necesidad de tener grandes conocimientos 
de programación y sin perder demasiado rigor, de forma que se pudiese profundizar a 
posteriori sin tener que "corregir" conceptos incorrectamente definidos. Con 
todo, seguro que se puede mejorar mucho y se agradecen los comentarios que puedan hacerlo 
más claro.

¡Saludos!

___
Python-es mailing list
Python-es@python.org
http://mail.python.org/mailman/listinfo/python-es
FAQ: http://python-es-faq.wikidot.com/


Re: [Python-es] POO

2010-07-29 Por tema Robert C. Rodriguez
El 28 de julio de 2010 19:44, Oscar Carballal Prego <
oscar.carbal...@gmail.com> escribió:

> Espero que te sirva, es una introducción básica de los conceptos y algun
> que otro ejemplillo :)
>
>
> http://blog.rvburke.com/wp-content/uploads/2006/11/Introducción-a-la-programación-orientada-a-objetos.pdf
>
> Un saludo
>
> El 28/07/2010, a las 19:03, Juan Marcelo Leiva Sandoval escribió:
>
>
>  Hola, después de unas cortas VAGAciones vuelvo al mundo de Python,
>> pero ahora quiero trabajar Orientado a Objeto, me ayudan con un buen
>> tutorial que sea prácticamente de cero, ya que no se nada de POO y los
>> tutoriales que encuentro son muy básicos y me dejan con muchas dudas,
>> espero sus consejos, saludos.
>>
>> --
>> El buen Informático es como un Bibliotecario, no lo sabe todo pero
>> sabe donde buscarlo...
>> ___
>> Python-es mailing list
>> Python-es@python.org
>> http://mail.python.org/mailman/listinfo/python-es
>> FAQ: http://python-es-faq.wikidot.com/
>>
>
> Sin duda, ese es uno de los mejores tutoriales en español dedicados a la
POO. Además creo que es de algún compañero de la lista, si no me equivoco.
Muy útil y todo muy bién explicado.

PD. Tienes el mismo apellido que yo, Carballal  :D

Salut

___
> Python-es mailing list
> Python-es@python.org
> http://mail.python.org/mailman/listinfo/python-es
> FAQ: http://python-es-faq.wikidot.com/
>
___
Python-es mailing list
Python-es@python.org
http://mail.python.org/mailman/listinfo/python-es
FAQ: http://python-es-faq.wikidot.com/


Re: [Python-es] POO

2010-07-29 Por tema Pablo Martí Gamboa
2010/7/29 Juan Marcelo Leiva Sandoval :
> Este semestre tengo un ramo que se llama POO y lo enseñan con Java, la
> profesora que nos dictara ese ramo nos recomendó Java o Ruby y yo le
> pregunte por Python y me comento que nos es 100% Orientado a Objeto,

En Python todo es un objeto excepto las variables, las variables son etiquetas.

Si tu profe recomienda Ruby, no debería de excluir a Python...

-- 
Pablo Martí
http://minimoesfuerzo.org
python -c "print '706d617267616d40676d61696c2e636f6d'.decode('hex')"
___
Python-es mailing list
Python-es@python.org
http://mail.python.org/mailman/listinfo/python-es
FAQ: http://python-es-faq.wikidot.com/


Re: [Python-es] POO

2010-07-29 Por tema Juan Marcelo Leiva Sandoval
Este semestre tengo un ramo que se llama POO y lo enseñan con Java, la
profesora que nos dictara ese ramo nos recomendó Java o Ruby y yo le
pregunte por Python y me comento que nos es 100% Orientado a Objeto,
pero que no tenia problemas que trabajara durante el semestre en
Python. Ahora el problema seria que ella no dictara el ramo xD
___
Python-es mailing list
Python-es@python.org
http://mail.python.org/mailman/listinfo/python-es
FAQ: http://python-es-faq.wikidot.com/


Re: [Python-es] POO

2010-07-29 Por tema Arnau Sanchez
Buenas,

No conozco en detalle la implementación OOP de Python, pero en la
Wikipedia he encontrado un párrafo que explicaría por qué algunos veis
galgos y otros podencos:

"In most languages, the structures as defined by the class determine how
the memory used by its instances will be laid out. This technique is
known as the cookie-cutter model. The alternative to the cookie-cutter
model is the model of Python, wherein objects are structured as
associative key-value containers. In such models, objects that are
instances of the same class could contain different instance variables,
as state can be dynamically added to the object. This may resemble
prototype-based languages in some ways, but it is not equivalent"

http://en.wikipedia.org/wiki/Class_(programming)

Pero creo que, más que plantear una discusión teórica, sería interesante
mostrar ejemplos concretos, de forma que veamos en la práctica qué
implicaciones tiene la (al parecer particular) implementación OOP
de Python.
___
Python-es mailing list
Python-es@python.org
http://mail.python.org/mailman/listinfo/python-es
FAQ: http://python-es-faq.wikidot.com/


Re: [Python-es] POO

2010-07-29 Por tema Milton Galo Patricio Inostroza Aguilera
El día 29 de julio de 2010 04:41, Sergio Fernández  escribió:
> Flame? jajja

D:

>
> Es lo contrario, que se utilice la palbra reservada 'class' no hace
> que sea basado en clases.

y qué sucede con la herencia?...fijate que para resolver un método los
objetos en python necesitan saber quien es su clase.  Ahora que cada
objeto tenga un diccionario local y que primero se resuelvan ahí los
mensajes y/o atributos no hace que sean "prototipos".

>
> 2010/7/29 Pablo Martí Gamboa :
>> 2010/7/29 Sergio Fernández :
>>> Literatura hay mucha y tutoriales también. Pero si quieres comenzar
>>> con unas bases sólidas de concepto, ten ene cuenta que python es un
>>> lenguaje orientado a objetos basado en prototipos, no basado en clases
>>> como puede ser por ejemplo Java. Así que selecciona bien la literatura
>>> no vaya a ser que tomes conceptos erroneos por no tener esto en
>>> cuenta.
>>
>> ¿Perdón?
>>
>> Lua y Javascript están basado en prototipos, Python no!
>>
>> Python tiene la keyword 'class' y permite crear clases como en Java...
>> Otra cosa es cómo esté hecha la implementación interna (los tres usan
>> un dict por debajo, pero eso no hace a Python un lenguaje basado en
>> prototipos)
>>
>>
>> --
>> Pablo Martí
>> http://minimoesfuerzo.org // http://www.warp.es
>> python -c "print '706d617267616d40676d61696c2e636f6d'.decode('hex')"
>> ___
>> Python-es mailing list
>> Python-es@python.org
>> http://mail.python.org/mailman/listinfo/python-es
>> FAQ: http://python-es-faq.wikidot.com/
>>
>
>
>
> --
> __      ___ _   _
> \ \    / (_) |_(_)___ _ _
>  \ \/\/ /| | / / / -_) '_|  Sergio Fernández
>   \_/\_/ |_|_\_\_\___|_|    http://www.wikier.org/
> ___
> Python-es mailing list
> Python-es@python.org
> http://mail.python.org/mailman/listinfo/python-es
> FAQ: http://python-es-faq.wikidot.com/
>



-- 
Milton Inostroza Aguilera
___
Python-es mailing list
Python-es@python.org
http://mail.python.org/mailman/listinfo/python-es
FAQ: http://python-es-faq.wikidot.com/


Re: [Python-es] POO

2010-07-29 Por tema Pablo Martí Gamboa
2010/7/29 Sergio Fernández :
> Flame? jajja
>
> Es lo contrario, que se utilice la palbra reservada 'class' no hace
> que sea basado en clases.

No sé si entendemos lo mismo por "Lenguaje basado en prototipos"

Prototype-based programming is a style of object-oriented programming
in which classes are not present, and behavior reuse (known as
inheritance in class-based languages) is performed via a process of
cloning existing objects that serve as prototypes. This model can also
be known as class-less, prototype-oriented or instance-based
programming. Delegation is the language feature that supports
prototype-based programming.

http://en.wikipedia.org/wiki/Prototype-based
http://en.wikipedia.org/wiki/Python_(programming_language)
http://en.wikipedia.org/wiki/JavaScript

>
> 2010/7/29 Pablo Martí Gamboa :
>> 2010/7/29 Sergio Fernández :
>>> Literatura hay mucha y tutoriales también. Pero si quieres comenzar
>>> con unas bases sólidas de concepto, ten ene cuenta que python es un
>>> lenguaje orientado a objetos basado en prototipos, no basado en clases
>>> como puede ser por ejemplo Java. Así que selecciona bien la literatura
>>> no vaya a ser que tomes conceptos erroneos por no tener esto en
>>> cuenta.
>>
>> ¿Perdón?
>>
>> Lua y Javascript están basado en prototipos, Python no!
>>
>> Python tiene la keyword 'class' y permite crear clases como en Java...
>> Otra cosa es cómo esté hecha la implementación interna (los tres usan
>> un dict por debajo, pero eso no hace a Python un lenguaje basado en
>> prototipos)
>>
>>
>> --
>> Pablo Martí
>> http://minimoesfuerzo.org // http://www.warp.es
>> python -c "print '706d617267616d40676d61696c2e636f6d'.decode('hex')"
>> ___
>> Python-es mailing list
>> Python-es@python.org
>> http://mail.python.org/mailman/listinfo/python-es
>> FAQ: http://python-es-faq.wikidot.com/
>>
>
>
>
> --
> __      ___ _   _
> \ \    / (_) |_(_)___ _ _
>  \ \/\/ /| | / / / -_) '_|  Sergio Fernández
>   \_/\_/ |_|_\_\_\___|_|    http://www.wikier.org/
> ___
> Python-es mailing list
> Python-es@python.org
> http://mail.python.org/mailman/listinfo/python-es
> FAQ: http://python-es-faq.wikidot.com/
>



-- 
Pablo Martí
http://minimoesfuerzo.org
python -c "print '706d617267616d40676d61696c2e636f6d'.decode('hex')"
___
Python-es mailing list
Python-es@python.org
http://mail.python.org/mailman/listinfo/python-es
FAQ: http://python-es-faq.wikidot.com/


Re: [Python-es] POO

2010-07-29 Por tema Sergio Fernández
Flame? jajja

Es lo contrario, que se utilice la palbra reservada 'class' no hace
que sea basado en clases.

2010/7/29 Pablo Martí Gamboa :
> 2010/7/29 Sergio Fernández :
>> Literatura hay mucha y tutoriales también. Pero si quieres comenzar
>> con unas bases sólidas de concepto, ten ene cuenta que python es un
>> lenguaje orientado a objetos basado en prototipos, no basado en clases
>> como puede ser por ejemplo Java. Así que selecciona bien la literatura
>> no vaya a ser que tomes conceptos erroneos por no tener esto en
>> cuenta.
>
> ¿Perdón?
>
> Lua y Javascript están basado en prototipos, Python no!
>
> Python tiene la keyword 'class' y permite crear clases como en Java...
> Otra cosa es cómo esté hecha la implementación interna (los tres usan
> un dict por debajo, pero eso no hace a Python un lenguaje basado en
> prototipos)
>
>
> --
> Pablo Martí
> http://minimoesfuerzo.org // http://www.warp.es
> python -c "print '706d617267616d40676d61696c2e636f6d'.decode('hex')"
> ___
> Python-es mailing list
> Python-es@python.org
> http://mail.python.org/mailman/listinfo/python-es
> FAQ: http://python-es-faq.wikidot.com/
>



-- 
__      ___ _   _
\ \    / (_) |_(_)___ _ _
 \ \/\/ /| | / / / -_) '_|  Sergio Fernández
  \_/\_/ |_|_\_\_\___|_|    http://www.wikier.org/
___
Python-es mailing list
Python-es@python.org
http://mail.python.org/mailman/listinfo/python-es
FAQ: http://python-es-faq.wikidot.com/


Re: [Python-es] POO

2010-07-29 Por tema Pablo Martí Gamboa
2010/7/29 Sergio Fernández :
> Literatura hay mucha y tutoriales también. Pero si quieres comenzar
> con unas bases sólidas de concepto, ten ene cuenta que python es un
> lenguaje orientado a objetos basado en prototipos, no basado en clases
> como puede ser por ejemplo Java. Así que selecciona bien la literatura
> no vaya a ser que tomes conceptos erroneos por no tener esto en
> cuenta.

¿Perdón?

Lua y Javascript están basado en prototipos, Python no!

Python tiene la keyword 'class' y permite crear clases como en Java...
Otra cosa es cómo esté hecha la implementación interna (los tres usan
un dict por debajo, pero eso no hace a Python un lenguaje basado en
prototipos)


-- 
Pablo Martí
http://minimoesfuerzo.org // http://www.warp.es
python -c "print '706d617267616d40676d61696c2e636f6d'.decode('hex')"
___
Python-es mailing list
Python-es@python.org
http://mail.python.org/mailman/listinfo/python-es
FAQ: http://python-es-faq.wikidot.com/


Re: [Python-es] POO

2010-07-29 Por tema Sergio Fernández
Literatura hay mucha y tutoriales también. Pero si quieres comenzar
con unas bases sólidas de concepto, ten ene cuenta que python es un
lenguaje orientado a objetos basado en prototipos, no basado en clases
como puede ser por ejemplo Java. Así que selecciona bien la literatura
no vaya a ser que tomes conceptos erroneos por no tener esto en
cuenta.

2010/7/28 Juan Marcelo Leiva Sandoval :
> Hola, después de unas cortas VAGAciones vuelvo al mundo de Python,
> pero ahora quiero trabajar Orientado a Objeto, me ayudan con un buen
> tutorial que sea prácticamente de cero, ya que no se nada de POO y los
> tutoriales que encuentro son muy básicos y me dejan con muchas dudas,
> espero sus consejos, saludos.
>
> --
> El buen Informático es como un Bibliotecario, no lo sabe todo pero
> sabe donde buscarlo...
> ___
> Python-es mailing list
> Python-es@python.org
> http://mail.python.org/mailman/listinfo/python-es
> FAQ: http://python-es-faq.wikidot.com/
>



-- 
__      ___ _   _
\ \    / (_) |_(_)___ _ _
 \ \/\/ /| | / / / -_) '_|  Sergio Fernández
  \_/\_/ |_|_\_\_\___|_|    http://www.wikier.org/
___
Python-es mailing list
Python-es@python.org
http://mail.python.org/mailman/listinfo/python-es
FAQ: http://python-es-faq.wikidot.com/


Re: [Python-es] POO

2010-07-28 Por tema Milton Galo Patricio Inostroza Aguilera
El día 28 de julio de 2010 13:44, Oscar Carballal Prego
 escribió:
> Espero que te sirva, es una introducción básica de los conceptos y algun que
> otro ejemplillo :)
>
> http://blog.rvburke.com/wp-content/uploads/2006/11/Introducción-a-la-programación-orientada-a-objetos.pdf

uff, una documentación muy antigua, mejor no seguirla.

>
> Un saludo
>
> El 28/07/2010, a las 19:03, Juan Marcelo Leiva Sandoval escribió:
>
>> Hola, después de unas cortas VAGAciones vuelvo al mundo de Python,
>> pero ahora quiero trabajar Orientado a Objeto, me ayudan con un buen
>> tutorial que sea prácticamente de cero, ya que no se nada de POO y los
>> tutoriales que encuentro son muy básicos y me dejan con muchas dudas,
>> espero sus consejos, saludos.
>>
>> --
>> El buen Informático es como un Bibliotecario, no lo sabe todo pero
>> sabe donde buscarlo...
>> ___
>> Python-es mailing list
>> Python-es@python.org
>> http://mail.python.org/mailman/listinfo/python-es
>> FAQ: http://python-es-faq.wikidot.com/
>
> ___
> Python-es mailing list
> Python-es@python.org
> http://mail.python.org/mailman/listinfo/python-es
> FAQ: http://python-es-faq.wikidot.com/
>



-- 
Milton Inostroza Aguilera
___
Python-es mailing list
Python-es@python.org
http://mail.python.org/mailman/listinfo/python-es
FAQ: http://python-es-faq.wikidot.com/


Re: [Python-es] POO

2010-07-28 Por tema Oscar Carballal Prego
Espero que te sirva, es una introducción básica de los conceptos y  
algun que otro ejemplillo :)


http://blog.rvburke.com/wp-content/uploads/2006/11/Introducción-a-la- 
programación-orientada-a-objetos.pdf


Un saludo

El 28/07/2010, a las 19:03, Juan Marcelo Leiva Sandoval escribió:


Hola, después de unas cortas VAGAciones vuelvo al mundo de Python,
pero ahora quiero trabajar Orientado a Objeto, me ayudan con un buen
tutorial que sea prácticamente de cero, ya que no se nada de POO y los
tutoriales que encuentro son muy básicos y me dejan con muchas dudas,
espero sus consejos, saludos.

--
El buen Informático es como un Bibliotecario, no lo sabe todo pero
sabe donde buscarlo...
___
Python-es mailing list
Python-es@python.org
http://mail.python.org/mailman/listinfo/python-es
FAQ: http://python-es-faq.wikidot.com/


___
Python-es mailing list
Python-es@python.org
http://mail.python.org/mailman/listinfo/python-es
FAQ: http://python-es-faq.wikidot.com/


[Python-es] POO

2010-07-28 Por tema Juan Marcelo Leiva Sandoval
Hola, después de unas cortas VAGAciones vuelvo al mundo de Python,
pero ahora quiero trabajar Orientado a Objeto, me ayudan con un buen
tutorial que sea prácticamente de cero, ya que no se nada de POO y los
tutoriales que encuentro son muy básicos y me dejan con muchas dudas,
espero sus consejos, saludos.

-- 
El buen Informático es como un Bibliotecario, no lo sabe todo pero
sabe donde buscarlo...
___
Python-es mailing list
Python-es@python.org
http://mail.python.org/mailman/listinfo/python-es
FAQ: http://python-es-faq.wikidot.com/