@@ -0,0 +1,12 @@ | |||||
# Presentación | |||||
La gran cantidad de informacion que se genera atravez de sistemas ya sean de la iniciativa publica o privada hace imperante la necesidad de personas que posean los conocimientos y las habilidad necesarias para explotar la informacion de manera eficiente y óptima, esto mediante los conceptos y las cracterísticas avanzadas del lenguaje estructurado de consultas ANSI SQL. | |||||
## Objetivos | |||||
El participante utilizará las caracteristicas avanzadas del ANSI SQL para la consulta de información, asi como la automatización y la optimización de procesos por medio del desarrollo de las tecnicas avanzadas de sql. | |||||
## Beneficios | |||||
El participante del curso será capaz de optimizar y diseñar consultas de información en forma mas eficiente y con gran nivel de indepenencia del gestor de base de datos que utilize. | |||||
@@ -0,0 +1,20 @@ | |||||
# Instalación | |||||
Para que podamos trabajar en este curso y debido a que quizas en el equipo que van trabajar no tengan previamente instalado un ambiente de desarrollo. | |||||
- Instalaremos laragon | |||||
https://laragon.org/download/index.html | |||||
- Escribiremos codigo en php 8.0 | |||||
https://windows.php.net/download#php-8.0 | |||||
- El codigo que escribamos lo haremos usando | |||||
https://code.visualstudio.com/Download | |||||
- Para que trabajemos los ejemplos y la base de datos | |||||
https://dbeaver.io/download/ | |||||
-- Establecer la conexion con la base de datos usando dbeaver | |||||
En todos los casos esto es software sugerido pero se podra usar cualquier variante con la cual el integrante al curso se sienta comodo | |||||
@@ -0,0 +1,24 @@ | |||||
# USAR ORM o SQL | |||||
Niveles de abstraccion | |||||
PDO -> DBAL (Database Abstraction Layer) Query Builder -> ORM (Object–relational mapping) Eloquent | |||||
Observabilidad es la capacidad de inferir las condiciones internas de un sistema en función de las salidas externas del sistema. | |||||
Orm permite despreocuparse de la serializacion y deserializacion de los datos. (CRUD) | |||||
Sql permite obtension de datos especificos con querys pesadas o por optimizacion de las mismas. (Reportes y metadatos) | |||||
Hablar sobre lazyload y eagerload | |||||
Esto se llama carga diferida porque, como una persona holgazana, estás postergando hacer algo que no quieres. Lo opuesto es la carga ansiosa, donde carga algo de inmediato, mucho antes de que lo necesite. | |||||
Si tiene curiosidad por saber por qué las personas pueden usar la carga diferida, considere una aplicación que tarde MUCHO tiempo en iniciarse. Esta aplicación probablemente esté cargando mucho ... cargando cosas desde el disco y haciendo cálculos y todo eso mucho antes de que sea necesario. | |||||
Compare esto con la carga diferida, la aplicación se iniciaría mucho más rápido, pero la primera vez que necesite hacer algo que requiera una carga de ejecución prolongada, puede haber una pequeña pausa mientras se carga por primera vez. Por lo tanto, con la carga diferida, está amortizando el tiempo de carga durante el transcurso de la ejecución de su aplicación ... y, de hecho, puede evitar cargar cosas que el usuario quizás nunca tenga la intención de usar. | |||||
Hablar sobre inyeccciones Sql que es una de las cosas que ganamos al usar orm sobre sql | |||||
Benchmark https://www.laraveltip.com/que-es-mejor-eloquent-query-builder-o-sql/ | |||||
En definitiva, todo tiene que ver con lo que estemos desarrollando y el alcance que tenga nuestro proyecto o la parte del software que estemos desarrollando. | |||||
Con SQL ganamos velocidad y tenemos un menor consumo de recursos pero perdemos seguridad y manejo de eventos. | |||||
Con Query Builder ganamos velocidad (no tanta como SQL plano), seguridad y tenemos abstracción de base de datos. Pero perdemos el manejo de eventos. | |||||
Y con Eloquent tenemos disponible abstracción de base de datos, seguridad y manejos de eventos. Pero su consumo y velocidad son peores que las dos anteriores. |
@@ -0,0 +1,12 @@ | |||||
# José Armando Ceballos Vargas | |||||
- Soy programador y me especializo en la arquitectura de software. | |||||
- CTO de CodigoBit, empresa dedicada al desarrollo de aplicaciones web y móviles. | |||||
- Jefe del departamento de TI en el Honorable Ayuntamiento de Candelaria. | |||||
- Estoy clasificado como el segundo mejor programador de php en México de acuerdo a PHPClasses. | |||||
- Soy un entusiasta del software libre en especial de Linux no solo en el ámbito empresarial sino también como usuario. | |||||
- La seguridad informática no la considero una pasión si no un dogma, después de muchos años de desarrollo es un tema que domino y me tomo en serio. | |||||
## Contacto | |||||
Correo: armando @ codigobit.com.mx | |||||