Re: OT: php te daña la cabeza

Hugo Figueroa R. hugorayo en yahoo.com
Mie Jul 26 01:48:02 CLT 2006


Esto es muy sierto, en lo personal yo hace tres años
que soy desarrollador PHP(sistemas ERP de gran
escala), y cero problema, es cierto que PHP4 en lo que
es OO es super limitado, en PHP5 se reescribio todo el
tema de la OO, ahora bien, hay que recordar que
mucha(MUCHA) gente que no utiliza metodologias de
programacion para la web y que empiezan a construir
sistemas (que crecen y crecen) y que se transforman en
verdaderos castillos de naipes, al utilizar algun
framework en PHP se puede hacer un codigo muy pulcro y
verdaderamente sencillo de mantener,

yo utilizo un framework MVC, ordeno mi codigo en
clases, para la DB utilizo ADOdb
http://adodb.sourceforge.net, para las vistas smarty
http://smarty.php.net, todo bien ordenadito, las
clases en una carpeta, las vistas en otra, etc, el
lenguaje no es malo, los desarrolladores que no
utilizan metodologias son los que hacer parecer que el
lenguaje es malo, ahora miro al pasado y veo el primer
codigo php que desarroller y la verdad es que me da
espanto ;).

lo unico que puedo decir es que PHP cumple bien su
objetivo al ser un lenguaje sencillo para el
desarrollo de aplicaciones web, y sobre lo que dijo
Alvaro, creo que el quiere hecharle mantequilla al pan
con un cuchillo de carnicero, donde yo trabajo se usa
php para los sistemas, y tambien perl para algunas
labores especificas que tiene que ver con el
tratamiento de archivos de configuracion de servidores
y cosa similares, etc, y en algunos casos ambos en
combinacion, la opinion de Ricardo Muñoz es la mas
cuerda,

y alvaro si quieres saber cuando usar =  o =&, leer
las referencias del lenguaje,

http://www.php.net/manual/es/langref.php


Saludos.



 --- Claudio Baeza R <claudio en ing-mat.udec.cl>
escribió:

