Hola, soy Tammy Alemu. Déjame guiarte a través de mi emocionante viaje como pasante de Laravel. Mi objetivo era adquirir experiencia en la industria, escribir código legible y comprender el marco en profundidad. Así es como sucedió todo, con los desafíos que enfrenté y las soluciones que encontré en el camino.
Durante mi pasantía, tenía tres objetivos principales:
Experiencia en la industria: obtenga experiencia práctica en un entorno profesional.
Código legible: escriba código limpio, fácil de mantener y legible.
Comprensión del marco: Desarrollar una comprensión profunda del marco de Laravel.
Mi viaje comenzó con la configuración del entorno de desarrollo. Antes de esta pasantía, interactué con el backend usando una arquitectura frontend, ya sea a través de vistas Blade o JavaScript incluido con Vite. Entonces, realmente no vi la necesidad de configurar CORS y todo eso. Luego me presentaron a Postman — ¡guau, qué cambio de juego!
Cartero
Postman me ayudó a configurar y editar solicitudes HTTP, pasar parámetros y valores, y administrar autenticación y tokens de portador. Esto amplió mi comprensión de la estructura del backend y cómo funciona. Ver los datos en su forma original y manipularlos directamente fue revelador. Me di cuenta de que las operaciones backend aparentemente complejas eran más sencillas de lo que pensaba inicialmente.
Compositor
Composer fue otra herramienta esencial. Lo usé para instalar paquetes y seguí estrictamente los estándares de formato PHP PSR-4. Cuando digo estrictamente, ¡lo digo en serio! Ja ja. Me encontré con errores cuando no seguí los estándares, como generar documentación y darme cuenta de que tenía errores en los espacios de nombres debido a espacios adicionales o convenciones de nomenclatura incorrectas para modelos y tablas.
La configuración del proyecto implicó varios pasos clave:
Gestión de repositorios
Clonar repositorios y configurar mi entorno fue bastante abrumador al principio — jaja, ¡qué viaje! Me presentaron scribe:generate, un paquete que genera documentación. Al principio pensé: “¡¿Qué?!” Ejecutar sembradores de clases específicas fue otro desafío. No entendí su propósito en comparación con los sembradores normales hasta que me di cuenta de que php artisan db:seed --class=...Seeder ejecuta una clase de sembrador específica directamente, útil para sembrar tablas o conjuntos de datos específicos de forma individual.
Manejo de modelos y datos
Resalté los parámetros necesarios al agregar nuevos atributos a los modelos y tipos de datos específicos. Familiarizarme con la serialización de datos y la transformación para formatear las respuestas fue crucial. También aprendí a usar inclusiones e inclusiones predeterminadas para formatear datos específicos e inclusiones analizadas para agregar datos a las respuestas.
Carga ansiosa
La carga ansiosa fue una de las cosas hermosas que aprendí. En lugar de carga diferida, donde se ejecuta una nueva consulta SQL dentro de un bucle, la carga ansiosa realiza una única consulta para cargar todos los datos necesarios. El asistente with se volvió vital para realizar consultas eficientes en la base de datos, esto me hizo buscar hermosos asistentes disponibles en Laravel, ¡qué diferencia hizo!
Ámbitos de consulta y constructores
Utilicé alcances de consulta disponibles para el controlador para recuperar datos antes de transformarlos. Los creadores de consultas también se convirtieron en mi opción para optimizar la recuperación de datos.
Controladores
Los controladores manejan la lógica básica para varios tipos de solicitudes (GET, POST, UPDATE). Aprendí a escribir puntos finales y comentar claramente para la documentación de Scribe. El uso de acciones para extraer código reutilizable en diferentes controladores aseguró una estructura de código limpia. La implementación de métodos try-catch al trabajar con la base de datos fue otra lección valiosa.
Puntos de vista
Aunque no se utilizaron ampliamente, las vistas se utilizaron principalmente para dar formato a las respuestas de correo.
Desarrollo de API
Aprendí a diseñar e implementar API siguiendo los principios RESTful y las probé usando las herramientas de registro integradas de Laravel y Postman.
Este conocimiento me impulsa a crear y trabajar con la socialité de Laravel, integrando la autenticación de Google para iniciar sesión y el uso de Laravel sanctum, en vivo en mi perfil de GitHub.
Desafíos
Comprender el código base fue inicialmente difícil, especialmente porque no había rutas de recolección disponibles en Postman. Tuve que construirlos y comprender la estructura, lo que a veces requería parámetros adicionales y ralentizaba mi proceso de desarrollo.
Mis conocimientos básicos superficiales de PHP también afectaron mi progreso, lo que me llevó a dedicar más tiempo a las tareas.
Soluciones
Para superar estos desafíos, me concentré en aprender los fundamentos y practiqué trabajando en una rama separada además de mis tareas asignadas. Profundicé en la comprensión de PHP y busqué recursos como “Programación con GIO”, “PHP de la manera correcta” y Laracasts . ¡Los recomiendo ampliamente!
Está bien no memorizar la sintaxis. Jaja, para casos como este siempre me refería a la documentación. Leer documentos amplía tu comprensión de un tema en particular.
En general, mi experiencia trabajando con el equipo ha sido excelente. Además de ser un puesto remunerado, ofrecían ayuda para comprender y crear aplicaciones. El equipo con el que trabajo explica las tareas que pretendo lograr y da respuestas rápidas a la hora de atender los desafíos que enfrento.
Descargo de responsabilidad: Todos los recursos proporcionados provienen en parte de Internet. Si existe alguna infracción de sus derechos de autor u otros derechos e intereses, explique los motivos detallados y proporcione pruebas de los derechos de autor o derechos e intereses y luego envíelos al correo electrónico: [email protected]. Lo manejaremos por usted lo antes posible.
Copyright© 2022 湘ICP备2022001581号-3