Foros Club Delphi

Foros Club Delphi (https://www.clubdelphi.com/foros/index.php)
-   Python (https://www.clubdelphi.com/foros/forumdisplay.php?f=46)
-   -   Opiniones sobre Python, Ruby y Perl (https://www.clubdelphi.com/foros/showthread.php?t=73123)

roman 04-04-2011 19:13:06

Cita:

Empezado por Chris
Dices una cosa, luego otra...

No, no. Es que no me estás entendiendo y cuando dices:

Cita:

Empezado por Chris
Ya he dicho que para algunos esto no es problema, como para tí, Román y otro compañeros.

nos pones en la misma condición que

Cita:

Empezado por Chris
Por otro lado, algunos desarrolladores PHP no vean problemas con mezclar código PHP, JavaScript, CSS, HTML en un mismo archivo

Yo jamás mezclo javascript, css y html. O, por lo menos, cuando lo hago sé que estoy haciendo porquerías :D

Ahora, veamos lo de la mezcla de PHP y HTML.

¿Se pueden mezclar? Sí.

¿Se deben mezclar? Depende.

Una cosa es que en un mismo script pongas todo el código de conexión al servidor, consulta de datos, implementación de la lógica y, para colmo, generación de HTML. Eso, en mi opinión, es incorrecto.

Pero nadie te obliga a una mezcla así tan libertina. Incluso sin recurrir a cosas como SMARTY puedes tener plantillas muy limpias donde el único código PHP que ves es básicamente para "rellenar huecos" e iterar una lista de objetos.

A eso me refiero.

// Saludos

D-MO 04-04-2011 19:14:24

Cita:

Empezado por Chris (Mensaje 395747)
...la mezcla de código.

En Python es de sí o sí meter el html dentro de una cadena para "imprimirla" y mostrarla en pantalla.

Lo que pasa es que comparas el sistema de plantilla se Django con un archivo único de php. ¿Está esto balanceado?

Pongamos las cosas por igual, con Python a Django Template Language y con PHP a Dwoo, el escenario es el siguiente:

El usuario hace una petición a la página precio_actualizado.html con la intención de que se le muestre el precio alctual del producto X.

Django:

app_name/views.py
Código:

def precio_actualizado(request, page):

    precio = 12345
   
    return direct_to_template(request, template='precio_actualizado.html', {'nuevo_precio': precio )


template/precio_actualizado.html
Código:

<html>
<head>
  <title>Precio Actualizado</title>
</head>

<body>
  El precio actual es {{  nuevo_precio }}
</body>
</html>

Con PHP + Dwoo:
precio_actualizado.php
Código PHP:

<?php
 
include 'path/to/dwooAutoload.php'
 
$dwoo = new Dwoo(); 
 
$precio 12345
 
$dwoo
->output('templates/precio_actualizado.tpl', array('nuevo_precio'=> $precio ));
 
?>

templates/precio_actualizado.tpl
Código:

<html>
<head>
  <title>Precio Actualizado</title>
</head>

<body>
  El precio actual es { $nuevo_precio }
</body>
</html>

El ejemplo quizá no sea el mas complejo pero sirve para que nos demos cuenta que con ambos podemos trabajar de la misma manera y casi con la misma plantilla. Ahora, ¿Que dices?

Saludos.

D-MO 04-04-2011 19:18:05

Cita:

Empezado por Chris (Mensaje 395750)
¿existe alguna forma fácil de hacer una página web dinámica sin mezclar código PHP y HTML?

Mira mi mensaje anterior, ejemplo de Dwoo. Mira el anterior a este donde me pongo el link a 19 motores de plantillas para PHP.

Saludos

roman 04-04-2011 19:20:53

Pero, incluso puede ser así:

Código PHP:

<html>
<head>
  <title>Precio Actualizado</title>
</head>

<body>
  El precio actual es <?php echo $nuevo_precio ?>
</body>
</html>

Y, anunque no es exacto, el uso de la plantilla puede ser algo tan simple como:

Código PHP:

$nuevo_precio 12345;
include(
"/templates/precio_actualizado.tpl"); 

Es decir, que en la plantilla sí se estaría mezcando código HTML y PHP. El punto es que esto no necesariamente es malo.

Repito, lo malo es la mezcla de código de presentación y código de la lógica.

// Saludos

Chris 04-04-2011 19:21:29

Cita:

Empezado por movorack (Mensaje 395749)
Chris... en python (no se nada de python), ¿si no usas django podrias generar una simple pagina web sin mezclar html con python?

No, ya ho ha dicho D-MO. De hecho en Python es pero que en PHP, pues necesita incluir "echo's" para todo.

D-MO 04-04-2011 19:27:01

La solución propuesta por roman es perfectamente aceptable. Yo he citado los motores de plantillas para poner a PHP en la misma posición que Django.

Saludos.

Chris 04-04-2011 19:41:07

Estimados compañeros, mejor dejemos la discusión que no llegamos a nada. No se trata que porque en A no se pueda, entonces le perdonamos a B que tampoco se pueda. Además el tema tiende a preferencias, lo que hará que nunca estemos de acuerdo. Hay quienes prefieran tener la posibilidad de colocar código PHP en las plantillas. Es una gran posibilidad para crear plantillas más "potentes" y además tener mejor control. Aunque esto último es relativo. Pero hay otro que prefiramos las cosas más limpias desde nuestros puntos de vista.

Al G. pidió opiniones, y la mía es en síntesis que, al ser PHP un lenguaje especializado para la Web, ya debió o debería de proporcionar herramientas o métodos que de forma fácil permitan a los desarrolladores no mezclar código HTML y PHP si lo prefieren. Talvez integrar dentro del lenguaje a Dwoo, por dar un ejemplo, a cómo una vez lo hicieron con el Plugin de MySql.

Y por último, cómo un niño necio que le encanta "jincar" :D :D :D, no me gusta la sintaxis de C++Script, digo PHP :p

D-MO 04-04-2011 20:04:33

Cita:

Empezado por Chris (Mensaje 395766)
...Talvez integrar dentro del lenguaje a Dwoo

¿Y para qué integrarlo si el desarrollador tiene la libertad de utilizar el motor de plantillas que desee?
Cita:

Empezado por Chris (Mensaje 395766)
...no me gusta la sintaxis de C++Script, digo PHP :p

Si no te gusta la sintaxis, pues bien, es tu decisión, eres libre de decidir que te gusta o que no, sin embargo, eso no significa que sea mejor o peor que otro.

Saludos

mamcx 04-04-2011 20:45:11

Cita:

Empezado por roman (Mensaje 395725)
No obstante me sorprende que gente con experiencia desestime un lenguaje por "cómo se ve", porque han visto algún código mal hecho y les es razon suficiente para desecharlo. Sin embargo esto no es tan grave pues cada cuál decide qué herramienta usar por las razones que considere pertinentes.

..

Es evidente que estas personas no le dedicaron ni media hora al lenguaje y basan sus juicios en sus aversiones personales.

// Saludos

Pues una de la razones ppales de usar pascal es "cómo se ve", no?


Hay una razón de peso por la cual desestime a PHP...

Originalmente (ver historia), php fue una almalgama de funciones hechas ad-hoc, sin mucho diseño acerca del lenguaje. Definitivamente, estaba totalmente orientado a el codigo espaguetti (una herencia del perl), y fue solo de forma *muy* reciente que empezo a tener orientacion a objetos y por ende, mecanismos para organizar el codigo.

El modelo de MVC fue algo que se agrego, pero solo después de que Ruby on rails probara (o popularizara) que es un mucho mejor método de desarrollo.

Esto tiene una implicación. Una gigantesca cantidad de código PHP que anda por ahí es del tipo spaguetti (y si le dedique mas de media hora: Examine proyectos enteros - lo que significa, que lei cantidades considerables de codigo -: vtiger, oscommerce, y un erp que no me acuerdo cual, aparte de que los primero sitios en PHP).

Puede que a algunos que escriben la totalidad del programa los afecto poco, pero igual tiene su impacto. Entre otras cosas, implica que en ves de reutilizar, hay que escribir desde cero.

En cambio, antes de django con python no habia nada fuerte... y cuando se popularizo, paso algo particular: desde las bases hay un mejor diseño, es solo ver por ejemplo, lo elegante del ORM, o el ruteo de URLs... y ese estilo se rego a todo los demas: web.py, turbogears, sqlalchemy, etc...

Y entre los programadores de python, no hay nada de eso de escribir espaguetii. En serio. He leido y usado proyectos de todo tipo (tanto por hobby, como por trabajo) y como les digo, siempre parece que el codigo lo hizo un mismo programador. Esa es una cualidad tremenda. Es parecido al codigo pascal, pero mucho mas permeable.

No me crean. Miren el codigo de Panda3d, y luego el de django. Les aseguro que sin experiencia, captan una cantidad muy alta d elo que sucede por ahi. De hecho, cuando apenitas sabia django, aporte un cambio al proyecto: Soporte a sql server:http://code.djangoproject.com/ticket/5062 (lo que es una tarea de dificultad media)

Asi que con toda certeza, puedo asegurar que nadie en python trabaja a la manera salvaje oeste de PHP. No es que no se pueda, es que hace parte del mismo estilo, diseño, filosofia del lenguaje. Todo lenguaje tiene eso. Y aunque es posible escribir codigo claro en casi cualquier lenguaje (APL excluido!!) unos lo promueven mas que otros. En perl, php, hay mas tendencia a que no sea asi. En python a que si lo sea.

mamcx 04-04-2011 20:51:33

Cita:

Empezado por movorack (Mensaje 395749)
Chris... en python (no se nada de python), ¿si no usas django podrias generar una simple pagina web sin mezclar html con python?

Si claro. Es de hecho la forma natural de hacerlo.

Esto es el estilo estandar de trabajar con cadenas:

Código:

print "Una cadena que muestra %(variable)s" % {'variable':123}
Y la libreria estandar tiene un sistema de plantillas:

http://docs.python.org/release/2.5.2/lib/node40.html

Por eso, en python es la forma natural de casi todos los frameworks de sitios web, el usar plantillas. De hecho, hay muchas:

http://www.webwareforpython.org/Papers/Templates/

(Hay un par que permite codigo espaguetti, pero en la comunidad de python no es popular. Eso es para la gente que viene de otros lenguajes)

roman 04-04-2011 21:11:59

Cita:

Empezado por mamcx (Mensaje 395791)
Hay una razón de peso por la cual desestime a PHP...

Originalmente (ver historia), php fue una almalgama de funciones hechas ad-hoc, sin mucho diseño acerca del lenguaje. Definitivamente, estaba totalmente orientado a el codigo espaguetti (una herencia del perl), y fue solo de forma *muy* reciente que empezo a tener orientacion a objetos y por ende, mecanismos para organizar el codigo.

PHP cuenta con soporte a objetos desde su versión 4, que tiene ya bastantes ayeres. De todas formas, aunque para ti puede ser una razón válida para desestimar un lenguaje, en mi opinión sólo aplicaría si lo que hubiera en estos momentos fuera PHP 3.x.


Cita:

Empezado por mamcx
El modelo de MVC fue algo que se agrego, pero solo después de que Ruby on rails probara (o popularizara) que es un mucho mejor método de desarrollo.

El modelo MVC no se ha agregado a PHP. No es una característica inherente al lenguaje. Más correcto sería decir que cuando evaluaste PHP, no había un framework con soporte MVC que te convenciera.

Cita:

Empezado por mamcx
Esto tiene una implicación. Una gigantesca cantidad de código PHP que anda por ahí es del tipo spaguetti.

¿Y?

Si eso fuera una razón válida para desestimar un lenguaje, tendríamos que desestimar a Delphi igualmente.

Cita:

Empezado por mamcx
En cambio, antes de django con python no habia nada fuerte... y cuando se popularizo, paso algo particular: desde las bases hay un mejor diseño, es solo ver por ejemplo, lo elegante del ORM, o el ruteo de URLs... y ese estilo se rego a todo los demas: web.py, turbogears, sqlalchemy, etc...

Y entre los programadores de python, no hay nada de eso de escribir espaguetii. En serio. He leido y usado proyectos de todo tipo (tanto por hobby, como por trabajo) y como les digo, siempre parece que el codigo lo hizo un mismo programador. Esa es una cualidad tremenda. Es parecido al codigo pascal, pero mucho mas permeable.

No me crean. Miren el codigo de Panda3d, y luego el de django. Les aseguro que sin experiencia, captan una cantidad muy alta d elo que sucede por ahi. De hecho, cuando apenitas sabia django, aporte un cambio al proyecto: Soporte a sql server:http://code.djangoproject.com/ticket/5062 (lo que es una tarea de dificultad media)

Asi que con toda certeza, puedo asegurar que nadie en python trabaja a la manera salvaje oeste de PHP. No es que no se pueda, es que hace parte del mismo estilo, diseño, filosofia del lenguaje. Todo lenguaje tiene eso. Y aunque es posible escribir codigo claro en casi cualquier lenguaje (APL excluido!!) unos lo promueven mas que otros. En perl, php, hay mas tendencia a que no sea asi. En python a que si lo sea.

Aquí ya estás hablando con más seriedad. Das tus razones -muy válidas- de porqué piensas que es mejor uno que otro o porqué te gusta más. Y, de hecho, son las cosas que pueden animar a uno a interesarse en el lenguaje.

Cosa muy distinta de decir que PHP es para hacer paginitas sólo porqué a ti en lo personal no te gusta.

// Saludos

Chris 04-04-2011 21:41:26

Cita:

Empezado por roman (Mensaje 395799)
Cosa muy distinta de decir que PHP es para hacer paginitas sólo porqué a ti en lo personal no te gusta.

Creo que cuando mamcx se refiere a que PHP es solo para hacer "paginitas", no es por menospreciar. Sino que prácticamente solo se usa en la Web. ¿Cuánto código PHP hay escrito para programas de escritorio o algo similar? Muy poco. En Python? mucho! Muchos de los programas que se distribuyen con una distribución Linux fueron programados en Python en su totalidad o en parte.

Además, lo que ha dicho mamcx acerca de la historia de PHP es algo que no se puede Ignorar. PHP nació sin diseño y ha venido desarrollándose sobre la marcha. PHP nació sin filosofía y sin visión propia. Es por eso que hay tantos cambios versión tras versión. Además de sus varios problemas de seguridad (corregidos en versiones anteriores).

Desde mi punto de vista, creo que PHP hizo un buen trabajo en la transición de la Web 1.0 a la 2.0. Ofreció un lenguaje libre para que los desarrolladores ofrecieran contenido más rico en un momento donde no había muchas opciones. Hoy la situación es distinta, hay lenguajes más modernos y maduros sobre los cuáles puedes respaldarte.

mamcx 04-04-2011 22:10:53

Cita:

Empezado por Chris (Mensaje 395806)
Creo que cuando mamcx se refiere a que PHP es solo para hacer "paginitas", no es por menospreciar.

Y en la pagina de wikipedia me acuerda de donde salio ese tiro:

Cita:

PHP originally stood for "Personal Home Page",
http://en.wikipedia.org/wiki/PHP

En la época, habia perl, lisp... o c++. Tener un lenguaje para hacer la paginita personal... eso fue revolucionario. Ese fue su inicio, su proposito. Sigue siendolo! Es como el visual basic de la generacion web.

Se presta para la broma ocacional, si. Pero cuando un lenguaje logra iniciar a muchos a la programacion es porque en primer lugar, es menos "serio" y menos "hardcore" que lo que estaba antes...

roman 04-04-2011 22:21:38

Cita:

Empezado por Chris (Mensaje 395806)
Creo que cuando mamcx se refiere a que PHP es solo para hacer "paginitas", no es por menospreciar. Sino que prácticamente solo se usa en la Web. ¿Cuánto código PHP hay escrito para programas de escritorio o algo similar? Muy poco. En Python? mucho! Muchos de los programas que se distribuyen con una distribución Linux fueron programados en Python en su totalidad o en parte.

No entiendo esta insistencia. PHP no sirve para programar aplicaciones de escritorio. Lo que hay para ello es una broma...

Cuando se habla de desarrollo con PHP es siempre para web. Es estéril cualquier comparación aplicaciones de escritorio.

Cita:

Empezado por Chris (Mensaje 395806)
Además, lo que ha dicho mamcx acerca de la historia de PHP es algo que no se puede Ignorar. PHP nació sin diseño y ha venido desarrollándose sobre la marcha. PHP nació sin filosofía y sin visión propia. Es por eso que hay tantos cambios versión tras versión. Además de sus varios problemas de seguridad (corregidos en versiones anteriores).

No es que se ignore. Pero argumentarlo como contra del lenguaje para un desarrollo actual es desconocimiento o simple mala leche. Aun cuando PHP carga todavía algunos de los problemas debido a su inicio como personal home page, PHP5, con Zend 2 fue escrito totalmente desde cero.[/quote]

// Saludos

movorack 04-04-2011 22:28:47

Cita:

Pero cuando un lenguaje logra iniciar a muchos a la programacion es porque en primer lugar, es menos "serio"
No me acuerdo cual de los usuarios del club había dicho que en muchos lugares enseñan pascal o delphi para iniciar en la programación. pues su sintaxis mas natural los hace adentrarse en este mundo mucho mucho mas facil que un C/C++.

Cita:

PHP originally stood for "Personal Home Page",
El encantador de perros dice: "Los perros viven el hoy, el ahora... los humanos tenemos la penosa costumbre de vivir en el ayer"

Cita:

Es como el visual basic de la generacion web.
Es tu opinión! (deberían quemarte vivo por blasfemo :D)

Chris 04-04-2011 22:33:28

Cita:

Empezado por roman (Mensaje 395816)
No entiendo esta insistencia. PHP no sirve para programar aplicaciones de escritorio. Lo que hay para ello es una broma...

Cuando se habla de desarrollo con PHP es siempre para web. Es estéril cualquier comparación aplicaciones de escritorio.

Entonces, en el sentido del Hilo y la pregunta de Al González, entonces no vale la pena aprender PHP, porque solo te va a servir para programar páginitas, a cómo dice mamcx. Entiendo que quedamos de acuerdo en eso. En resumen, como consejo a Al, mejor aprende Python que te servirá para más que la Web.

Cita:

Empezado por roman (Mensaje 395816)
No es que se ignore. Pero argumentarlo como contra del lenguaje para un desarrollo actual es desconocimiento o simple mala leche. Aun cuando PHP carga todavía algunos de los problemas debido a su inicio como personal home page, PHP5, con Zend 2 fue escrito totalmente desde cero.

Tú lo has dicho.... a pesar de ser escrito desde cero, PHP carga todavía algunos problemas debido a su inicio como PHP (Personal Home Pages). El caso es, que esto problemas aún no solucionados, son tan grandes que definen al lenguaje, desde mi punto de vista.

roman 05-04-2011 15:56:38

Cita:

Empezado por Chris (Mensaje 395818)
Tú lo has dicho.... a pesar de ser escrito desde cero, PHP carga todavía algunos problemas debido a su inicio como PHP (Personal Home Pages). El caso es, que esto problemas aún no solucionados, son tan grandes que definen al lenguaje, desde mi punto de vista.

Yo a los problemas a que me refiero son relativos básicamente a nomenclatura. No hay un acuerdo estricto en como llamar las funciones. Fuera de eso, el soporte de clases es bastante completo.

Hasta ahora no he visto un sólo argumento contra PHP que no esté basado en el prejuicio, el desconocimiento o la simple aversión personal, supongo porque da caché, hablar mal de lo que es popular.

Para criticar algo se tiene que conocer. Se juzga mucho al PHP actual por lo que fue en sus inicios. Recalcan lo del origen del nombre como si eso fuera una prueba de lo malo que es el lenguaje. Hablan de la mezcla del código HTML y PHP sin realmente haberse detenido a examinar si eso es inherentemente malo.

// Saludos

mamcx 05-04-2011 19:27:36

Cita:

Empezado por roman (Mensaje 395879)
Hablan de la mezcla del código HTML y PHP sin realmente haberse detenido a examinar si eso es inherentemente malo.

// Saludos

Y cuando es bueno?

No se si hay aquí muchos que sufrieron la época de ASP, PHP (antes de los frameworks nuevos), ASP.NET con html inline, etc...

Con la excepción de hacer una única pagina (o un conjunto muy bajo) donde hacer todo un proyecto seria pesado, no veo un argumento solido en hacer un proyecto de un sitio web donde se mezcle rutinariamente el html/js/css/lenguaje servidor... asi que roman, cual es el caso de uso que me he perdido en estos 10 años???

roman 05-04-2011 20:07:28

Cita:

Empezado por mamcx (Mensaje 395932)
Y cuando es bueno?

No se si hay aquí muchos que sufrieron la época de ASP, PHP (antes de los frameworks nuevos), ASP.NET con html inline, etc...

Con la excepción de hacer una única pagina (o un conjunto muy bajo) donde hacer todo un proyecto seria pesado, no veo un argumento solido en hacer un proyecto de un sitio web donde se mezcle rutinariamente el html/js/css/lenguaje servidor... asi que roman, cual es el caso de uso que me he perdido en estos 10 años???

Te invito a que leas con detenimiento lo que se ha dicho aquí. Al igual que Chris, supones que la mezcla de código necesariamente lleva a una mezcolanza de html, php, css, javascript en un sólo archivo.

¿Cuándo es bueno? Cuando el código PHP que mezclas con HTML es únicamente código para rellenar huecos, iterar registros, etc. Código únicamente para controlar la presentación (¿Cuántas veces habré escrito esto en este hilo?). Ejemplos de su uso ya se han dado aquí.

¿Desde cuándo puede hacerse esto? Desde siempre. No se requieren frameworks nuevos. Es algo que se puede hacer desde PHP 3. Claro que ya depende de cada quien qué tan feo quiera programar.

Además, nadie te obliga a mezclar html y php. Puedes usar smarty u otro sistema de plantillas. Cosa que a mi en lo personal no me gusta porque requiere un "parseo" extra.

¿Que PHP es susceptible de "caer" en manos de programadores que escriban caóticamente? Sí. Y Delphi también ¿Y?

Se puede criticar una herramienta. Nadie debe asustarse ni ofenderse por ello. Y examinar otras opciones, como Python, puede ser muy enriquecedor. Lo que me parece inapropiado es criticar con base en malas técnicas de programación, creencias infundadas y desconocimiento del estátus actual de dicha herramienta.

// Saludos

mamcx 05-04-2011 22:53:29

Cita:

Empezado por roman (Mensaje 395938)
¿Cuándo es bueno? Cuando el código PHP que mezclas con HTML es únicamente código para rellenar huecos, iterar registros, etc.
....

¿Que PHP es susceptible de "caer" en manos de programadores que escriban caóticamente? Sí. Y Delphi también ¿Y?

Ok, eso esta claro. Osea, es lo mismo que se hace de forma normal desde que salió el ASP y herramientas similares. En teoria se usa para exactamente lo que dices. Todavía es el estilo por defecto, a la hora de exponer a los nuevos desarrolladores.

Lo cual degenera en que los desarrollos salgan de forma caótica. Entonces es malo. Se que el punto que estas anotando es que un buen programador le dará un uso apropiado... en lo cual concuerdo. Pero cuanto de eso existe por ahi?

Entonces, si una herramienta X permite un manejo mejor, mas sencillo, loquesea por defecto y hace que el caso menos ideal sea una rareza, por ende es mejor.

Es como discutir entre transmision automatica y manual. En manos expertas, la manual es mejor. Pero es claro que la automatica es superior en terminos generales.

Y no se si estoy escribiendo de forma muy combativa o que, pero lo que he tratado de decir es que a la hora de elegir la herramienta, el ecosistema pesa mucho. Y si una mayoria de ese ecosistema no esta sobre un fundamento mas solido, tocara tarde o temprano pelearse con el.

Para algunos que son desarrolladores disciplinados ni le veran el lio... porque son disciplinados. Pero a la vez, si eres disciplinado y tienes por default un framework mejor diseñado, tambien te beneficia.

Es como con la VCL. Si se compara con el API raso de windows (o peor, la MCF) es muy notable su superioridad... no tecnica, sino en estilo.

Tonces, si alguien va a empezar con PHP, deberia seriamente ignorar los ejemplos mas comunes, y usar una separacion tipo MVC. Y tener la disciplina de no mezclar presentación con lógica (un esfuerzo que ha probado su inutilidad a larga escala en todos los años que existen las herramientas de programación que lo promueven o permiten... pues delphi ahi lo tienes) o mejor usar un sistema de plantillas... (hay casos muy concretos donde es bueno la mezcla de todo eso... y el caso #1 solo te afecta si tienes un sitio de altisima demanda....)

roman 06-04-2011 15:48:03

Cita:

Empezado por mamcx (Mensaje 395955)
Entonces, si una herramienta X permite un manejo mejor, mas sencillo, loquesea por defecto y hace que el caso menos ideal sea una rareza, por ende es mejor.

Este es un punto a tener en cuenta. Me gusta ese argumento. Sin embargo, eso no implica que PHP sea un lenguaje malo.


Lo que dices, del ecosistema, la facilidad con la que se pueden hacer malos códigos, etc. aplica también a Delphi, y, sin embargo, no veo que a éste lo cortes con la misma tijera que a PHP en ese aspecto. Porque, entonces, siguiendo tu línea de argumentación, tendrías que concluir que Delphi es el Visual Basic del escritorio :eek:

Y en mi opinión, confundes el lenguaje en sí con técnicas de programación. Tener una buena metodología, como lo podría ser MVC, no es inherente al lenguaje. Como ya te han mencionado aquí, MVC no es parte de Python. Django, un framework para Python, trabaja con la metodología MVC, así como muchos framework para PHP lo hacen.

Pero vayamos con tus ejemplos automovilísticos. Estarás de acuerdo que un Jaguar lo puede manejar cualquier mequetrefe con resultados caóticos. Pero, un Jaguar es un Jaguar...



¿Lo descartamos porque puede ser mal manejado?

// Saludos

mamcx 06-04-2011 18:31:41

Cita:

Empezado por roman (Mensaje 396022)


¿Lo descartamos porque puede ser mal manejado?

// Saludos

Hombre, pues claro! Y yo me encargo de manejarlo bien... asi que pasenme sus jaguar ;)

Julián 06-05-2011 22:29:23

A raiz de una conversación en otro foro me he acordao de mis pruebas con python y django. Puse algunos mensajes por aquí relatando mis experiencias desde cero, y no es que me haya cansado. Es que llegué a un punto en el que me dí cuenta de que estaba mas tiempo buscando soluciones a problemas, pero ojo, a "problemas inesperados", que escribiendo código que funcionase.

Aún recuerdo las primeras versiones de delphi, en las cuales los límites estaban en mis conocimientos, y no en "problemas inesperados" del propio Delphi.

Me refiero a cuando haces algo y no funciona y piensas "¡Cojones, pero si he seguido las instrucciones, si esto se supone que DEBERÍA funcionar, y sin embargo, no funciona" y cuando te vas dar cuenta estás buscando y rebuscando por foros de internet una solución, una solución que sueles tardar un buén rato en encontrar, si la encuentras.

Es el tipo de errores que empezaron a abundar con el Delphi 6.0. Errores de la herramienta, del entorno, de yo que sé.

El caso es que con Python y django me paso lo mismo: en un momento dado me encontré buscando soluciones a problemas de ese tipo.

A lo mejor mas adelante, si alguien se anima con este foro y completa estos hilos que hemos empezado a modo de cursos o tutoriales, pues cambia la cosa.

Yo al menos de momento, para lo que necesito, o sea, aplicaciones web, php lo veo mucho mejor que python, y django solo me parece un framework como cualquier otro. Bueno, y en el futuro a corto o medio plazo, ni python ni php ni apache ni django creo que tengan nada que hacer frente a node.js. Eso si que es el futuro de la programción web.

Pues eso, a ver si alguién hace que me coma mis palabras, pero con código, no con teoría. :D :D

rastafarey 17-06-2011 03:03:26

Resp
 
Descartaron Perl simplemente por que no lo conocen o le tienen pavor. Pero lespuedo asegurar que estan raspados. Perl es un lenguaje super potente. Posse codigo compilado y preconpilado. Asi que lean un poquito y despues lo descartan.

Es como descartar C o C++ por no ser nada facil pero resulta ue es lo mejor que existe.

Al González 17-06-2011 04:17:12

Yo también tengo poderes, les puedo mostrar. ;)

Este hilo es para recabar información sobre los tres lenguajes y ayudarnos a tomar decisiones de por qué deberíamos optar por uno y no por otro. El espacio sigue y seguirá abierto a la exposición de argumentos y no creo que haya quedado descartado rotundamente ningún lenguaje, si bien yo ya me inclino por aprender Python antes que los otros dos.

C o C++ no es lo mejor que hay (y menos con esa horrible sintaxis :D). El mejor lenguaje de programación es aquel que se adapta de mejor forma a las circunstancias de un caso y lo lleva a buen puerto. Es decir, cualquier lenguaje tiene todo el derecho de ser declarado, subjetivamente, «lo mejor que existe». Pero hace falta añadir unos cuantos "para..." y otros tantos "porque..." para pasar de lo subjetivo a lo objetivo.

Un abrazo entre buenas personas.

Al González.

roman 17-06-2011 15:23:06

Cita:

Empezado por rastafarey (Mensaje 404026)
Descartaron Perl simplemente por que no lo conocen o le tienen pavor. Pero lespuedo asegurar que estan raspados. Perl es un lenguaje super potente. Posse codigo compilado y preconpilado. Asi que lean un poquito y despues lo descartan.

Es como descartar C o C++ por no ser nada facil pero resulta ue es lo mejor que existe.

Tienes razón. No se debe descartar un lenguaje por mero desconocimiento o porque de entrada luce complicado. En tal caso, valga la analogía, deberíamos deshacernos del chino, el alemán, el árabe, etc.

No obstante, como dice Al, este hilo se abrió para recabar opiniones, y hasta el momento nadie, ni siquiera tú, han hablado de los beneficios de Perl. ¿Por qué no nos das una opinión más formada de la que evidentemente tenemos quienes hasta ahora hemos participado?

// Saludos

martinartaza 18-07-2011 15:09:33

Yo me inclino por python.
 
Aunque use poco, python y php (nada de perl, la verdad que me asustaron la fama que tuvo siempre perl, nunca me olvido de una tira cómica de python http://www.tiraecol.net/modules/comi...?content_id=15)
Hace como 4 años use python durante 3 a 5 meses y hice lo siguiente
1 - Probe hacer programas de escritorios y no me fue muy bien
2 - Logre compilar código que tenia la librería panda y vi al panda girar y estuvo chulo pero lo deje ahí nada más.
3 - Hice una animación simple en blender (creo que esto lo hice otro año) estuvo fenomenal.
4 - Trate de hacer web (en ese momento no existia django o yo no lo conocia) y tampoco me fue muy bien, pero vi código asombroso correr en el browser (con la condición que la maquina de destino tenga instalado el interprete de python) y era increíblemente simple de hacer y poderoso.
5 - A lo anterior hice programas usando la libreria VPython (visual python o algo así), y estuvo chulo las animaciones en el browser.
6 - Y lo que hice en serio y le tome como un mes (en esa epoca de vacaciones haciendo eso nada más), fue tratar de simular el comportamiento interno de un Micro procesaror MIPS (uno simple, uniciclo de 6 instruccion). Esto no lo hubiere ni si quiera podido encarar con delphi (que es el que mejor manejo) me quede sorprendido en ese epoca de la sencilles de programar con python, esto creo que me hizo fan de python, porque python es multiproposito, no solo es orientado a objetos, también es orientado a lista, el tipo de datos diccionario es sorprendente.

Entonces si fracase en más del 50% de las cosas que encare en python, porque elijo python, porque en meses podes aprender un montón de cosas con python, además las cosas que encare, veía que funcionaba y listo pasaba a otra cosa.

Ahora sumado que :
1 - Google apoya python (subvenciono al creador de python)
2 - Existen framework para web django.
3 - Escribir software para escritorio, no es mi problema ya que lo encaro con Lazarus (creo que es la mejor opción). (A mí parecer no es muy lindo python para escritorio, no digo que no se pueda pero no es ...... rentable por asi decirlo)
4 - Ahora python se integra con postgres de una manera que da miedo http://python.org.ar/pyar/PlPython
Es el equivalente de usar funciones escritas por el usuario (en delphi a c++) para firebird, pero con la facilidad que no tienes que grabar en una dll o so, y que corre tanto en win como en linux.
5 - JPython da la facilidad de programar en python y correrlo en una maquina java. http://www.jython.org/
6 - Puedes hacer juegos con mayor simplicidad que con c++ ahí tienes una pagina para hacer juegos tanto en c++ como en python http://www.losersjuegos.com.ar/

A pesar de todo esto, no me doy tiempo ahora para dedicarle, pero lo veo sorprenderte a este lenguaje, sobre todo su curva de aprendizaje.

angelholberg 20-10-2011 02:07:37

Ruby +1
 
Hola a todos los del foro, he acá mi comentario he usado Delphi durante 4 años he echo cosas importantes me ha dado de comer pero como dicen los colegas es hora de cambiar de rumbo, en cuanto a Python, Ruby y Perl, he tenido contacto con Python y Ruby de los cuales me eh inclinado definitivamente pro Ruby más ahora con al recién salida de su Framework Rails 3.1 que trae muchas cosas importantes para desarrollo web, aunque el Framework Django para Python esta super genial, pero realmente me ha convencido aún más Rails para desarrollar aplicaciones potentes y a gran escala., Recientemente acabo de comprarme el libro de Desarrollo web con rails de al editorial anaya multimedia aunque viene unas dos versiones atrasada con respecto al framework es muy buena referencia para aquellos que no se nos da bien el ingles, bueno creo es todo con mi opinión.

Chris 20-10-2011 07:20:08

¡MUERTE A PHP! :D ;)

martinartaza 20-10-2011 15:26:13

Cita:

¡MUERTE A PHP!
Parece ser que no gusta estar en lo menos popular, antes era mucha Visual Basic ahora es muera PHP.

mamcx 20-10-2011 17:19:56

Cita:

Empezado por Julián (Mensaje 399244)
El caso es que con Python y django me paso lo mismo: en un momento dado me encontré buscando soluciones a problemas de ese tipo.

Mi experiencia ha sido inversa. Los problemas raros casi no los encuentro, aunque si es cierto que busco mas en foros y stackoverflow... pero mas que todo para ahorrarme el trabajo de hacerlo yo solo ;). He de notar que la programación web siendo mas "simple" en principio es mas demandante porque exige mezclar muchísimas cosas a la vez, es un target que se mueve mucho y tiene requerimientos adversos y atípicos a la programación de escritorio (como el manejo de multiples conexiones concurrentes, retornar en milisegundos, el HTML que no es estándar entre los navegadores, mayor preocupación por la BD, la invalidación de los caches, configurar servidores y demás cosas)

Django es una libreria anomala, en el sentido que siempre he estado con la ultima version de esta, la actualizo en cualquier momento y nunca me he topado con un problema serio (tengo la costumbre de subir version a todas las librerías que uso tan pronto como me es posible, le tengo pavor a la obsolescencia).

Me intriga saber que encontraste que te freno...

Julián 20-10-2011 19:46:41

Cita:

Empezado por mamcx (Mensaje 416307)
Me intriga saber que encontraste que te freno...


Pues hace ya tiempo y no me acuerdo concretamente, tendría que rebobinar mucho, pero lo que pasó fue muy sencillo: estuve siguiendo tutoriales de la web, creo que de la misma web de pyhton, copiandolos y viendo lo bien que funcionaban en el navegador, y me estaba gustando bastante, pero llegué a un punto en el cual, una vez las pruebas que hacia ya eran un poquito mas complejas, aunque no mucho, y me encontré con que habiendo seguia las instrucciones correctamente, y no me funcionaban. Y no encontraba solución buscando en internet.

Si saco algún rato intentaré encontrar en donde me atranqué.

Un saludo!


La franja horaria es GMT +2. Ahora son las 20:24:07.

Powered by vBulletin® Version 3.6.8
Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
Traducción al castellano por el equipo de moderadores del Club Delphi