Si estás más o menos puesto en el tema de programación, es posible que navegando por la vasta web te hayas encontrado foros, blogs y demás venerando algunos lenguajes de programación y ridiculizando otros. PHP, por desgracia, suele ir dentro del segundo grupo.

Pero, ¿por qué hay gente que lo considera un mal lenguaje?

Vamos a analizar algunos de los argumentos que se suelen utilizar en contra de PHP:

1bvaev

Los mismos argumentos cambian en funciones parecidas

Siendo sinceros, sí, esto es algo que puede hacer comerse el coco a más de uno. El típico ejemplo suelen ser las funciones in_array() y strpos(). Las dos funciones tienen un propósito similar: buscan elementos en un array y en una cadena de texto, respectivamente.

Pero, ¿y el problema?

El quebradero de cabeza viene al decirle a las funciones qué buscar y dónde buscarlo, ya que estas funciones invierten el orden de los parámetros. Veamos un ejemplo:

Para buscar algo dentro de un array debemos usarlo de la siguiente manera:

in_array(‘busca_esto’, $aquí). (sencillo, ¿verdad?)

Ahora, para buscar una cadena de texto dentro de otra, se invierte el orden:

strpos($aquí, ‘busca_esto’).

De acuerdo, lo entiendo. Es algo complicado diferenciarlos. Pero, ¿acaso cuesta tanto echar un ojo a la maravillosa documentación de PHP?

Pocos programadores hay que se conozcan al dedillo todas las funciones de un lenguaje. Tarde o temprano, todos acabamos echando un ojo a la documentación o a nuestro mesías StackOverflow.

El código es malo

PHP es, casi siempre, el lenguaje por el que se opta al aprender a programar webs. ¿Por qué? Porque es fácil de aprender.

Esta facilidad tiene una contra, y es que hace que haya mucha gente trasteando por la web con PHP, lo que conlleva a que gran parte del código ajeno que te puedas encontrar por ahí no esté del todo correcto.

Cada uno tiene su manera de programar, pero mientras tu programa siga unas sencillas pautas como estar bien estructurado y comentado, puede ahorrarle varias confusiones a cualquiera que vea tu código.

De hecho, esto siempre viene bien incluso para ti mismo. A todos nos ha pasado ver código propio y no saber a qué nos referíamos a la hora de programarlo.

gandalf-i-have-no-memory

Está mal diseñado

Muchos no pueden evitar compararlo con otros lenguajes de programación que ni siquiera son orientados a la web (En serio, dejad de compararlo con C o Java; no tiene sentido), como es el caso de PHP (recordemos que PHP es un lenguaje web, del lado de servidor, interpretado y bla bla bla).

pokerprog

En mi sincera opinión, el diseño del lenguaje en sí es todo lo bueno que tiene que ser. Claro que hay cosas que se podrían mejorar, pero es un lenguaje orientado a objetos tan bueno como cualquier otro dentro de su ámbito, y si aún así no te convence, siempre puedes optar por frameworks como Laravel, que funciona a modo de MVC y te da muchas funciones ya hechas para que te centres en que tu aplicación haga lo que tiene que hacer y dejes el trabajo sucio a los demás.


De todos modos, PHP sigue siendo el lenguaje del lado de servidor más utilizado y por el que gran parte de centros de formación y universidades optan por enseñar.

Por poner un ejemplo, la mayoría de las webs del mundo están hechas en WordPress, y ¿a que no sabes en qué está escrito WordPress? Lo has adivinado: en PHP.

Cierto es que hay varios lenguajes y frameworks por los que optar a la hora de desarrollar todo tipo de aplicaciones web, como pueden ser Ruby on Rails, Python, ASP… Cada uno tiene sus pros y sus contras, pero para el server-side más básico (conectarse a una base de datos, mostrar resultados etc.), PHP es una de las mejores opciones.

Una vez ganas algo de experiencia es recomendable jugar con otros lenguajes, ver de que va el tema, y ver cual de ellos se adapta más a lo que quieres hacer.

CONCLUSIÓN

Dicen que las opiniones son como los culos: todos tenemos uno y pensamos que el de los demás apesta. Pues con la programación pasa algo parecido.

tumblr_mwkmmjcxsT1t0317ho1_500Siempre habrá gente que se crea mejor que los demás por programar en un lenguaje más sofisticado, más complicado o de menor nivel, pero entre todos nosotros, independientemente del ámbito en el que programemos, hacemos que la tecnología funcione hoy en día.

A estas alturas, hay software hasta en lo menos esperado, y es gracias a nosotros, hacemos que eso sea posible.

Programa y deja programar.

Happy coding!