Successfully reported this slideshow.
We use your LinkedIn profile and activity data to personalize ads and to show you more relevant ads. You can change your ad preferences anytime.

Webinar - Radiografía actual del lenguaje PHP

357 views

Published on

Presentación del webinar Radiografía actual del lenguaje PHP, en el que hemos repasado la evolución de PHP y explicamos de forma práctica los primeros pasos y las buenas prácticas con este lenguaje de cara al Desarrollo Web.

El vídeo íntegro del webinar está disponible en nuestro perfil en YouTube: https://www.youtube.com/Arsys

Más información sobre los webinars de Arsys en https://www.arsys.es/blog/

Published in: Internet
  • Be the first to comment

  • Be the first to like this

Webinar - Radiografía actual del lenguaje PHP

  1. 1. Miguel Angel Alvarez PHP: el enfoque correcto @midesweb @EscuelaIT
  2. 2. Qué veremos hoy ▪ Índice o Qué es PHP • Iniciarse con PHP o Evolución de PHP o Por qué PHP tiene "mala fama" • Actualización • Seguridad • Malas prácticas o PHP: el enfoque correcto
  3. 3. Qué es PHP
  4. 4. Qué es PHP PHP es un lenguaje de programación específico para la realización de páginas y aplicaciones web, del lado del servidor. Lenguaje de programación web del lado del servidor https://arsys.es
  5. 5. Qué es PHP PHP es un lenguaje de programación específico para la realización de páginas y aplicaciones web, del lado del servidor. Lenguaje de programación web del lado del servidor https://arsys.es
  6. 6. Qué es PHP PHP es un lenguaje de programación específico para la realización de páginas y aplicaciones web, del lado del servidor. Lenguaje de programación web del lado del servidor https://arsys.es
  7. 7. Qué es PHP Backend / frontend Front-end: El desarrollo con los lenguajes que se ejecutan del lado del cliente Back-end: El desarrollo con los lenguajes que se ejecutan del lado del servidor.
  8. 8. Qué es PHP Ventajas de PHP ● Es sencillo de usar y aprender ● Amplio soporte en proveedores de alojamiento ● Software popular ○ WordPress ○ Woocommerce ○ Prestashop ○ Magento ○ Joomla! ○ Drupal ○ Laravel ○ Symfony ● Gran comunidad
  9. 9. Qué es PHP Ventajas de PHP ● Es sencillo de usar y aprender ● Amplio soporte ● Software popular ○ WordPress ○ Woocommerce ○ Prestashop ○ Magento ○ Joomla! ○ Drupal ○ Laravel ○ Symfony ● Gran comunidad https://w3techs.com/technologies/details/pl-php/all/all
  10. 10. Primeros pasos con PHP Para trabajar con PHP necesitamos instalar en local una serie de programas: - Un servidor web (Apache / Nginx) - El módulo de soporte de PHP - Generalmente una base de datos (MySQL / MariaDB) Instalar PHP en local Mamp Laragon https://www.apachefriends.org/es/index.html https://laragon.org/ https://www.mamp.info/en/
  11. 11. Primeros pasos con PHP Interfaz de Xampp http://localhost
  12. 12. Evolución de PHP
  13. 13. Evolución de PHP - 1994: "Personal Home Page/Forms Interpreter" or PHP/FI. - 1998: PHP 3 "PHP: Hypertext Preprocessor" - 2000: PHP 4 *Powered Zend Engine (sin soporte desde 2008) - 2004: PHP 5 alcanza su madurez. Soporte "serio" para orientación a objetos, PDO. Soporte oficial finalizó en diciembre 2018 - 2015: PHP 7 Aumento considerable del rendimiento. Manejo de tipos. Versiones de PHP
  14. 14. Evolución de PHP Rendimiento de PHP https://docs.observium.org/tuning/
  15. 15. "Mala fama"
  16. 16. "Mala fama" Lenguaje primitivo Es cierto que las primeras versiones de PHP no tenían muchas de las características que se supone deseables en lenguajes avanzados. - En PHP 5 se consiguió una orientación a objetos a la altura de lenguajes de primer nivel. - Herencia, traits, interfaces - Autoload de clases - Type hinting - Namespaces… - Las mejoras continuaron en PHP 7
  17. 17. "Mala fama" Rendimiento Se dice que PHP es un lenguaje más lento que otras alternativas para backend. - En PHP 7 esta situación cambia y se pone a la altura de otros lenguajes Cada lenguaje es bueno en su parcela
  18. 18. "Mala fama" ¿Algún motivo real? Si PHP es un lenguaje avanzado y capaz de ofrecer un rendimiento apropiado para la mayoría de las aplicaciones web. ¿Por qué continúa teniendo mala fama?
  19. 19. "Mala fama" Malas prácticas PHP es un lenguaje donde es fácil caer en malas prácticas. - Los primeros pasos al aprender a programar en PHP consisten en colocar el código PHP embebido en el código HTML. - No es fácil encontrar una arquitectura de aplicación clara - Dependencia con la base de datos y un API de funciones demasiado permisivo - Configuraciones predeterminadas de PHP en versiones antiguas dan pie a posibles brechas de seguridad
  20. 20. "Mala fama" Comunidad Los problemas que actualmente podemos achacar a PHP en realidad son debidos a la comunidad de desarrolladores (una parte), que no son capaces de hacer un buen uso del lenguaje. - Código spaghetti - Aplicaciones poco mantenibles - Baja escalabilidad - Compleja portabilidad - Aplicaciones inseguras por programación deficiente - Aplicaciones inseguras por no actualizar los sistemas
  21. 21. "Mala fama" Seguridad del software libre PHP y las aplicaciones de software libre en general deben ser actualizadas constantemente, para evitar el uso de versiones con vulnerabilidades conocidas. - Actualizar a PHP 7 - Actualizar Linux, Apache, Nginx... - Actualizar las librerías que se usan(Composer) - Actualizar los CMS / Frameworks - WordPress - Joomla! - ...
  22. 22. Enfoque correcto
  23. 23. Enfoque correcto Actualizar a PHP 7 Se hace necesario actualizar a PHP 7. - Mejora del rendimiento - Seguridad! El trabajo para migrar desde PHP 5 a PHP 7 consiste en elimina funcionalidades marcadas como obsoletas. Estas funcionalidades venían siendo advertidas ya en versiones de PHP 5 avanzadas. 1) Cambiar la versión de PHP en el servidor de desarrollo 2) Realizar los cambios oportunos https://www.php.net/manual/es/migration70.php 3) Subir al servidor
  24. 24. Enfoque correcto Actualizar a PHP 7 - MySQL El cambio más relevante es el fin de soporte de la extensión ext/mysql en PHP 7.0 Se debe migrar a la extensión ext/mysqli o PDO. Elegir un API para MySQL: https://www.php.net/manual/es/mysqlinfo.api.choosing.php Aprovechar las sentencias preparadas https://php.net/manual/es/mysqli.quickstart.prepared-statements.php
  25. 25. Enfoque correcto Actualizar a PHP 7: Rector Rector es un analizador de código que permite alterar automáticamente, transformándolo según nuestras necesidades: https://github.com/rectorphp/rector composer require rector/rector --dev (https://getcomposer.org) Una vez instalado podemos ver los distintos niveles de trabajo con: vendor/bin/rector levels Podemos cambiar las extensiones de MySQL a MySQLi mediante el comando: * Usa Git para revisar las versiones del código vendor/bin/rector process public --level mysql-to-mysqli
  26. 26. Enfoque correcto PHP The Right Way Es un completo sitio dedicado a las buenas prácticas en PHP. Podemos obtener muchas recomendaciones y guías para desarrollar proyectos de mayor calidad. https://phptherightway.com/ Recomendaciones para estudio - Composer & Packagist - Namespaces - PDO / Sentencias preparadas en MySQLi - Sistemas de templates - Seguridad - Virtualización
  27. 27. Enfoque correcto Frameworks Por supuesto, el uso de frameworks PHP nos ofrece una base de código robusta, segura y escalable para el desarrollo de aplicaciones web. Laravel https://laravel.com/ Symfony https://symfony.com/
  28. 28. Gracias Miguel Angel Alvarez insight@insightcreativos.com 649 76 76 31 @midesweb

×