> 
> Muy buenos argumentos, pero hay una cosa que parece
> ser mas importante
> "el sentido practico".
> 
> Que quiero decir, si funciona en el presente y corto
> plazo, es
> suficiente.
> 
> La analogia a lo anterior es la importancia de la
> programacion en la
> creacion sw software. A los informaticos se nos
> ense~na a modelar,
> dise~nar, construir, documentar, planificar, etc.,
> pero si uno hecha una
> mirada a las empresas que desarrollan software,
> sobre todo las
> consultoras, generan codigo sin ninguna tecnica de
> desarrollo de
> software, la unica tecnica que ocupan, es programar,
> crear codigo,
> probar y si funciona listo.
>  
> Un ejemplo es la consultora DMR, me han contado
> tantas historias que no
> entiendo como una empresa asi puede sobrevivir en el
> mercado, crean
> software sin emplear tecnicas de desarrollo de
> software, osea
> practcamente ponen gente a programar, gente recien
> titulada es mandada
> como "experta" a las empresas o en su defecto, les
> hacen un curso de una
> semana para calificarlos de expertos.  
> 
> Eso me responde a una pregunta que siempre me he
> hago, cuando voy a CTC,
> a algun banco, Isapre, AFP, alguna tienda comercial,
> etc. me encuentro
> con que me dicen "hay problemas con el sistema", "el
> sistema se cayo",
> "el sistema esta lento", etc., y a la gente le
> parece "normal", todos
> esperan entre 5 y 30 minutos sin reclamar ni nada,
> yo no acostumbro
> mucho ir a esos lugares (ya que tiempo es lo que
> menos me sobra), pero
> de las pocas veces que voy, en varias oportunidades
> me ha tocado "perder
> tiempo" debido a problemas con los "sistemas
> informaticos".
> 
>      Concluyo que a veces es mas importante el
> sentido practico en el
> ambito temporal (presente, corto plazo), ejemplo,
> php es facil, pero
> conceptualmente tiene un mal dise~no, pero permite
> hacer cosas en
> periodos de tiempo cortos, a la persona no le
> intersa que
> conceltualmente sea malo, le importa que pueden
> crear cosas. 
>      Las empresas quieren un sistema informatico,
> que buscan, alguien
> que les cree un sistema lo mas rapido posible, no le
> sinteresa si para
> crear el software se emplean tecnicas sofisticadas
> de desarrollo de
> software , mas bien, ni siquiera le interesa si se
> emplean tecnicas
> informaticas de desarrallo de sotfware, solo le
> interesa tener un
> software que puedan utilizar lo mas rapido posible,
> pero las
> consecuencias son en el mediano y largo plazo,
> cuando se requiere de
> cambios o el software a dejado de ser util. 
> 
>   Ya me desahogue...
> 
> claudio
> 
> 
> On Tue, 2006-07-25 at 15:59 -0400, Alvaro Herrera
> wrote:
> > Juan Martínez escribió:
> > 
> > > Cada herramienta para lo que sirve y punto.
> > 
> > O sea PHP para el tacho de la basura y punto.
> > 
> > > Nadie critica a un carpintero por que solo
> martilla y atornilla, ni a un 
> > > electrico por que solo pela cables... :-) Pero
> ambos se necesitan para 
> > > edificar casas o hasta edificios de ultima
> generacion.
> > 
> > Si un carpintero solo martillea y atornilla, yo
> diria que es un muy mal
> > carpintero.  Si un electrico solo pela cables, es
> muy mal electrico.
> > Ambos *deben*, para hacer bien su trabajo, ser
> capaces de llevar a cabo
> > labores mucho mas complicadas.  Las herramientas
> que ambos usan van
> > mucho mas alla que las que has puesto de ejemplos,
> y el que uno solo
> > conozca esas es un buen indicador de que no tiene
> idea de esos oficios.
> > 
> > 
> > > PHP es bueno para la web, y al que le interesa
> solo hacer web-devel bien 
> > > por el.
> > 
> > PHP no es bueno para la web.  Para lo unico que es
> bueno PHP es para que
> > gente que no tiene idea de programar se ponga a
> hacer tonteritas que
> > funcionan en la web.
> > 
> > PHP es un lenguaje tremendamente inconsistente. 
> Para observar eso, nada
> > mas fijate que los argumentos de algunas funciones
> no tienen un orden
> > logico; incluso funciones dentro de las mismas
> familias tienen cierto
> > tipo de argumentos primero, otros despues.  Para
> poder hacer cualquier
> > cosa es necesario tener el manual abierto: "como
> era para las
> > sustituciones con expresiones regulares?" "como
> era el orden de
> > substr()"?  etc.
> > 
> > Por otro lado, mira el exito que tuvo Perl en su
> tiempo como procesador
> > de strings -- cual era su ventaja principal?  Debe
> ser obvio de
> > inmediato que el hecho de tener expresiones
> regulares como constructo de
> > primerisimo nivel es tremendamente importante. 
> Como se las arregla
> > PHP?  De la peor manera posible, es decir igual
> que C: usando funciones
> > para hacer cada operacion.  De esta manera es
> igual de verboso que C,
> > igual de incomodo.  Cual es la ventaja que tiene
> sobre C entonces?
> > 
> > Luego puedes observar las distinciones entre los
> distintos tipos de
> > asignacion en PHP.  Que es =, que es =&?  En que
> casos debes usar cada
> > uno?  Como se comportan?  Yo tuve que modificar un
> sistema usando eso;
> > quise hacerlo usando OOP porque el problema se
> adaptaba naturalmente a
> > eso.  Pero!  El gran problema era saber cuando
> usar = y cuando usar =&,
> > y realmente el soporte que el lenguaje le da a
> esos constructos es tan
> > incomodo que la unica manera de saber si realmente
> lo estabas haciendo
> > bien era probar con uno y luego probar con otro y
> ver que partes del
> > programa funcionaban y cuales no.
> > 
> > Mira Ruby.  Cual es la _gran_ ventaja de Ruby?  Te
> lo puedo decir sin
> > ser un programador Ruby: la enorme potencia que
> tiene al poder construir
> > sentencias potentes pero simples.  Con PHP no
> puedes hacer nada de eso,
> > porque el parser de PHP es tremendamente tonto. 
> Un ejemplo trivial:
> > (http://www.loudthinking.com/arc/000205.html)
> > 
> > doc =
> REXML::Document.new(File.new("articles.xml"))
> >  
> > doc.elements.each('articles/item/title') { |title|
> 
> >   puts title.text
> > }
> > 
> > 
> > El manejo de OOP en PHP es espantoso.  Un metodo
> que retorna un objeto,
> > en cualquier otro lenguaje lo puedes usar como
> objeto e invocar un
> > metodo sobre el.  En PHP esto no es posible,
> nuevamente porque el parser
> > es demasiado tonto.
> > 
> > 
> > Por otro lado, cuando fue la ultima vez que
> simplemente por instalar una
> > nueva version menor del paquete del lenguaje, la
> mitad de los scripts de
> 
=== message truncated ===


__________________________________________________
Correo Yahoo!
Espacio para todos tus mensajes, antivirus y antispam ¡gratis! 
Regístrate ya - http://correo.espanol.yahoo.com/ 


Más información sobre la lista de distribución Linux