bom pessoal seguinte espero que eu tenha conseguido a comunicar e falar da importância que o sistema design é a ele trouxe aí pra gente mas o grande ponto que a gente vai falar aqui é basta fazer desenho pra gente ter o sistema design obviamente já falei isso no passado mas é como eu mesmo disse vamos tentar justificar isso o seguinte tá não como assim não Não. Como assim não, Wesley? Olha só que interessante. Quando você vai trabalhar com System Design, você vai ter algumas técnicas e algumas metodologias que vão te ajudar a chegar lá, legal? E eu gosto normalmente de falar sobre seis elementos que são importantíssimos na hora que você vai pensar em System Design. que são importantíssimos na hora que você vai pensar em sistema de design. Primeira coisa que você vai ter que fazer na hora de começar com o sistema de design. Requisitos. Galera, às vezes você está num processo seletivo, às vezes seu chefe pede um negócio para você, você já sai fazendo, mas você nem fez as perguntas corretas para realmente entender o porquê que aquilo está sendo criado. A maioria dos desenvolvedores hoje em dia, que são escrevedores, vou até falar assim, os caras que só programam, o que eles fazem? Recebem a ordem e executam. Eles não tentam entender os requisitos e o porquê que as coisas estão funcionando daquela forma então a primeira coisa que você vai ter que entender realmente essa parte de requisitos depois disso você vai ter que fazer um plano de capacidade tem uma estimativa de capacidade como assim né a quantos request eu vou ter quantas compras eu vou ter, quantas visitas por dia eu vou ter, eu vou ter pico de acessos? Qual vai ser a minha média de requisição? Quanto eu vou ter que gastar em disco? Quantos requests por segundo? Qual é o meu throughput? Então, esses tipos de coisas são extremamente importantes para, inclusive, inclusive definir infraestrutura e definir a estratégia desde tecnologias linguagens de programação que eu vou utilizar ok outra coisa modelagem de dados e quando falo modelagem a de dados não tô falando pra você criar a estrutura inteira de um banco de dados. Mas você, pelo menos, conseguir especificar quais são as principais relações que você tem ali na hora que você está trabalhando com determinados dados. Inclusive, qual é o tipo de banco de dados que você vai utilizar. Hoje em dia, a gente tem banco de dados relacional, banco de dados chave-valor, banco de dados focados em grafo banco de dados focado em documentos então qual o tipo de banco de dados que talvez naquela situação funcione melhor entende então modelar os dados pelo menos nos pontos que mais é fazem sentido é totalmente importante e da mesma forma que a gente modela dado a gente modela ap e eu não tô falando que a modelagem da ap você vai ter que programar mas não por exemplo você sabe que uma pessoa vai ter que comprar um ingresso então você vai ter que ter os dados do cliente o qual o ingresso que ele vai comprar e a quantidade. Por que a quantidade? Porque ele pode comprar mais ingressos de uma vez. Então, eu posso ter lá na API um método chamado de comprar ingressos. Entende o que eu estou dizendo? Então, tem algumas coisas que são muito claras. E o porquê que essa modelagem de api é importante para que as pessoas para que os stakeholders consigam entender quais são as principais ações que o sistema faz quais são as principais chamadas que fazem sentido você especificar obviamente um sistema pode ter milhões e milhões de linhas é centenas de métodos e endpoints api mas você vai perceber que sempre a gente tem aquelas funcionalidades principais e são essas funcionalidades que você quer enfatizar na hora que você modela uma API, entende? E um outro ponto, aí sim a gente vai no System Design. E eu até coloquei aqui em negrito para você, para dizer que nesse momento é a hora do desenho mesmo. É a hora de você desenhar, colocar os elementos, os recursos, a parte de cloud, a parte dos seus sistemas e tudo mais. Essa hora é a hora do desenho. Então, pensa o seguinte. Os processos de System Design incluem diversos elementos. Dentro dos elementos tem o ato de desenhar. É isso que eu estou querendo dizer agora aqui para você. E depois disso a gente tem a parte de exploração. O que é exploração? Uma vez que eu desenhei, durante o meu desenho ou depois do meu desenho, eu vou tentar ficar me confrontando. Ou alguém vai estar te confrontando. Pode ser tanto na empresa o quanto uma entrevista porque que você escolheu cá fica porque que é que você tá usando o red por que que você não tá usando o mancash em vez do red né então esse tipo de coisa é importantíssimo então esse momento de exploração é aquela hora que você simplesmente vai ver se o que você criou você consegue justificar é só você pensar galera hoje em dia a gente faz tanta coisa mas tanta coisa no piloto automático que eu não tenho dúvidas que se eu chegar agora pra você e perguntar diversas coisas sobre o sistema que você está criando eventualmente 10% daquilo que você criou, talvez você não consiga justificar. Porque você fez, seguiu convenção, porque alguém utilizou aquela arquitetura e todo mundo está usando aquela arquitetura na empresa por anos e você seguiu a linha. E não tem nada de errado com isso. Agora, já que a gente está estudando isso, vamos tentar justificar aquilo. E o System Design vai ajudar você a pensar nesse tipo de coisa. Beleza? Então, vamos nessa.