Cuál es la diferencia entre SQL y MySQL

Cuál es la diferencia entre SQL y MySQL

Misceláneos
Vi esta pregunta en un grupo de Facebook: Y me llamó mucho la atención... claramente este amigo está bastante confundido y, como imagino que debe haber otros preguntándose lo mismo (o algo similar), me parece que vale la pena aclarar un poco los tantos :) Qué es SQL SQL es un lenguaje de programación diseñado especialmente para trabajar con bases de datos relacionales. Las siglas SQL significan Structured Query Language (Lenguaje estructurado de consultas). Una aclaración importante: la palabra "consulta" en español es sinónimo de pregunta o cuestionamiento... en el caso de las bases de datos (las relacionales al menos), cualquier operación (alta, baja, modificación o lectura) se denomina consulta. El lenguaje SQL fue inventado alrededor de la década de 1970 (algo que, en informática, es prácticamente la pre-historia) para trabajar…
Leer más
¿Es posible hostear una aplicación PHP en Windows?

¿Es posible hostear una aplicación PHP en Windows?

Misceláneos
Un amigo me contactó por un problema que estaba enfrentando su equipo técnico: están desarrollando una aplicación PHP que necesitan hostear sí o sí en un servidor Windows. Actualmente tienen un IIS montado en su servidor y la duda era, primero si era posible servir PHP desde IIS o si era necesario usar un servidor Apache y, en tal caso, si era necesario compilarlo desde 0 (Algo que estaba fuera del alcance de dicho equipo). Mi primera impresión ante esta situación fue de sorpresa. Ciertamente, Windows no sería mi elección en cuanto a servidor (En general prefiero mantenerme alejado de Windows, pero especialmente para el caso de servidores soy bastante estricto). Yo optaría por alguna distribución de linux (Probablemente basada en Debian como para hacer las cosas sencillas, pero en DistroWatch siempre…
Leer más
¿Usar un framework perjudica el SEO?

¿Usar un framework perjudica el SEO?

Misceláneos
Ah... el SEO... ese arte indómito de la web :). Mucho se habla de SEO (Search Engine Optimization) y muy poco es lo que realmente se sabe. Sin ser un experto en la materia (de hecho, como buen desarrollador, muy lejos estoy de serlo :p), tengo mis opiniones al respecto. Más allá de qué es el SEO o mejor dicho, cómo operar en favor del SEO de un sitio, todo el mundo sabe que el SEO es algo bueno y, por lo tanto, cualquier cosa que lo perjudique es algo malo, ¿cierto?... No tan rápido :). El SEO forma parte de una estrategia de adquisición de tráfico, un tema de Marketing Online que, dado que este no es un espacio para discutir sobre Marketing Online, está fuera de alcance. A lo…
Leer más
Qué aplicaciones se pueden crear con PHP

Qué aplicaciones se pueden crear con PHP

Misceláneos
Por si tenés poco tiempo: cualquier tipo de aplicación. Listo, sos libre :) ¿Cómo? ¿Querés más detalles?... ok, por ser vos... PHP para la creación de aplicaciones web El uso más conocido de PHP es para crear aplicaciones web (¡vamos, que para eso se creó el lenguaje!), ya se trate de blogs, Intranets, tiendas virtuales (e-commerce), plataformas de educación a distancia (e-learning), sitios de noticias o... lo que tu imaginación permita! Claro que, en cualquiera de estos ejemplos, PHP no está solo... usualmente se complementa con HTML, JavaScript, CSS, etc... En estos casos, PHP suele usarse como apéndice para extender las funcionalidades de un servidor web (Por ejemplo Apache o NginX), de modo de permitir la creación de páginas dinámicas (En lugar de mostrarle a todos los visitantes lo mismo, se le da…
Leer más
¿Una clase abstracta siempre tiene que tener un método abstracto?

¿Una clase abstracta siempre tiene que tener un método abstracto?

Misceláneos
Respuesta corta: NO (Al menos en PHP). ¿Querés los detalles? Seguí leyendo... Esta pregunta surgió en una clase de POO y me pareció interesante compartir la respuesta ya que no es realmente trivial. El ejemplo que estábamos viendo era el siguiente: Teníamos un sistema que manejaba clientes, con lo cual, contaba con una clase Cliente: class Cliente { private $nombre; private $apellido; private $cuit; private $email; public function __construct( $nombre, $apellido, $cuit, $email ) { $this->setNombre($nombre); ... } public function setNombre( $nombre ) { $this->nombre = $nombre; } ... } Pronto vimos la necesidad de especializar esta clase en tres subclases diferentes: class PYME extends Cliente { } class PersonaFisica extends Cliente { } class Multinacional extends Cliente { } Dado que los requerimientos del sistema quedaron más claros y era…
Leer más
Cuál es el mejor IDE para PHP

Cuál es el mejor IDE para PHP

Misceláneos
Si llevás algo de tiempo trabajando con PHP, te habrás dado cuenta de que ni notepad ni vim ni nada que se le parezca es suficientemente bueno como para que desarrollar aplicaciones sea una tarea amena. Para alcanzar un buen nivel de eficiencia se necesitan herramientas específicas que nos simplifiquen (un poco) la vida. En el caso de la programación, lo que más va a modificar tu día a día es el uso (o falta de uso) de un Entorno Integrado de Desarrollo (IDE en Inglés). Existen muchas opciones cuando se trata de PHP, sin embargo, hay unos pocos que son los estándares de la industria. Veamos algunos: Eclipse para PHP En realidad no se trata de un producto específico, si no de un plugin para el ya conocido Eclipse (El…
Leer más
Cuál es la diferencia entre isset() y empty()

Cuál es la diferencia entre isset() y empty()

Misceláneos
Empiezo por las formalidades: Ambas son funciones del lenguaje. isset informa si un identificador (el nombre de una variable) está definido o no dentro del hilo de ejecución actual (Muy importante entender esto, no se trata de que haya sido definido dentro del archivo actual). empty indica si el valor asociado a un identificador es o no vacío (La definición de vacío de PHP tiene sus peculiaridades como te voy a mostrar más adelante). Veamos algunos ejemplos para aclarar el punto: $a = 0; if (empty($a)) { echo 'empty'.PHP_EOL; } if (isset($a)) { echo 'isset'.PHP_EOL; } Este código dará como salida: empty isset Si se lo ejecuta desde la línea de comandos. Este otro if (isset($a)) { echo 'isset'.PHP_EOL; } $a = 0; if (empty($a)) { echo 'empty'.PHP_EOL; } Mostrará…
Leer más