Muy buena metodolog铆a, excelente profesor, aunque en algunas ocasiones me hubiera gustado la clase con una especie de texto gu铆a o con informaci贸n adicional sobre lo que se estaba ense帽ando.
Introducci贸n
Qu茅 aprender谩s sobre la creaci贸n de APIs con Ruby on Rails
Configuraci贸n
Proyecto
C贸mo crear un proyecto con RoR
Instalaci贸n de gemas necesarias
Configurar rspec + factorybot
Hello world (health endpoint)
Casos de uso para nuestra aplicaci贸n
Planeando nuestro modelo entidad relaci贸n
Crear modelos y validaciones + tests
Implementaci贸n de los modelos usando TDD
Listar y mostrar Post: pruebas
Listar y mostrar Post: implementaci贸n
Crear y editar POST: pruebas
Crear y editar POST: implementaci贸n
Usando ActiveModelSerializer
Filtrar posts - pruebas
Filtrar posts - implementacion
N+1 query problem: explicacion te贸rica
N+1 query problem: soluci贸n
Introducci贸n a la autenticaci贸n con Tokens
Autenticaci贸n: pruebas del endpoint de detalle (/posts/{id})
Autenticaci贸n: generacio de auth token para el usuario
Autenticaci贸n: agregando autenticacion al controlador de Post
Autenticaci贸n: l贸gica de update, delete y create del controlador de blogposts
Autenticaci贸n: Finalizando pruebas de creaci贸n y actualizaci贸n de blogposts
Probando el API con Postman
Explicaci贸n de Caching
Usando Cache para acelerar las b煤squedas de posts
Background jobs y ActiveJob (explicaci贸n te贸rica)
Generar Reporte para procesar con ActiveJob
Enviar Reporte usando ActionMailer
Autenticacion con auth0 y JWT
Cierre
Cierre del curso
You don't have access to this class
Keep learning! Join and start boosting your career
Creating an API from scratch with Rails involves not only the technical knowledge of how to structure and develop it, but also the incorporation of programming best practices. In this course, you were not only introduced to the basic creation of an API, but also adopted tools and methodologies that encourage solid, quality development.
Test-Driven Development (TDD) is a methodology that guides development through testing. By employing TDD, you can anticipate scenarios and possible failures before they occur in the production environment.
These are vital libraries for Ruby on Rails development.
RSpec: It is a test environment that allows to write readable and maintainable tests. Styled in natural language, it makes it easy to understand what each test does.
FactoryBot: Tool used for test configuration, it helps to build objects that meet the conditions and expectations of your tests, saving time and minimizing errors.
The n+1 query problem can significantly degrade the performance of your applications by generating too many database queries. This course addresses techniques to:
includes
and joins
in ActiveRecord to optimize queries.These solutions allow you to improve the efficiency and response time of your API.
Rails not only provides a basic framework for creating APIs; it also offers advanced features to improve their performance and adaptability.
Caching is a key technique to improve the performance of an API by reducing the load on the database and improving response time. You learned how to:
Background jobs allow you to run processes or tasks that do not require user intervention immediately, separating them from the usual HTTP request lifecycle. With Rails, you can:
ActiveJob
.ActionMailer in Rails is a powerful tool for sending emails. With a simple configuration, you can create complex notification actions and direct communication with your users.
Congratulations on completing this learning journey! You have acquired a broad set of skills to develop robust and efficient APIs with Rails. Keep practicing and applying what you've learned, the path to Rails mastery is exciting and full of opportunities.
Contributions 16
Questions 1
Muy buena metodolog铆a, excelente profesor, aunque en algunas ocasiones me hubiera gustado la clase con una especie de texto gu铆a o con informaci贸n adicional sobre lo que se estaba ense帽ando.
Increible profesor, explico muy bien los temas ademas que se nota que tiene un conocimiento realmente profundo de la tecnologia, mas cursos con el de ser posible =)
Muy buen curso, teorico - practico y con buenos fundamentos. Me agrado la metodologia de explicar algunas cosa con graficos.
Excelente profesor, simon explica muy bien y excelente que agregaran cosas como los Mailer y los Jobs
muy buen curso!!
Aplicando
馃槂 voy a ha hacer mi granja de apps
Muy bien para refrescar conocimientos
Que buen curso, aprendi cosas nuevas y adicional potencie otras. Esos 煤ltimos caps de autenticaci贸n estuvieron buenos, me gustar铆a que los extendieran.
Me gusto mucho, excelente curso!!
Hola a todo el curso estuvo muy interesante y completo para empezar en este mundo de Ruby, me gustaria saber ahora para complementar el blog agregando el front end, que framework me sugieren usar que trabaje bien con rails, yo he pensado en React.js, es posible?o cual se acopla mas con Ruby on Rails?
Tuve problemas en los tests por una configuraci贸n no mencionada en las clases, tuve que hacer un research y encontr茅 el problema. Adicionalmente, tuve problemas con la parte del mailer al momento de ejecutar PostReportMailer este no era reconocido por la consola de rails, al final, tuve que inicializar primero ApplicationMailer en la consola y luego invocar la clase PostReportMailer , esta debe estar dentro del archivo application_mailer.rb como otra clase. Por alg煤n motivo hay que inicializar siempre ApplicationMailer en la consola para que la otra clase funcione y sea reconocida, por alg煤n otro motivo no funciona colocando la clase en otro archivo dentro de la carpeta mailers. Por todo lo dem谩s me gust贸 el curso y Rubi (que es muy parecido a Python) es muy descriptivo el c贸digo lo cual lo hace una delicia.
Excelente curso!! altamente recomentado
Excelente curso, el profesor explica muy bien y los temas han sido muy interesantes y 煤tiles. Fue un reto solucionar los errores que iban surguiendo en la construcci贸n de la API. Muchas gracias!
Buena Introduccion de API con rails, me hubiera gustado ver el manejo de archivos.
隆Gran maestro!
Gran curso, me haya gustado tener la ultma parte en video pero pude seguir todo sin problema.
Want to see more contributions, questions and answers from the community?