Nuevo libro sobre Curso de PHP 8 y MySQL 8

12/03/2022

Se publicó en 2021 el último libro sobre desarrollo de aplicaciones web con PHP. En concreto el libro de la colección Manuales Imprescindibles se titula: Curso de PHP 8 y MySQL 8 y los autores son Luis Miguel Cabezas Granado y Francisco José González Lozano.

Dejo a continuación el índice para saber los contenidos del libro y tener una idea general de los temas relacionados con la última versión de PHP 8.

ÍndiceCómo usar este libro

Estructura de la guía

Uso de los ejemplos

1. Introducción a PHP 8 y MySQL 8

1.1. Introducción

1.2. Instalación de PHP 8 y MySQL 8

1.3. git

1.4. Docker

1.5. Dockerfile

1.6. docker-compose

1.7. Visual Studio Code

1.8. MySQL Workbench

1.9. Resumen

1.10. Recomendaciones

2. Variables, tipos y constantes

2.1. Introducción

2.2. Variables

2.3. Tipos

2.3.1. Enteros (integer)

2.3.2. Número de coma flotante (float)

2.3.3. Cadena de caracteres (string)

2.3.4. Valores binarios (boolean)

2.3.5. Arrays

2.3.6. Objeto

2.3.7. Callable

2.3.8. Iterable

2.3.9. Valores nulos (NULL)

2.3.10. Recurso

2.3.11. Void

2.3.12. Unión

2.3.13. Mixed

2.4. Variables de variables

2.5. Funciones de variables

2.5.1. isset() y unset()

2.5.2. is_integer(), is_double(), is_string(), is_array()

2.5.3. intval(), floatval(), strval()

2.5.4. Funciones matemáticas de precisión arbitraria

2.6. Constantes

2.6.1. defined()

2.6.2. Constantes predefinidas

2.7. Resumen

3. Operadores

3.1. Introducción

3.2. Operadores de asignación

3.3. Operadores unarios

3.4. Operadores aritméticos

3.5. Operadores de comparación

3.6. Operadores lógicos

3.7. Operador ternario

3.8. Operadores bit a bit

3.9. Operadores de asignación combinados

3.10. Operador de ejecución

3.11. Operador de coalescencia nulo

3.12. Operador nave espacial

3.13. Precedencia de operadores

3.14. Resumen

4. Estructuras de control

4.1. Introducción

4.2. Estructuras de elección

4.2.1. if-else

4.2.2. Operador ternario

4.2.3. elseif

4.2.4. switch

4.2.5. match

4.3. Bucles

4.3.1. while

4.3.2. do-while

4.3.3. for

4.3.4. foreach

4.4. break y continue

4.5. Finalizar la ejecución de un programa

4.6. Sintaxis alternativa

4.7. Resumen

5. Funciones

5.1. Funciones

5.1.1. Valores de las funciones

5.1.2. Función para obtener la fecha

5.1.3. Documentación sobre funciones

5.1.4. Definir funciones propias

5.1.5. Ámbito de las variables

5.1.6. Argumentos por defecto

5.1.7. Argumentos variables

5.1.8. Argumentos con tipo definido

5.1.9. Funciones con tipo definido

5.1.10. Funciones anónimas

5.1.11. Recursividad

5.1.12. Organizar el código

5.2. Llamadas por valor

5.3. Llamadas por referencia

5.3.1. Referencia a variables

5.3.2. Funciones variables

5.4. Resumen

5.5. Recomendaciones

6. Cadenas de caracteres y expresiones regulares

6.1. Introducción

6.2. Propiedades de las cadenas

6.2.1. Índices de string

6.2.2. Operadores

6.2.3. Sintaxis para múltiples líneas

6.3. Funciones de string

6.3.1. Tamaño de la cadena

6.3.2. Posición de los caracteres

6.3.3. Conocer si existe el string

6.3.4. Chequeo del principio y final de una cadena

6.3.5. Comparación

6.3.6. Búsqueda de caracteres

6.3.7. Selección de subcadenas

6.3.8. Funciones de limpieza de cadenas

6.3.9. Sustitución de cadenas

