Duda

Daniel Cabrera cabrerachaparro en gmail.com
Mar Jul 18 16:26:28 CEST 2006


Gracias Chema,
me ha servido mucho tu comentario.

Saludos

El día 18/07/06, Chema Cortes <py en ch3m4.org> escribió:
>
> Daniel Cabrera escribió:
>
> > tengo una duda sobre aprender y usar Python o C# con Mono, he visto los
> 2
> > lenguajes y me parecen buenos, pero me gustaria especializarme en uno,
> por
> > eso me gustaria saber sus comentarios sobre estos dos lenguajes.
>
> No creo que sea bueno "especializarse" por capricho, sin más motivación.
> Ambos son buenos lenguajes, libres y con una gran comunidad de
> desarrolladores apoyándolos. Aprovéchate y pruébalos tú mismo.
>
> Conviene distinguir entre el lenguaje de programación y la tecnología
> que le da soporte. Para hablar de C# hay que contextualizarlo en la
> plataforma tecnológica donde se ejecuta (CLI-Common Language
> Infrastructure). Esta plataforma usa un lenguaje intermedio conocido por
> CLS/CTS (Common Language System/Common Type System) que facilita la
> integración de todos los lenguajes hasta el extremo de quitar toda
> transcendencia en la elección del lenguaje principal de un proyecto de
> desarrollo.
>
> Un desarrollo para CLI, por tanto, podría programarse tanto en C# como
> en Ironpython (python para mono/.Net) sin ningún problema para encajar
> los distintos módulos. El usar uno u otro lenguaje depende más de los
> gustos del programador que de otra cosa.
>
> De ironpython hay que resaltar que, aún siendo un lenguaje dinámico, su
> ejecución se hace con escasa penalización, por lo que puede
> perfectamente el "lenguaje principal" de un proyecto de desarrollo. Otro
> lenguaje a considerar es el "boo", un modo de aproximar la sintaxis de
> python al CLS/CTS. Es una buena alternativa, por lo menos hasta que
> ironpython termine de madurar del todo. (Una tercera vía sería usar
> PythonNet, aunque lo dejo fuera del estudio).
>
> El gran competidor del CLI es java. Puede que algún día se libere la
> máquina virtual, pero dudo que sea alguna de las versiones actuales. A
> pesar de no estar pensado para multilenguaje, la integración de java y
> jython (python para java) es excelente, por lo que hace de jython el
> lenguaje de script idóneo para acompañar a todo proyecto de desarrollo
> en java.
>
> El tercer y principal entorno donde se ejecuta python es con su propia
> máquina virtual hecha en C (CPython), que funciona allí donde exista un
> compilador de C. Pero no queda aquí todo, ya que hay otras máquinas
> virtuales (eg: Parrot) en las que también corre python.
>
> Con todo lo dicho, estas son mis conclusiones:
>
> - Con python, puedes hacer desarrollos para cualquier sistema operativo
> y para cualquier plataforma tecnológica; con C# te limitas a la
> plataforma CLI (.Net y mono)
>
> - Con python puedes usar multitud de entornos gráficos (wx, gtk, qt, tk,
> ..., swt, awt/swing,...); con C# te tienes que limitar a windows.forms
> (.Net) o gtk# (mono/.Net) (aunque haya otros disponibles como wx# o swt)
>
> - Con python tienes multitud de frameworks para web (zope, django,
> turbogears, cherrypy, ..., tomcat, ASP, cgi, mod_python,...); en C# te
> limitas a ASP.Net y XSP.
>
> - Aunque no se tenga por importante, python evoluciona pausadamente,
> debatiendo cualquier cambio con la comunidad; C#, en cambio, evoluciona
> dirigido por Microsoft, sin demasiado apego a mantener la compatibilidad
> hacia atrás.
>
>
> Con lo dicho, espero haberte convencido para que uses python, como era
> de esperar siendo ésta una lista de python. Aún con todo, te recomiendo
> que eches un vistazo a C# y a boo; incluso te diría que eches un vistazo
> a lua, una especie python minimalista, o al ruby, un lenguaje con fuerte
> orientación a objetos. Todo menos especializarte. Si quieres dominar un
> lenguaje necesitas conocer sus carencias, y éso sólo se consigue viendo
> los aciertos que han tenido en otros lenguajes.
>
>
>
> --
> Chema Cortés (py en ch3m4.org)
> "Proudly made on earth by generic humanoid carbon units"
> _______________________________________________
> Python-es mailing list
> Python-es en aditel.org
> http://listas.aditel.org/listinfo/python-es
>



-- 
Daniel Cabrera Chaparro




Más información sobre la lista de distribución Python-es