6.3.10. Funciones de mayúsculas y minúsculas

6.4. Expresiones regulares

6.4.1. Comprobar expresiones regulares

6.4.2. Modificadores

6.4.3. Patrones de reemplazo

6.5. Resumen

6.6. Recomendaciones

7. Conjunto de datos tipo array

7.1. Introducción

7.2. Creación de arrays

7.2.1. Asignación directa

7.2.2. array()

7.2.3. list()

7.2.4. Funciones que devuelven arrays

7.3. Arrays multidimensionales

7.4. Propiedades de los arrays

7.4.1. count()

7.4.2. in_array()

7.4.3. Borrar ocurrencias

7.4.4. Interactuar con arrays

7.4.5. Funciones para avanzar en un array

7.4.6. Funciones para retroceder en un array

7.4.7. Intercambio de valores

7.4.8. Inversión del contenido

7.4.9. Mezcla de valores

7.5. Pilas

7.6. Ordenación de valores

7.7. Resumen

8. Formularios

8.1. Introducción

8.2. GET y POST

8.2.1. Arrays

8.3. Subir ficheros

8.4. Validación y saneamiento

8.4.1. Filtros de saneamiento

8.4.2. Filtros de validación

8.5. Resumen

9. PHP orientado a objetos

9.1. Introducción

9.2. Definición de clase

9.3. Instancia de clase

9.3.1. Constructor

9.3.2. Herencia

9.3.3. Redefinición de métodos

9.3.4. Valores y alcance de las variables

9.3.5. Miembros públicos, privados y protegidos

9.3.6. Propiedades y métodos privados

9.3.7. Propiedades y métodos protegidos

9.3.8. Propiedades y métodos públicos

9.3.9. Interfaces

9.3.10. Clases abstractas

9.3.11. Final

9.3.12. Clases con métodos estáticos

9.3.13. Llamadas a funciones padre

9.3.14. Clases anónimas

9.3.15. Rasgos

9.3.16. Fluent Interface

9.4. Promoción de las propiedades del constructor

9.5. Argumentos con nombre

9.6. Espacios de nombre

9.6.1. Carga automática de clases

9.7. Atributos

9.8. Métodos mágicos

9.8.1. __toString()

9.8.2. __set()

9.8.3. __get()

9.9. Serialización

9.10. Resumen

9.11. Recomendaciones

10. Código limpio y principios SOLID

10.1. Introducción

10.2. Código limpio

10.2.1. El código malo hace demasiadas cosas, el código limpio es enfocado

10.2.2. El lenguaje con el que se escribe el código debería parecer que fue hecho para resolver el problema

10.2.3. El código no debe ser redundante

10.2.4. Debe ser placentero leer el código

10.2.5. Puede ser extendido fácilmente por otro desarrollador

10.2.6. Debe tener dependencias mínimas

10.2.7. Cuanto más pequeño, mejor

10.2.8. Debe tener pruebas unitarias y de aceptación

10.2.9. Debe ser expresivo

10.3. Principios SOLID

10.3.1. Principio de responsabilidad única (SRP)

10.3.2. Principio abierto/cerrado (OCP)

10.3.3. Principio de sustitución de Liskov (LSP)

10.3.4. Principio de segregación de interfaz (ISP)

10.3.5. Principio de inversión de dependencias (DIP)

10.4. Resumen

10.5. Recomendaciones

11. Patrones de diseño

11.1. Introducción

11.2. Patrones de creación

11.2.1. Patrón de creación Singleton

11.2.2. Patrón de creación Factory Method

11.2.3. Patrón de comportamiento Observer

11.2.4. Patrón estructural Decorator

11.3. Resumen

11.4. Recomendaciones

12. MySQL básico

12.1. ¿Qué es MySQL?

12.2. MySQL Workbench

12.3. Manejar esquemas

12.4. Tipos de datos

12.5. Tablas

12.5.1. Crear una tabla

12.5.2. Crear registros

12.5.3. Actualizar y eliminar registros

12.6. Relaciones

12.7. Conclusión

13. Índices y consultas

13.1. Índices

13.1.1. Crear un índice

13.1.2. Claves primarias

13.1.3. Índice FULLTEXT

13.2. Consultar una base de datos MySQL

13.2.1. SELECT

13.2.2. SELECT COUNT

13.2.3. SELECT DISTINCT

13.2.4. DELETE

13.2.5. WHERE

13.2.6. LIMIT

13.2.7. MATCH AGAINST

13.2.8. UPDATE

13.2.9. ORDER BY

13.2.10. GROUP BY

13.3. Cruzar tablas

13.3.1. NATURAL JOIN

13.3.2. JOIN ON

13.3.3. Usar AS

13.4. Operadores lógicos

13.5. Funciones MySQL

13.5.1. CONCAT

13.5.2. CONCAT_WS

13.5.3. LENGTH

13.5.4. LOWER y UPPER

13.5.5. REPLACE

13.5.6. TRIM

13.5.7. CURDATE

13.5.8. DATE_FORMAT

13.5.9. DAY, MONTH y YEAR

13.6. Resumen

14. Normalización y transacciones

14.1. Introducción

14.1.1. Claves primarias

14.2. Normalización

14.2.1. Primera forma normal

14.2.2. Segunda forma normal

14.2.3. Tercera forma normal

14.2.4. Cuándo no usar normalización

14.3. Relaciones

14.3.1. Uno-a-uno

14.3.2. Uno-a-muchos

14.3.3. Muchos-a-muchos

14.4. Transacciones

14.4.1. Motores de almacenamiento de transacciones

14.4.2. Usar BEGIN

14.4.3. Usar COMMIT

14.4.4. Usar ROLLBACK

14.5. Resumen

15. CRUD de PHP con MySQL

15.1. Introducción

15.2. Extensiones MySQL

15.3. Conexión a MySQL

15.4. Consultar datos

15.4.1. Acceso a todos los registros

15.4.2. Configuración

15.4.3. Routing

15.4.4. Diseño limpio

15.4.5. Mostrar el resultado de la consulta

15.5. Manipulación de datos

15.5.1. Insertar una fila

15.5.2. Modificar una fila

15.5.3. Borrar una fila

15.6. Contar filas

15.6.1. Usar PHP

15.6.2. Usar la extensión Mysqli

15.6.3. Último número insertado

15.7. Resumen

16. Testing

16.1. Introducción

16.2. Test unitarios

16.3. PHPUnit

16.3.1. Composer

16.3.2. Primeras pruebas

16.3.3. Patrón AAA

16.3.4. Fixtures

16.4. Dobles de prueba

16.5. Unit Test are FIRST

16.5.1. Fast (Rápido)

16.5.2. Isolated (Independiente)

16.5.3. Repeateable (Repetible)

16.5.4. Selfverifying (Autoverificable)

16.5.5. Timely (Oportuno)

16.6. TDD: Test-Driven Development (Desarrollo guiado por pruebas)

16.7. Cobertura

16.8. Resumen

17. React

17.1. Introducción

17.2. Primeros pasos

17.3. Componentes

17.3.1. Crear un nuevo componente

17.3.2. Propiedades de los componentes

17.4. Estado del componente

17.5. Efectos

17.5.1. Recorrer las noticias con map

17.5.2. Cargando…

17.6. Resumen

17.7. Recomendaciones

18. Laravel 8

18.1. Introducción

18.2. Primeros pasos con Laravel 8

18.2.1. Integración con React

18.2.2. Rutas

18.2.3. Controladores

18.3. Plantillas con Blade

18.3.1. Componentes iniciales

18.4. Creación del modelo

18.5. Creación de las rutas

18.6. CRUD con Laravel

18.6.1. CREATE. Creación de registros

18.6.2. Creación de registro en la API

18.6.3. LIST. Listado de los registros

18.6.4. DELETE. Borrar un usuario

18.6.5. Enlaces del menú

18.6.6. Mensajes de alerta

18.6.7. EDIT. Editar un usuario

18.7. Resumen

18.8. Recomendaciones

Índice alfabético

Toda la información en la web del libro.

Deja una respuesta

Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *

Este sitio usa Akismet para reducir el spam. Aprende cómo se procesan los datos de tus comentarios.