<?xml version="1.0" encoding="UTF-8"?>
<rss version="2.0" xmlns:atom="http://www.w3.org/2005/Atom" xmlns:dc="http://purl.org/dc/elements/1.1/">
  <channel>
    <title>Forem: Vanny </title>
    <description>The latest articles on Forem by Vanny  (@wonderwanny).</description>
    <link>https://forem.com/wonderwanny</link>
    <image>
      <url>https://media2.dev.to/dynamic/image/width=90,height=90,fit=cover,gravity=auto,format=auto/https:%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Fuser%2Fprofile_image%2F576097%2Ffb476aba-cdf4-4cf6-a43e-55742eed08d7.jpeg</url>
      <title>Forem: Vanny </title>
      <link>https://forem.com/wonderwanny</link>
    </image>
    <atom:link rel="self" type="application/rss+xml" href="https://forem.com/feed/wonderwanny"/>
    <language>en</language>
    <item>
      <title>Quase tudo o que um usuário precisa saber sobre a Stack Overflow</title>
      <dc:creator>Vanny </dc:creator>
      <pubDate>Thu, 04 Jan 2024 02:10:43 +0000</pubDate>
      <link>https://forem.com/wonderwanny/quase-tudo-o-que-um-usuario-precisa-saber-sobre-a-stack-overflow-lo</link>
      <guid>https://forem.com/wonderwanny/quase-tudo-o-que-um-usuario-precisa-saber-sobre-a-stack-overflow-lo</guid>
      <description>&lt;p&gt;&lt;strong&gt;Aviso:&lt;/strong&gt; &lt;em&gt;Atualmente, desempenho a função de Community Manager na Stack Overflow. No entanto, este post possui um caráter educativo e expressa exclusivamente o meu ponto de vista enquanto usuária do site. As opiniões apresentadas são baseadas em minhas experiências pessoais, não representando a posição oficial do Stack Exchange. Destaco que não abordarei processos internos, focando apenas em informações públicas sobre como utilizar os sites do SE. Todos os links e informações mencionados podem ser encontrados nas páginas da Stack Overflow e Stack Exchange. Vale ressaltar que algumas partes desta postagem consistem em citações e traduções diretamente das páginas de ajuda do Stack Overflow, todas devidamente linkadas.&lt;/em&gt;&lt;/p&gt;

&lt;p&gt;Se você é um desenvolvedor ou está estudando para se tornar um, é bastante provável que já tenha se deparado com a necessidade de buscar respostas para dúvidas relacionadas ao que está trabalhando no momento. Muitas vezes, essas respostas são encontradas em posts na Stack Overflow. No entanto, é importante destacar que o site possui suas particularidades e nem todos compreendem adequadamente o seu sistema, bem como a maneira eficaz de contribuir, formulando perguntas bem fundamentadas para obter a ajuda desejada.&lt;/p&gt;

&lt;p&gt;Este post serve como um guia para compreender essa plataforma, aprendendo a formular perguntas de qualidade e adquirindo os privilégios necessários para contribuir para o site de maneira tranquila. Afinal, é crucial evitar situações em que a sua conta seja suspensa devido a perguntas de baixa qualidade, especialmente quando há uma urgência na demanda por assistência.&lt;/p&gt;

&lt;p&gt;&lt;a href="https://media.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fl1zsdkezhmi7elv3q2v5.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fl1zsdkezhmi7elv3q2v5.png" alt="Página inicial da Stack Overflow antes do lançamento."&gt;&lt;/a&gt;&lt;/p&gt;

&lt;h2&gt;
  
  
  A história da Stack Overflow
&lt;/h2&gt;

&lt;p&gt;A &lt;a href="https://stackoverflow.com/" rel="noopener noreferrer"&gt;Stack Overflow&lt;/a&gt; é um site de &lt;strong&gt;&lt;em&gt;perguntas e respostas&lt;/em&gt;&lt;/strong&gt; destinado a programadores profissionais e entusiastas, tendo sido fundado em 2008 por &lt;a href="https://en.wikipedia.org/wiki/Jeff_Atwood" rel="noopener noreferrer"&gt;Jeff Atwood&lt;/a&gt; e &lt;a href="https://en.wikipedia.org/wiki/Joel_Spolsky" rel="noopener noreferrer"&gt;Joel Spolsky.&lt;/a&gt; O site abrange uma vasta gama de tópicos relacionados à programação de computadores.&lt;/p&gt;

&lt;p&gt;Recentemente, em 2 de junho de 2021, a Stack Overflow foi adquirida pela &lt;a href="https://www.prosus.com/" rel="noopener noreferrer"&gt;Prosus&lt;/a&gt; por US$ 1,8 bilhão, proporcionando à empresa uma nova perspectiva de crescimento devido ao substancial investimento.&lt;/p&gt;

&lt;p&gt;O nome do site foi escolhido através de votação em abril de 2008 pelos leitores do &lt;a href="https://blog.codinghorror.com/" rel="noopener noreferrer"&gt;Coding Horror&lt;/a&gt;, o blog de Atwood.&lt;/p&gt;

&lt;p&gt;Dada a bem-sucedida trajetória do site e o surgimento de diversas subcomunidades de forma orgânica dentro do Stack Overflow, surgiu a ideia de criar a &lt;a href="https://stackexchange.com/" rel="noopener noreferrer"&gt;Stack Exchange&lt;/a&gt;. Essa plataforma expande o modelo de perguntas e respostas do Stack Overflow para abranger outros temas além da programação. Atualmente, a Stack Exchange engloba uma família de &lt;a href="https://stackexchange.com/sites#oldest" rel="noopener noreferrer"&gt;182 comunidades&lt;/a&gt; de &lt;strong&gt;Q&amp;amp;A&lt;/strong&gt; &lt;em&gt;(Question &amp;amp; Answer)&lt;/em&gt; abordando diversos assuntos, não se limitando à área de Tecnologia. Cada uma dessas comunidades é formada por indivíduos apaixonados por um tópico específico.&lt;/p&gt;

&lt;h2&gt;
  
  
  Resumo sobre o funcionamento do site
&lt;/h2&gt;

&lt;p&gt;O site atua como uma plataforma destinada aos usuários que desejam formular perguntas e também responder a indagações. Isso é realizado por meio de um sistema envolvendo &lt;a href="https://www.edools.com/o-que-e-gamificacao/" rel="noopener noreferrer"&gt;gamificação&lt;/a&gt; e participação ativa, permitindo que os usuários votem positivamente &lt;em&gt;(upvote)&lt;/em&gt; ou negativamente &lt;em&gt;(downvote)&lt;/em&gt; em perguntas e respostas, de maneira semelhante ao &lt;a href="https://www.reddit.com/" rel="noopener noreferrer"&gt;Reddit&lt;/a&gt;. Além disso, é possível editar tanto perguntas quanto respostas, seguindo uma abordagem semelhante a um sistema &lt;a href="https://pt.wikipedia.org/" rel="noopener noreferrer"&gt;wiki&lt;/a&gt;.&lt;/p&gt;

&lt;p&gt;Os participantes da Stack Overflow têm a oportunidade de acumular pontos de reputação e conquistar "emblemas" &lt;em&gt;(badges)&lt;/em&gt;. Por exemplo, ao receber um upvote em uma pergunta ou resposta, um usuário ganha 10 pontos de reputação. Além disso, são concedidos distintivos em reconhecimento às contribuições dos usuários. Conforme a reputação aumenta, os usuários desbloqueiam novos privilégios, como a capacidade de votar, comentar e editar as postagens de outros membros.&lt;/p&gt;

&lt;p&gt;Em março de 2021, o Stack Overflow contava com mais de 14 milhões de usuários registrados e havia recebido mais de 21 milhões de perguntas e 31 milhões de respostas.&lt;/p&gt;

&lt;h2&gt;
  
  
  Lógica do Sistema da Stack Overflow
&lt;/h2&gt;

&lt;p&gt;A Stack Overflow é um site destinado à obtenção de respostas, não se configurando como um fórum de discussão.&lt;/p&gt;

&lt;p&gt;&lt;a href="https://media.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fnt9lg1f9zqud5jpb01u0.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fnt9lg1f9zqud5jpb01u0.png" alt="Exemplo ficticio tirado da página de Tour da Stack Exchange"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;As respostas de qualidade são votadas e posicionam-se no topo da seção de respostas. Nas buscas, as melhores respostas são priorizadas para facilitar a localização.&lt;/p&gt;

&lt;p&gt;A pessoa que fez a pergunta pode marcar uma resposta como "aceita", mas essa ação não implica necessariamente que seja a melhor resposta; apenas indica que foi útil para quem formulou a pergunta.&lt;/p&gt;

&lt;p&gt;É fundamental concentrar-se em perguntas relacionadas a problemas reais enfrentados, fornecendo detalhes sobre as tentativas realizadas e os objetivos específicos.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Pergunte sobre...&lt;/strong&gt;&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;Questões específicas dentro da área de especialização de cada site.&lt;/li&gt;
&lt;li&gt;Problemas ou dúvidas reais que você tenha enfrentado. &lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;Nem todas as perguntas se adequam a esse formato. Evite perguntas baseadas principalmente em opiniões ou que possam gerar discussões em vez de respostas.&lt;/p&gt;

&lt;p&gt;Perguntas que necessitam de aprimoramento podem ser fechadas até que alguém as corrija.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Evite perguntar sobre...&lt;/strong&gt;&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;Perguntas que se baseiam principalmente em opiniões.&lt;/li&gt;
&lt;li&gt;Perguntas com múltiplas respostas possíveis ou que exigiriam uma resposta excessivamente longa.&lt;/li&gt;
&lt;/ul&gt;

&lt;h2&gt;
  
  
  Tags
&lt;/h2&gt;

&lt;p&gt;&lt;a href="https://media.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2F816i6597smjf3uxj2ksa.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2F816i6597smjf3uxj2ksa.png" alt="A pergunta é sobre Git, então recebeu tags relacionadas ao assunto para fácil busca. "&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;Todas as questões estão identificadas com suas respectivas áreas temáticas. Cada uma pode ter até cinco tags, uma vez que uma pergunta pode estar relacionada a diversos assuntos. Clique em qualquer tag para visualizar uma lista de perguntas associadas a essa tag, ou vá para a lista de tags para explorar os tópicos de seu interesse.&lt;/p&gt;

&lt;p&gt;&lt;a href="https://media.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2F60xyx99b5abv9r9t9qc8.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2F60xyx99b5abv9r9t9qc8.png" alt="Home menu"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Privilégios&lt;/strong&gt;&lt;/p&gt;

&lt;p&gt;Os privilégios na Stack Overflow determinam suas capacidades no site. Você adquire mais privilégios à medida que sua reputação cresce, refletindo sua participação ativa na plataforma. Esses pontos de reputação são concedidos por outros usuários em reconhecimento às suas perguntas e respostas valiosas.&lt;/p&gt;

&lt;p&gt;Abaixo, alguns exemplos dos privilégios mais significativos e a quantidade necessária de pontos de reputação para obtê-los. No entanto, a lista completa está disponível aqui.&lt;/p&gt;

&lt;p&gt;&lt;a href="https://media.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Ftyflqbc69r46698ha9nl.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Ftyflqbc69r46698ha9nl.png" alt="Privilegios"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;
&lt;strong&gt;Criar Post&lt;/strong&gt; - &lt;em&gt;1 reps&lt;/em&gt; - Perguntar ou contribuir com uma resposta&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Participar no Meta&lt;/strong&gt; - &lt;em&gt;5 reps&lt;/em&gt; - Participar de discussões sobre a Stack Exchange: bugs, feedback, governança e etc... &lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Upvote&lt;/strong&gt; - &lt;em&gt;10 reps&lt;/em&gt; - Você pode votar numa questão como algo útil.&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Sinalizar/flag um post&lt;/strong&gt; - &lt;em&gt;15 reps&lt;/em&gt; - Trazer atenção dos moderadores ou comunidade sobre um post quando existir a necessidade.&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Conversar nos chats&lt;/strong&gt; - &lt;em&gt;20 reps&lt;/em&gt; - Você poderá conversar com outros membros que estão no chat daquele site.&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Comentar&lt;/strong&gt; - &lt;em&gt;50 reps&lt;/em&gt; - Além de responder, você poderá inserir comentários em perguntas ou respostas.&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Downvote&lt;/strong&gt; - &lt;em&gt;125 reps&lt;/em&gt; - Você pode votar negativamente em uma pergunta ou resposta quando elas não são úteis.&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;A polêmica que observo em blogs e vídeos no YouTube de personalidades do mundo do desenvolvimento nas redes sociais frequentemente menciona o quão tóxico é o site Stack Overflow. No entanto, após aprender a utilizar o site, compreendendo as regras e interações necessárias para alcançar privilégios de contribuição mais elevados, percebi que a maioria das minhas frustrações estava relacionada a dois fatores cruciais: a falta de conhecimento sobre o sistema como um todo e minha escassa compreensão das dinâmicas de interação social.&lt;/p&gt;

&lt;p&gt;Embora as gamificações apresentem seus problemas, como qualquer outro sistema, elas se destacam como um dos mais eficientes em termos de comunidade. Afinal, a Stack Overflow recebe milhões de acessos, tanto de usuários em busca de respostas quanto de usuários que contribuem com conteúdo nos sites. Muitos desses usuários, no entanto, não compreendem as regras, resultando em postagens de spam e conteúdo de baixa qualidade, como falta de código e gramática inadequada. Sem regras claras, torna-se desafiador manter um site funcional e útil. Sinceramente, sinto-me sobrecarregada ao tentar usar fóruns desprovidos de ferramentas de moderação, pois é praticamente impossível encontrar o que se busca em meio a spams e trolls. Compreendo que lidar com pessoas, especialmente online, pode ser desafiador, mas responsabilizar exclusivamente o sistema e alguns usuários não é justo.&lt;/p&gt;

&lt;p&gt;Contamos com moderadores que tentam resolver questões menores, como posts duplicados, spam e postagens que violam as regras do site. No entanto, devido à quantidade massiva de interações recebidas, tanto por parte da equipe interna quanto dos moderadores, torna-se difícil abordar cada pequeno aspecto. Com um sistema automatizado, a moderação ocorre automaticamente, sendo a intervenção humana necessária quando apropriada e disponível.&lt;/p&gt;

&lt;p&gt;Um exemplo de como isso pode se tornar trabalhoso é ser moderador em grupos ou fóruns sem nenhum sistema. Já atuei como moderadora em diversos grupos no Facebook (e também no Orkut, quando ainda existia), sendo um trabalho integral que demanda a leitura minuciosa de cada post e comentário, além da análise individual de cada um. Sem um sistema de sinalização, há o risco de deixar algo passar despercebido, resultando, aos poucos, na desorganização da comunidade, desmotivando os membros a participarem e colaborarem.&lt;/p&gt;

&lt;h2&gt;
  
  
  Comentários
&lt;/h2&gt;

&lt;p&gt;Outros privilégios são desbloqueados à medida que você interage com o site e colabora na organização dos posts para evitar spam. Em níveis mais altos de reputação, a Stack Overflow confiará tanto em você que concederá acesso a ferramentas especiais de moderação. Você poderá colaborar com os moderadores da comunidade para manter o site focado e útil.&lt;/p&gt;

&lt;p&gt;&lt;a href="https://media.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fejx79fvqyxlg4bsm5ov1.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fejx79fvqyxlg4bsm5ov1.png" alt="Comentarios"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;O objetivo é fornecer as melhores respostas para todas as perguntas. Portanto, se você encontrar perguntas ou respostas que possam ser aprimoradas, sinta-se à vontade para editá-las. Utilize as edições para corrigir erros, aprimorar a formatação ou esclarecer o significado de uma postagem.&lt;/p&gt;

&lt;p&gt;Após alcançar a reputação necessária para adicionar comentários, você pode usá-los para solicitar mais informações, esclarecer uma pergunta ou resposta. &lt;strong&gt;Sempre é possível comentar em suas próprias perguntas e respostas.&lt;/strong&gt; Ao atingir 50 de reputação, você poderá comentar em postagens de qualquer pessoa.&lt;/p&gt;

&lt;p&gt;É comum a confusão entre a sessão de comentários e a de respostas, e vice-versa. No entanto, é importante observar que &lt;strong&gt;a área de respostas destina-se EXCLUSIVAMENTE a respostas&lt;/strong&gt;. Se tiver dúvidas sobre a pergunta ou uma resposta específica, utilize os comentários em vez do campo de resposta, evitando assim a exclusão do seu post.&lt;/p&gt;

&lt;h2&gt;
  
  
  Reputação
&lt;/h2&gt;

&lt;p&gt;&lt;a href="https://media.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fqgcfz0o8hrnjz0hc0qep.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fqgcfz0o8hrnjz0hc0qep.png" alt="Reputação"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;As duas atividades mais importantes no Stack Overflow são Perguntar e Responder - e nenhuma delas exige qualquer &lt;a href="https://stackoverflow.com/help/whats-reputation" rel="noopener noreferrer"&gt;reputação&lt;/a&gt;!&lt;/p&gt;

&lt;p&gt;A reputação é uma medida aproximada de quanto a comunidade confia em você; é conquistada ao convencer outros membros de que você sabe do que está falando. Quanto mais reputação você ganha, mais privilégios você adquire e mais ferramentas você terá acesso no site - nos níveis de privilégio mais altos, você terá acesso a muitas das mesmas ferramentas disponíveis para os moderadores do site. E isso é intencional; a ideia é a comunidade se administrar e ter apenas suporte interno, afinal, são os membros que constroem as comunidades.&lt;/p&gt;

&lt;h2&gt;
  
  
  Como obter reputação?
&lt;/h2&gt;

&lt;p&gt;A principal maneira de ganhar reputação é fazer boas perguntas e fornecer respostas úteis. Isso é bastante óbvio. Os votos nessas postagens fazem com que você ganhe (ou às vezes perca) reputação. &lt;em&gt;Um adendo: os votos para as postagens marcadas como "community wiki" não geram nenhuma reputação.&lt;/em&gt;&lt;/p&gt;

&lt;p&gt;*&lt;em&gt;Você ganha reputação quando:&lt;br&gt;
*&lt;/em&gt;&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;
&lt;strong&gt;Pergunta é upvoted:&lt;/strong&gt; &lt;em&gt;+10 reps&lt;/em&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Resposta é upvoted:&lt;/strong&gt; &lt;em&gt;+10 reps&lt;/em&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Sua resposta é marcada como "aceita":&lt;/strong&gt; &lt;em&gt;+15 (+2 para quem aceitou)&lt;/em&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;A edição que você sugeriu é aceita:&lt;/strong&gt; &lt;em&gt;+2 (até +1000 no total por usuário)&lt;/em&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Bounty é concedida à sua resposta:&lt;/strong&gt; &lt;em&gt;+ valor total da recompensa do bounty&lt;/em&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Uma de suas respostas recebe uma recompensa automaticamente:&lt;/strong&gt; &lt;em&gt;+ metade do valor da recompensa&lt;/em&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Bônus de associação de site:&lt;/strong&gt; &lt;em&gt;+100 em cada site quando você cria um perfil em outros sites da Stack Exchange&lt;/em&gt;
&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;Você pode ganhar no máximo 200 votos de reputação por dia com a combinação de votos positivos, votos negativos e edições sugeridas. No entanto, os prêmios de recompensa, as respostas aceitas e os bônus de associação não estão sujeitos a esse limite diário de reputação.&lt;/p&gt;

&lt;p&gt;Se você é um usuário experiente da rede Stack Exchange com 200 ou mais reputação em pelo menos um dos sites, você receberá o chamado bônus de associação inicial de +100 para superar as restrições básicas de novos usuários nos outros sites. Isso acontecerá automaticamente em todos os sites atuais da Stack Exchange em que você tenha uma conta e em qualquer outro site da Stack Exchange no momento do login.&lt;/p&gt;

&lt;p&gt;*&lt;em&gt;Você perde reputação quando:&lt;br&gt;
*&lt;/em&gt;&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;
&lt;strong&gt;Sua pergunta é rejeitada:&lt;/strong&gt; &lt;em&gt;-2&lt;/em&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Sua resposta é rejeitada:&lt;/strong&gt; &lt;em&gt;-2&lt;/em&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Você vota contra uma resposta:&lt;/strong&gt; &lt;em&gt;-1&lt;/em&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Você coloca uma recompensa em uma pergunta:&lt;/strong&gt; &lt;em&gt;- valor total da recompensa&lt;/em&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Uma de suas postagens recebe 6 spam ou é sinalizada como ofensiva:&lt;/strong&gt; &lt;em&gt;-100&lt;/em&gt;
&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;&lt;strong&gt;Pontos a se considerar:&lt;/strong&gt;&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;Todos os usuários começam com 1 ponto de reputação, e a reputação nunca pode cair abaixo de 1.&lt;/li&gt;
&lt;li&gt;Aceitar sua própria resposta não aumenta sua reputação.&lt;/li&gt;
&lt;li&gt;As postagens excluídas não afetam a reputação dos eleitores, autores ou qualquer outra pessoa envolvida, na maioria dos casos.&lt;/li&gt;
&lt;li&gt;Se um usuário reverter um voto, a perda ou ganho de reputação correspondente também será revertido.&lt;/li&gt;
&lt;li&gt;A reversão de votos como resultado de fraude eleitoral também retornará a reputação perdida ou ganha.&lt;/li&gt;
&lt;/ul&gt;

&lt;h2&gt;
  
  
  Distintivos
&lt;/h2&gt;

&lt;p&gt;Além de ganhar reputação com suas perguntas e respostas, você recebe &lt;a href="https://stackoverflow.com/help/badges" rel="noopener noreferrer"&gt;distintivos&lt;/a&gt; por ser um membro especialmente útil. Os distintivos aparecem em sua página de perfil, flair e suas postagens. Existem diversos distintivos diferentes, e alguns sites têm seus próprios distintivos. Os distintivos são separados por tipos: Distintivos de perguntas, respostas, moderação, participação, etc.&lt;/p&gt;

&lt;p&gt;&lt;a href="https://media.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2F1m92ji198dh8retgggw0.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2F1m92ji198dh8retgggw0.png" alt="Alguns exemplos de Badges para perguntas"&gt;&lt;/a&gt;&lt;br&gt;
Alguns exemplos de Badges para perguntas&lt;/p&gt;

&lt;p&gt;&lt;a href="https://media.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fsfoext36pvtc9q5lhodw.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fsfoext36pvtc9q5lhodw.png" alt="Alguns exemplos de badges para respostas"&gt;&lt;/a&gt;&lt;br&gt;
Alguns exemplos de badges para respostas&lt;/p&gt;

&lt;h2&gt;
  
  
  O que é o tal do Meta?
&lt;/h2&gt;

&lt;p&gt;Eu sei que, com a agitação em torno do Facebook trocando seu nome para Meta, muitas pessoas ficaram confusas, e a palavra "Meta" tornou-se uma buzzword.&lt;/p&gt;

&lt;p&gt;"Meta" é uma palavra que, assim como muitas outras coisas, devemos aos antigos gregos. Quando a utilizavam, "meta" significava "além", "depois" ou "atrás". O sentido de "além" em "meta" ainda persiste em palavras como metafísica, entre outras.&lt;/p&gt;

&lt;p&gt;Seguindo essa mesma linha de raciocínio, temos os sites "meta", sendo o mais utilizado o &lt;a href="https://meta.stackexchange.com/" rel="noopener noreferrer"&gt;Meta Stack Exchange&lt;/a&gt;, que é a seção do site onde os usuários discutem o funcionamento e as políticas da Stack Exchange, em vez de discutir o tópico principal do site. Ele é separado das perguntas e respostas principais para reduzir o ruído, proporcionando um espaço legítimo para as pessoas questionarem como e por que esse site funciona da maneira que funciona.&lt;/p&gt;

&lt;p&gt;Cada um dos 177 sites possui o seu próprio site "meta", ou seja, para qualquer problema ou dúvida relacionados ao funcionamento e regras da comunidade, você pode fazer perguntas no site designado como "meta" para aquela comunidade. Para obter mais informações, você pode continuar lendo a respeito &lt;a href="https://stackoverflow.com/help/whats-meta" rel="noopener noreferrer"&gt;aqui&lt;/a&gt;.&lt;/p&gt;

&lt;p&gt;Embora eu não tenha encontrado uma lista de todos os sites "meta", você pode encontrá-los nos exemplos abaixo:&lt;/p&gt;

&lt;p&gt;Stack Overflow EN: &lt;a href="https://meta.stackoverflow.com/" rel="noopener noreferrer"&gt;https://meta.stackoverflow.com/&lt;/a&gt;&lt;br&gt;
Stack Overflow PT: &lt;a href="https://pt.meta.stackoverflow.com/" rel="noopener noreferrer"&gt;https://pt.meta.stackoverflow.com/&lt;/a&gt;&lt;br&gt;
Stack Overflow RU: &lt;a href="https://ru.meta.stackoverflow.com/" rel="noopener noreferrer"&gt;https://ru.meta.stackoverflow.com/&lt;/a&gt;&lt;br&gt;
Stack Overflow JA: &lt;a href="https://ja.meta.stackoverflow.com/" rel="noopener noreferrer"&gt;https://ja.meta.stackoverflow.com/&lt;/a&gt;&lt;br&gt;
Stack Overflow ES: &lt;a href="https://es.meta.stackoverflow.com/" rel="noopener noreferrer"&gt;https://es.meta.stackoverflow.com/&lt;/a&gt;&lt;/p&gt;

&lt;h2&gt;
  
  
  Como se forma uma comunidade nova?
&lt;/h2&gt;

&lt;p&gt;Essa sempre foi uma curiosidade minha, pois tenho o espírito empreendedor de iniciar projetos e já elaborei milhares de ideias para comunidades. No entanto, é muito mais simples do que executar todo o processo de iniciar uma comunidade na Stack Exchange, e vou explicar brevemente.&lt;/p&gt;

&lt;p&gt;Existe um sistema separado da Stack Overflow, que gosto de chamar carinhosamente de "incubadora", mais conhecido como &lt;a href="https://area51.stackexchange.com/" rel="noopener noreferrer"&gt;Area 51&lt;/a&gt;.&lt;/p&gt;

&lt;p&gt;&lt;a href="https://media.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Filwdj7gi9olhudm027is.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Filwdj7gi9olhudm027is.png" alt="Pagina inical do Area 51"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;A Área 51 representa a zona de testes da Stack Exchange Network, onde grupos de especialistas se reúnem para desenvolver novos sites de perguntas e respostas, seguindo o modelo do Stack Overflow. Para obter mais informações sobre todo o processo de proposta, fase de teste e os critérios necessários para que um site seja graduado como oficial na Stack Exchange, clique &lt;a href="https://area51.stackexchange.com/faq#:~:text=Area%2051%20is%20the%20Stack,Propose%20new%20Q%26A%20sites." rel="noopener noreferrer"&gt;aqui&lt;/a&gt;.&lt;/p&gt;

&lt;h2&gt;
  
  
  Copyright (Direitos Autorais)
&lt;/h2&gt;

&lt;p&gt;Uma dúvida que frequentemente surge ao copiar e colar trechos de código da internet é se isso poderia resultar em um processo por violação de propriedade intelectual.&lt;/p&gt;

&lt;p&gt;Considerando que os snippets geralmente estão protegidos por direitos autorais, surge a questão de qual licença seria aplicável.&lt;/p&gt;

&lt;p&gt;&lt;a href="https://media.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2F1ofeck9ssfayfjvi55yd.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2F1ofeck9ssfayfjvi55yd.png" alt="snippets"&gt;&lt;/a&gt;&lt;br&gt;
&lt;em&gt;Há um post explicando como compartilhar trechos executáveis &lt;a href="https://stackoverflow.blog/2014/09/16/introducing-runnable-javascript-css-and-html-code-snippets/" rel="noopener noreferrer"&gt;aqui&lt;/a&gt;.&lt;/em&gt;&lt;/p&gt;

&lt;p&gt;O direito autoral é automaticamente estabelecido sempre que alguém cria uma "obra de autoria", incluindo software. O único requisito é que a obra seja uma criação intelectual do autor, envolvendo alguma forma de criatividade.&lt;/p&gt;

&lt;p&gt;No caso do software, isso é geralmente aplicável, já que um programador precisa fazer diversas escolhas ao desenvolver um programa, desde a estrutura do código até a organização de funcionalidades em funções e módulos, sendo essas escolhas consideradas expressões de criatividade.&lt;/p&gt;

&lt;p&gt;No entanto, essa condição pode variar para trechos específicos de código. Um "snippet" pode ser uma solução breve e simples, como demonstrar como chamar uma API específica. Em casos assim, a falta de complexidade pode resultar em uma obra não suficientemente criativa, uma vez que se limita a explicar ou demonstrar uma solução específica.&lt;/p&gt;

&lt;p&gt;Em termos gerais, se dois programadores fornecerem códigos substancialmente idênticos, o código pode não ser considerado criativo conforme a lei de direitos autorais. Isso é mais provável em códigos curtos, mas mesmo códigos mais extensos em ambientes altamente restritos podem não ser protegidos pelos direitos autorais por essa razão.&lt;/p&gt;

&lt;p&gt;Contudo, um "snippet" com mais de uma ou duas linhas, envolvendo chamadas de função padrão, normalmente seria suficientemente criativo para estar sob proteção dos direitos autorais. Nesse ponto, o programador precisa tomar decisões criativas. Embora exista uma regra prática frequentemente citada, indicando que códigos menores que dez linhas são "triviais" e, portanto, não protegidos por direitos autorais, essa regra não é respaldada por qualquer lei de direitos autorais conhecida.&lt;/p&gt;

&lt;p&gt;Se um "snippet" estiver protegido por direitos autorais, seu uso é permitido apenas mediante licença. Isso é particularmente relevante ao considerar o código da Stack Overflow, já que muitos contribuidores não adicionam explicitamente informações de direitos autorais ou declarações de licença às suas contribuições.&lt;/p&gt;

&lt;p&gt;As diretrizes do próprio site afirmam: &lt;/p&gt;

&lt;blockquote&gt;
&lt;p&gt;Acreditamos em nossa missão principal de "tornar a Internet um lugar melhor para obter respostas especializadas para suas perguntas". Decidimos desde o início que todo o conteúdo gerado pelo usuário na Stack Exchange Network seria devolvido à comunidade sob uma licença Creative Commons. Criamos a Stack Exchange API como uma forma de permitir que os usuários escrevam aplicativos que usam a Stack Exchange Network de maneiras novas e criativas. Com acesso aberto para usar (e reutilizar) nossos serviços, é importante que os usuários não fiquem confusos com nosso relacionamento com as pessoas que usam nosso conteúdo e nossos serviços.&lt;/p&gt;
&lt;/blockquote&gt;

&lt;p&gt;Se quiser ler o resto, tá &lt;a href="https://stackoverflow.com/legal/trademark-guidance" rel="noopener noreferrer"&gt;aqui&lt;/a&gt;.&lt;/p&gt;

&lt;p&gt;Em resumo, é permitido o uso abrangente dos sites da Stack Exchange, incluindo conteúdo e design, contanto que os devidos créditos sejam atribuídos, conforme estabelecido nas diretrizes do site.&lt;/p&gt;

&lt;p&gt;E quando eu digo "conteúdo e design", refiroliteralmente a toda a gama de elementos, inclusive a Stack Exchange API e a possibilidade de criar consultas no banco de dados da Stack Exchange utilizando o &lt;a href="https://data.stackexchange.com/" rel="noopener noreferrer"&gt;Data Explorer&lt;/a&gt;.&lt;/p&gt;

&lt;p&gt;&lt;a href="https://media.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fwlq31l9jfiwpnof0h6x3.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fwlq31l9jfiwpnof0h6x3.png" alt="data explorer"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;E você também tem acesso ao design system! &lt;/p&gt;

&lt;p&gt;O &lt;a href="https://stackoverflow.design/" rel="noopener noreferrer"&gt;Stacks&lt;/a&gt; oferece tudo o que é necessário para projetar, criar e implementar rapidamente experiências coesas em toda a plataforma do Stack Overflow, abrangendo desde a identidade da marca e do produto até a forma como enviamos e-mails e redigimos textos.&lt;/p&gt;

&lt;p&gt;&lt;a href="https://media.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fnwl2qrj1c2xo5c23icwu.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fnwl2qrj1c2xo5c23icwu.png" alt="Stacks"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;E também não poderia faltar o repositório público no &lt;a href="https://github.com/StackExchange/Stacks" rel="noopener noreferrer"&gt;Github&lt;/a&gt;.&lt;/p&gt;

&lt;p&gt;&lt;a href="https://media.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fvd3qkmk7i1gh6snjdz4r.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fvd3qkmk7i1gh6snjdz4r.png" alt="Github"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;h2&gt;
  
  
  Produtos
&lt;/h2&gt;

&lt;p&gt;Existe Stack Overflow sobre como solucionar problemas no Stack Overflow caso ele fique fora do ar?&lt;/p&gt;

&lt;p&gt;Essa tem sido uma das perguntas mais frequentes que recebo desde que comecei a trabalhar lá. Portanto, acredito que posso aproveitar a oportunidade para mencionar um produto desenvolvido pela Stack Exchange, por meio da &lt;a href="https://stackoverflowsolutions.com/" rel="noopener noreferrer"&gt;Stack Overflow Solutions&lt;/a&gt;, chamado &lt;a href="https://stackoverflowsolutions.com/" rel="noopener noreferrer"&gt;Teams&lt;/a&gt;.&lt;/p&gt;

&lt;p&gt;&lt;a href="https://media.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fnt6p4u1p18zkrq4wco75.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fnt6p4u1p18zkrq4wco75.png" alt="Teams"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;Não, não se assemelha ao Microsoft Teams; é mais como um Stack Overflow exclusivo para a sua equipe. Você possui um ambiente dedicado à criação de perguntas e recebimento de respostas, restrito apenas aos membros da equipe. Na opção gratuita, é possível ter até 50 membros.&lt;/p&gt;

&lt;p&gt;&lt;a href="https://media.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fqx0pba0u1pqyboz7xq4b.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fqx0pba0u1pqyboz7xq4b.png" alt="Teams"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;Para conhecer mais sobre todos os produtos desenvolvidos pela Stack Exchange, clique &lt;a href="https://stackoverflow.co/" rel="noopener noreferrer"&gt;aqui&lt;/a&gt;.&lt;/p&gt;

&lt;p&gt;Vejo essa oportunidade como algo valioso, especialmente para aqueles que já contribuem e desejam consolidar uma carreira como escritores focados em artigos tecnológicos, DevRels ou futuros Community Managers. Estabelecer suas trajetórias profissionais em plataformas como esta pode proporcionar reconhecimento e valor por meio das comunidades. Animadoramente, expresso meu entusiasmo ao discutir o potencial desse cenário, considerando minha perspectiva como usuária e minha experiência nos bastidores acompanhando o desenvolvimento.&lt;/p&gt;

&lt;p&gt;Convido-os a participarem de um dos Collectives e, é claro, a contribuírem e integrarem-se às comunidades da Stack Exchange. Como conselho, destaco que grande parte do meu aprendizado, tanto em conhecimento técnico quanto em habilidades sociais, originou-se de colaborações em comunidades. Apenas uma sugestão. ;)&lt;/p&gt;

</description>
    </item>
    <item>
      <title>INTRODUÇÃO A MODELAGEM DE DADOS</title>
      <dc:creator>Vanny </dc:creator>
      <pubDate>Wed, 25 Jan 2023 02:20:16 +0000</pubDate>
      <link>https://forem.com/wonderwanny/introducao-a-modelagem-de-dados-5d0</link>
      <guid>https://forem.com/wonderwanny/introducao-a-modelagem-de-dados-5d0</guid>
      <description>&lt;p&gt;A definição da filosofia diz que, a filosofia é o estudo de questões gerais e fundamentais sobre a existência, conhecimento, valores, razão, mente, e linguagem; frequentemente colocadas como problemas a se resolver. E se você refletir a respeito, isso é tecnicamente o que fazemos em nossa área. Temos questões a serem indagadas, problemas a serem resolvidos. E você não chega a solução de algo, sem antes filosofar sobre o problema.&lt;/p&gt;

&lt;p&gt;Em muitos negócios, estudamos o caráter da tecnologia e suas relações com a sociedade para encontrarmos oportunidades para a satisfação humana, ou seja, a camada de usuários. Pensamos em acomodações, até mesmo em suas experiências e emoções com o uso de nossas soluções e produtos desenvolvidos.&lt;/p&gt;

&lt;p&gt;Então vamos filosofar um pouquinho comigo...&lt;/p&gt;

&lt;p&gt;&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2F7v11wdu8b97ad15o3tk8.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2F7v11wdu8b97ad15o3tk8.png" alt="Image description" width="800" height="310"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;A evolução da humanidade pode ser encarada como um trajeto no sentido da aquisição progressiva da capacidade individual da abstração. De um ser intimamente ligado à natureza, o homem tornou-se, ao longo do tempo, um ente isolado, independente e com uma capacidade de introspecção objetiva cada vez maior.&lt;/p&gt;

&lt;p&gt;O aparecimento do computador deu-se numa época em que essa capacidade de abstração havia deixado de ser privilégio de alguns e passado a pertencer e ser exercida por todos aqueles cuja educação e ambiente fossem propícios. As informações informais deixaram de satisfazer aos anseios individuais de abstração e objetividade; cada vez são exigidas informações mais objetivas e abstratas. Dentre as informações formais, destacam-se as que podem ser expressadas matematicamente. Estas são as que introduzimos no computador, por meio de dados tratados através de programas, que a máquina executa direta ou indiretamente.&lt;/p&gt;

&lt;p&gt;Dados e programas são modelos formais matemáticos de realidade ou de abstrações. Vamos introduzir os vários níveis de abstração envolvidos no processo de tratar informações através da máquina abstrata que é o computador.&lt;/p&gt;

&lt;p&gt;&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2F9x222a98pcdyjjeucqli.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2F9x222a98pcdyjjeucqli.png" alt="Image description" width="432" height="1043"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;Na figura ao lado, apresento um esquema que contém os vários níveis envolvidos em um possível processo de modelagem, levando à criação de uma base de dados.&lt;/p&gt;

&lt;p&gt;O nível mais alto é o do &lt;strong&gt;mundo real&lt;/strong&gt; que, do ponto de vista formal, é ainda muito nebuloso. Os objetos do mundo real são os seres, os fatos, as coisas e os organismos sociais.&lt;/p&gt;

&lt;p&gt;O segundo nível é o das informações (tratadas de maneira ainda informal) e é caracterizado por relatórios escritos em uma linguagem natural (Português, Inglês, etc.). Esse nível, denominado &lt;strong&gt;modelo descritivo&lt;/strong&gt;, contém a descrição de um universo totalmente inteligível para as pessoas que interagem normalmente com ele. Não há regras formais para se desenvolver esse modelo, pois tanto o mundo real quanto o próprio modelo descritivo não são formais.&lt;/p&gt;

&lt;p&gt;O terceiro nível é o das informações formais, em que o modelo desenvolvido passa a ser estritamente formal. Como o objetivo é chegar-se, mais a frente em um modelo computacional, o formalismo a ser adotado é o da matemática. Esses modelos são denominados &lt;strong&gt;modelos conceituais&lt;/strong&gt;, caracterizando-os por símbolos, que devem ter uma conceituação rigorosa.&lt;/p&gt;

&lt;p&gt;Nos modelos conceituais aparecem dois aspectos distintos, em geral, misturados nos modelos descritivos: tratam-se das estruturas e da manipulação das informações.&lt;/p&gt;

&lt;p&gt;As informações podem ser organizadas estruturalmente. Por exemplo: as informações sobre fornecedores contêm partes referentes ao endereço, que por sua vez é estruturado em local, CEP e cidade, sendo o local subdividido em rua, número e complemento.&lt;/p&gt;

&lt;p&gt;O quarto nível é o nível dos dados, que são os símbolos a serem introduzidos no computador, tanto na descrição de estruturas (meta-dados, isto é, os dados que descrevem os dados) quanto naqueles que constituem os dados a serem processados pela máquina.&lt;/p&gt;

&lt;p&gt;O quinto e último nível é o nível da máquina, não mais do ponto de vista do usuário, mas dos aspectos internos, ou seja, das representações internas dos dados e programas. O usuário não toma conhecimento desses detalhes. &lt;strong&gt;Este nível está ligado a atividade de administração de banco de dados.&lt;/strong&gt;&lt;/p&gt;

&lt;h2&gt;
  
  
  Recapitulando:
&lt;/h2&gt;

&lt;ul&gt;
&lt;li&gt;&lt;p&gt;&lt;strong&gt;Modelo Descritivo:&lt;/strong&gt; Pode ser considerada como descrição de uma realidade, não possui nenhum formalismo. Este é o problema a ser tratado.&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;&lt;strong&gt;Modelo Conceitual:&lt;/strong&gt; Descrição da realidade sob um aspecto mais formal, apontando informações. É usada como representação de alto nível e considera exclusivamente o ponto de vista do usuário criador dos dados.&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;&lt;strong&gt;Modelo Lógico:&lt;/strong&gt; Modelo Lógico agrega mais alguns detalhes de implementação.&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;&lt;strong&gt;Modelo Físico:&lt;/strong&gt; Implementação no banco de dados. Demonstra como os dados são fisicamente armazenados.&lt;/p&gt;&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;&lt;strong&gt;Modelar&lt;/strong&gt; significa criar um modelo que explique as características de funcionamento e comportamento de um software a partir do qual ele será criado, facilitando seu entendimento e seu projeto, através das características principais que evitarão erros de programação, projeto e funcionamento. É uma parte importante do desenho de um sistema de informação. Os modelos de dados são ferramentas que permitem demonstrar como serão construídas as estruturas de dados que darão suporte aos processos de negócio, como esses dados estarão organizados e quais os relacionamentos que pretendemos estabelecer entre eles.&lt;/p&gt;

&lt;p&gt;E na engenharia de banco de dados, o processo de criação de uma base, deveria seguir uma cadeia de processos organizada similarmente ao fluxograma abaixo:&lt;/p&gt;

&lt;p&gt;&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fp0b7ydx2otro9bv4wf4s.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fp0b7ydx2otro9bv4wf4s.png" alt="Image description" width="800" height="800"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;h2&gt;
  
  
  Modelo Descritivo
&lt;/h2&gt;

&lt;p&gt;O modelo descritivo auxilia a documentar informações que poderiam passar despercebidas. &lt;/p&gt;

&lt;p&gt;Por não ter técnicas específicas, devemos procurar neste momento pensar em sujeitos (pessoas, empresas ou pessoas exercendo uma atividade, por exemplo médico), e devemos escrever sobre eles no modelo descritivo. Outra técnica é a de descrever objetos que fazem parte do contexto (por exemplo Nota Fiscal, ou mesmo produtos vendidos pela empresa).&lt;/p&gt;

&lt;p&gt;O foco deve ser o de retratar informações existentes no levantamento das necessidades.&lt;/p&gt;

&lt;p&gt;O modelo descritivo servirá de base para o modelo conceitual. Este por sua vez deve ser mais estruturado, porém, ainda não tem uma apresentação visual obrigatória, servindo ainda para um maior detalhamento de informações a serem documentadas para a criação dos modelos lógico e Físico.&lt;/p&gt;

&lt;h2&gt;
  
  
  Exemplo de Modelo Descritivo
&lt;/h2&gt;

&lt;p&gt;&lt;strong&gt;Clínica Médica&lt;/strong&gt;&lt;/p&gt;

&lt;p&gt;Em uma clínica trabalham médicos e existem pacientes internados. &lt;br&gt;
Cada médico é identificado pelo seu CRM, possui um nome e recebe um salário na clínica.&lt;br&gt;
Um médico tem formação em diversas especialidades (ortopedia, traumatologia, etc), mas só exerce uma delas na clínica. &lt;/p&gt;

&lt;p&gt;Para todo paciente internado na clínica são cadastrados alguns dados pessoais: &lt;em&gt;nome, RG, CPF, endereço, telefone(s) para contato e data do nascimento&lt;/em&gt;.&lt;/p&gt;

&lt;p&gt;Um paciente tem sempre um determinado médico como responsável (com um horário de visita diário predeterminado), porém vários outros médicos podem participar do seu tratamento. &lt;/p&gt;

&lt;p&gt;Pacientes estão sempre internados em quartos individuais, que são identificados por um número e ficam em um andar da clínica. &lt;/p&gt;

&lt;p&gt;A clínica possui duas filiais que estão em outros bairros da cidade de São Paulo. &lt;br&gt;
A clínica possui também terapias complementares aos tratamentos médicos, tais como acupuntura, massagem e Fisioterapia. &lt;/p&gt;

&lt;p&gt;Alguns profissionais são empregados da clinica e outros são prestadores de serviço.&lt;/p&gt;

&lt;h2&gt;
  
  
  Modelo conceitual
&lt;/h2&gt;

&lt;p&gt;O modelo conceitual deve detalhar as informações sem a necessidade de apresentar as informações sob o ponto de vista visual.&lt;/p&gt;

&lt;p&gt;Este modelo muitas vezes acaba sendo mesclado com o modelo descritivo tornando um documento único. A importância desse modelo é grande, pois aqui o nível de detalhamento das informações deve ser maior.&lt;br&gt;
Este é o modelo de alto nível em que contém o detalhe menos granular, mas estabelece o escopo global do que está para ser incluído dentro do conjunto do modelo. &lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Exemplo&lt;/strong&gt; &lt;/p&gt;

&lt;p&gt;A clinica possui as seguintes informações:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;Nome&lt;/li&gt;
&lt;li&gt;Endereço&lt;/li&gt;
&lt;li&gt;Telefone&lt;/li&gt;
&lt;li&gt;Email&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;Os pacientes possuem as seguintes informações:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;Nome&lt;/li&gt;
&lt;li&gt;Identidade&lt;/li&gt;
&lt;li&gt;Endereço&lt;/li&gt;
&lt;li&gt;Email&lt;/li&gt;
&lt;li&gt;Telefone&lt;/li&gt;
&lt;/ul&gt;

&lt;h2&gt;
  
  
  Componentes de Modelagem de Dados
&lt;/h2&gt;

&lt;p&gt;O modelo de dados é formado por três componentes:&lt;/p&gt;

&lt;p&gt;&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fnhlb3bjhsw5ktay2mcxq.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fnhlb3bjhsw5ktay2mcxq.png" alt="Image description" width="800" height="344"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;h2&gt;
  
  
  Entidade
&lt;/h2&gt;

&lt;p&gt;O mundo está cheio de “coisas” e nós abstraímos coisas semelhantes e chamamos essas abstrações de objetos ou entidades.&lt;/p&gt;

&lt;p&gt;O nosso conceito, do que constituem os critérios apropriados para determinar a semelhança, é que eles dependem dos objetos que nós visamos.&lt;/p&gt;

&lt;p&gt;Entidades são objetos modelados em função dos papéis que desempenham em um sistema específico. &lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;&lt;p&gt;Uma única entidade do mundo real pode desempenhar papéis diferentes em sistemas diferentes. &lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;Entidades diferentes do mundo real podem desempenhar o mesmo papel em um sistema. &lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;Uma única entidade do mundo real pode desempenhar mais de um papel em um mesmo sistema&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;Uma entidade é a representação do que nós sabemos sobre o objeto do mundo real.&lt;/p&gt;&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;Da mesma forma que um arquivo é composto por registros, uma entidade representa o conjunto de dados das ocorrências dos objetos do mundo real.&lt;/p&gt;

&lt;p&gt;As entidades são abstrações de um conjunto de coisas do mundo real no qual todas as coisas do mundo real do conjunto - as instâncias - tenham as mesmas características e todas as instâncias estejam sujeitas à, e em conformidade com as mesmas regras.&lt;/p&gt;

&lt;p&gt;Então de forma bem resumida, o conceito é de que uma entidade é uma categoria de "coisas" concretas ou abstratas do mundo real sobre a qual o "negócio" necessita operar.&lt;/p&gt;

&lt;p&gt;Ou seja, uma entidade é uma representação de um conjunto de informações sobre determinado conceito do sistema. Toda entidade possui &lt;strong&gt;atributos&lt;/strong&gt;, que são as informações que referenciam a entidade. &lt;/p&gt;

&lt;p&gt;Tecnicamente, uma entidade é um objeto de dado básico do modelo entidade-relacionamento, cujas informações devem ser coletadas. Pode representar, por exemplo, um funcionário, lugar, coisa ou evento do mundo real, de interesse informativo. Uma ocorrência específica de uma entidade é chamada de &lt;strong&gt;instância da entidade&lt;/strong&gt;. &lt;/p&gt;

&lt;p&gt;&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fvumjjycywyhpc5ahkwh5.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fvumjjycywyhpc5ahkwh5.png" alt="Image description" width="800" height="251"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;h2&gt;
  
  
  Atributos de uma Entidade
&lt;/h2&gt;

&lt;p&gt;Resumidamente, atributos são fatores, características quaisquer de uma entidade que interessam ao 'negócio'.&lt;/p&gt;

&lt;p&gt;Atributos oferecem detalhes descritivos sobre elas. Uma ocorrência em particular de um atributo dentro de uma entidade é chamada de &lt;strong&gt;valor de atributo&lt;/strong&gt;. &lt;/p&gt;

&lt;p&gt;&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fbyj8wt0yiqwrhu936o32.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fbyj8wt0yiqwrhu936o32.png" alt="Image description" width="800" height="570"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;h2&gt;
  
  
  Tipos de Entidades
&lt;/h2&gt;

&lt;p&gt;&lt;strong&gt;Entidade Tipo&lt;/strong&gt;&lt;br&gt;
Uma &lt;em&gt;&lt;strong&gt;entidade tipo&lt;/strong&gt;&lt;/em&gt; representa um conceito independente em um modelo de dados e está em primeiro lugar na mente do cliente.&lt;br&gt;
As entidades tipo são independentes e, com frequência, constituem o ponto de partida de um modelo de dados.&lt;/p&gt;

&lt;p&gt;Muitas vezes essas entidades estão conectadas a outras entidades tipo por meio de um relacionamento 1:m ou m:m.&lt;/p&gt;

&lt;p&gt;Como exemplo podemos considerar um sistema acadêmico onde as entidades aluno e curso são entidades tipo, pois a entidade aluno, se não existisse a entidade curso, poderia existir da mesma forma.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Entidade Primária (Forte)&lt;/strong&gt;&lt;br&gt;
são aquelas cuja existência independe de outras entidades, ou seja, por si só elas já possuem total sentido de existir. Em um sistema de vendas, a entidade produto, por exemplo, independe de quaisquer outras para existir.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Ocorre sempre em casos de Relacionamentos 1 para 1.&lt;/strong&gt;&lt;br&gt;
&lt;strong&gt;&lt;em&gt;Exemplos: Nota Fiscal, Pedido de Venda&lt;/em&gt;&lt;/strong&gt;&lt;/p&gt;

&lt;h2&gt;
  
  
  Entidade Dependente (Fraca)
&lt;/h2&gt;

&lt;p&gt;Uma &lt;strong&gt;&lt;em&gt;entidade fraca&lt;/em&gt;&lt;/strong&gt; (ou &lt;strong&gt;&lt;em&gt;dependente&lt;/em&gt;&lt;/strong&gt;) precisa de outra entidade para garantir a sua existência. Essa entidade depende de uma entidade tipo e esta relação de dependência é uma relação obrigatória.&lt;/p&gt;

&lt;p&gt;O identificador de uma entidade fraca possui em sua composição os atributos identificadores da entidade tipo à qual a entidade fraca está associada.&lt;/p&gt;

&lt;p&gt;Como exemplo podemos considerar um sistema de gestão de recursos humanos onde a entidade dependente é uma entidade fraca em relação à entidade funcionário.&lt;/p&gt;

&lt;p&gt;Pois se a entidade Funcionários não existisse, a entidade dependente consequentemente não existiria.&lt;/p&gt;

&lt;p&gt;&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fzelnt62xh39tgoen43go.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fzelnt62xh39tgoen43go.png" alt="Image description" width="800" height="637"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;h2&gt;
  
  
  Entidade Associativa
&lt;/h2&gt;

&lt;p&gt;As &lt;strong&gt;entidades associativas&lt;/strong&gt; são o resultados de relacionamentos m:m.&lt;/p&gt;

&lt;p&gt;Em geral, as entidades associativas são encontradas entre entidades tipo.&lt;/p&gt;

&lt;p&gt;Muitas das vezes, as entidades associativas têm nomes óbvios, pois ocorrem no mundo real.&lt;/p&gt;

&lt;p&gt;Por exemplo, a entidade associativa do relacionamento disciplinas e alunos, objetivando o lançamento de notas, chama-se avaliação.&lt;/p&gt;

&lt;p&gt;Deve-se sempre procurar pelo nome adequado, pois esse irá aumentar a clareza do modelo de dados.&lt;/p&gt;

&lt;p&gt;A entidade associativa é quando a entidade não existe por si só e sua existência está condicionada à existência de duas ou mais entidades, originada em relacionamentos N para N.&lt;/p&gt;

&lt;p&gt;Nas imagens abaixo temos como exemplo uma entidade associativa que faz o papel de dois relacionamentos:&lt;/p&gt;

&lt;p&gt;&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fqel2u9a7waez6gi5yxp3.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fqel2u9a7waez6gi5yxp3.png" alt="Image description" width="800" height="527"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;E esse relacionamento pode ser substituída e passa a virar uma entidade, como na figura abaixo:&lt;/p&gt;

&lt;p&gt;&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Flafcvd3ju8z44rbcgld8.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Flafcvd3ju8z44rbcgld8.png" alt="Image description" width="766" height="708"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;h2&gt;
  
  
  Entidades x Ocorrências
&lt;/h2&gt;

&lt;ul&gt;
&lt;li&gt;&lt;p&gt;&lt;strong&gt;Entidade&lt;/strong&gt;: é um grupo de ocorrências com definição específica, características e relacionamentos comuns.&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;&lt;strong&gt;Eventos ou Ocorrências&lt;/strong&gt;: alguns objetos só conseguem ser individualizados ou percebidos enquanto uma certa ação se desenrola (identifica-se características que tornam determinado fato materializável). É um valor especifico da entidade que é chamada de instância ou tupla.&lt;br&gt;
Ex: vôo comercial, acidente de trânsito, jogo de futebol, etc.&lt;/p&gt;&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2F9zkx9kn3b49qmf2pmwnr.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2F9zkx9kn3b49qmf2pmwnr.png" alt="Image description" width="800" height="404"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;h2&gt;
  
  
  Relacionamentos
&lt;/h2&gt;

&lt;p&gt;&lt;iframe width="710" height="399" src="https://www.youtube.com/embed/y5eVqGEHBRw"&gt;
&lt;/iframe&gt;
&lt;br&gt;
&lt;em&gt;Neste vídeo eu explico um pouquinho a respeito.&lt;/em&gt;&lt;/p&gt;

&lt;p&gt;Em engenharia de software, um modelo &lt;strong&gt;entidade relacionamento&lt;/strong&gt; (mais conhecido como MER) é um modelo de dados para descrever os dados ou aspectos de informação de um domínio de negócio ou seus requisitos de processo, de uma maneira abstrata que em última análise se presta a ser implementada em um banco de dados, como um &lt;em&gt;banco de dados relacional&lt;/em&gt;. &lt;/p&gt;

&lt;p&gt;Os principais componentes dos Modelos Entidade-Relacionamento são as entidades (coisas, objetos) suas relações e armazenamento em bancos de dados.&lt;/p&gt;

&lt;p&gt;O processo é modelado como componentes (&lt;em&gt;entidades&lt;/em&gt;) que são ligadas umas as outras por relacionamentos que expressam as dependências e exigências entre elas, como: &lt;em&gt;um edifício pode ser dividido em zero ou mais apartamentos, mas um apartamento pode estar localizado em apenas um edifício&lt;/em&gt;. Entidades podem ter várias propriedades (&lt;em&gt;atributos&lt;/em&gt;) que os caracterizam.&lt;/p&gt;

&lt;h2&gt;
  
  
  Tipos de relacionamentos
&lt;/h2&gt;

&lt;p&gt;A notação original proposta é composta de entidades (&lt;em&gt;retângulos&lt;/em&gt;), relacionamentos (&lt;em&gt;losangos&lt;/em&gt;), atributos (&lt;em&gt;elipses&lt;/em&gt;) e linhas de conexão (&lt;em&gt;linhas&lt;/em&gt;) que indicam a cardinalidade de uma entidade em um relacionamento. &lt;/p&gt;

&lt;p&gt;&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Faydnyyn030u6rrzmf6zz.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Faydnyyn030u6rrzmf6zz.png" alt="Image description" width="800" height="800"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;Os tipos de relacionamentos que são utilizadas no diagrama acima:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;
&lt;strong&gt;Relacionamento 1..1 (lê-se relacionamento um para um)&lt;/strong&gt; - indica que as tabelas têm relacionamento apenas entre si. Você deve escolher qual tabela receberá a chave estrangeira;
A relação de &lt;strong&gt;1 para 1&lt;/strong&gt; que existe entre as tabelas de nomes pessoas e endereços, conforme demostrado na figura abaixo:&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fbjavw03qoeviljsl2c3a.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fbjavw03qoeviljsl2c3a.png" alt="Image description" width="800" height="268"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;Ou seja, &lt;strong&gt;1&lt;/strong&gt; pessoa possui um endereço e esse endereço pertence a &lt;strong&gt;uma&lt;/strong&gt; pessoa. Levando em consideração de que este relacionamento pode ser questionável mediante ao fator de que um endereço pode morar mais de uma pessoa, mas, no nosso exemplo, vamos dizer fingir que não... &lt;em&gt;xiiu!&lt;/em&gt;&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;
&lt;strong&gt;Relacionamento 1..n (lê-se um para muitos)&lt;/strong&gt; - São relacionamentos em que uma ocorrência de uma tabela &lt;strong&gt;A&lt;/strong&gt;, está associada a uma ou muitas ocorrências na tabela &lt;strong&gt;B&lt;/strong&gt;. A chave primária da tabela &lt;strong&gt;A&lt;/strong&gt; que tem o lado &lt;strong&gt;1&lt;/strong&gt; vai para a tabela do lado &lt;strong&gt;N&lt;/strong&gt;. No lado &lt;strong&gt;N&lt;/strong&gt; ela é &lt;em&gt;chamada de chave estrangeira&lt;/em&gt;; &lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2F9vw7870eh6n1mvsrpzx1.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2F9vw7870eh6n1mvsrpzx1.png" alt="Image description" width="800" height="278"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;Outro exemplo fácil de lembrar, é que um cliente pode fazer diversas compras, que por sua vez, são representadas por diversas notas fiscais. Mas em uma nota fiscal, consta apenas um cliente.&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;
&lt;strong&gt;Relacionamento n..n (lê-se muitos para muitos)&lt;/strong&gt; - São relacionamentos em que uma ou várias ocorrências de uma tabela A, está associada a uma ou várias ocorrências na tabela B. É um tipo de relacionamento que acontece de forma indireta entre duas tabelas, para que ela seja relacionada, é necessário a geração de uma terceira tabela &lt;strong&gt;com as chaves primárias das tabelas envolvidas&lt;/strong&gt;, ficando assim uma &lt;strong&gt;chave composta&lt;/strong&gt;, ou seja, formada por diversos campos-chave de outras tabelas. O relacionamento então se reduz para uma relacionamento 1..n, sendo que o lado n ficará com a nova tabela criada.&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2F1qe3hdfl4idmylqh1ry4.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2F1qe3hdfl4idmylqh1ry4.png" alt="Image description" width="800" height="186"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;h2&gt;
  
  
  Cardinalidade em Relacionamentos
&lt;/h2&gt;

&lt;p&gt;Em modelagem de dados a cardinalidade é um dos princípios fundamentais sobre relacionamento de um banco de dados relacional. Nela são definidos o graus de relação entre duas entidades ou tabelas.&lt;br&gt;
No modelo relacional, podemos ter os seguintes níveis de relacionamento: &lt;strong&gt;1:N, N:N, 1:1&lt;/strong&gt;.&lt;br&gt;
Por exemplo, considere um banco de dados desenhado para manter informações relativas a um hospital. Esse banco de dados poderá ter várias tabelas como:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;&lt;p&gt;Tabela &lt;em&gt;médico&lt;/em&gt; onde constará informações sobre o médico profissional;&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;Tabela &lt;em&gt;paciente&lt;/em&gt; onde constará dados relativos aos assuntos médico e sobre o tratamento do paciente;&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;Tabela &lt;em&gt;departamento&lt;/em&gt; onde será tratado as informações relativas as divisões departamentais do hospital.&lt;/p&gt;&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;Neste modelo teremos o seguinte cenário:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;&lt;p&gt;Existirá o relacionamento &lt;em&gt;&lt;strong&gt;vários-para-vários&lt;/strong&gt;&lt;/em&gt; (&lt;strong&gt;N:N&lt;/strong&gt;) entre os registros da tabela médico e os registro da tabela paciente, um médico atende diversos pacientes, assim como um paciente pode ser atendido por diversos médicos;&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;Existirá o relacionamento &lt;strong&gt;&lt;em&gt;um-para-vários&lt;/em&gt;&lt;/strong&gt; (&lt;strong&gt;1:N&lt;/strong&gt;) no relacionamento entre a tabela departamento em relação a tabela de médicos, pois um médico, poderá trabalhar em somente um departamento do hospital, contudo, um departamento poderá ter vários médicos.&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;Já o relacionamento &lt;em&gt;&lt;strong&gt;um-para-um&lt;/strong&gt;&lt;/em&gt; (&lt;strong&gt;1:1&lt;/strong&gt;) será usado nos casos onde o registro de uma tabela só poderá ter uma associação com um registro de outra tabela. No nosso caso, isso caberia na relação entre um quarto de apartamento e um paciente. Pois um paciente só poderá estar em um determinado apartamento, e cada apartamento só poderá abrigar um determinado paciente (partindo do princípio de quartos individuais). &lt;/p&gt;&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2F0l61ttngjbiwiyr0n0vz.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2F0l61ttngjbiwiyr0n0vz.png" alt="Image description" width="800" height="580"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;h2&gt;
  
  
  Opcionalidade em Relacionamentos
&lt;/h2&gt;

&lt;p&gt;O relacionamento é analisado pelo lado da obrigatoriedade (ou opcionalidade) das ocorrências de um entidade se ligarem às ocorrências de outra.&lt;/p&gt;

&lt;p&gt;&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Faidjqrlepimmyvf70er5.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Faidjqrlepimmyvf70er5.png" alt="Image description" width="800" height="674"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;h2&gt;
  
  
  Opcional
&lt;/h2&gt;

&lt;p&gt;As ocorrências das entidades que se relacionam são independentes das outras.&lt;/p&gt;

&lt;p&gt;“&lt;em&gt;Posso ter em um determinado momento no meu banco de dados uma ocorrência da entidade &lt;strong&gt;A&lt;/strong&gt; sem nenhum relacionamento com ocorrências da entidade &lt;strong&gt;B&lt;/strong&gt;?&lt;/em&gt;” &lt;/p&gt;

&lt;p&gt;Dependendo da Resposta e em função da regra de negócio, o relacionamento será definido. Será opcional caso haja independência entre elas.&lt;/p&gt;

&lt;h2&gt;
  
  
  Contigente
&lt;/h2&gt;

&lt;p&gt;A obrigatoriedade é somente por um lado do relacionamento e, por conseqüência, somente uma entidade possui independência. &lt;br&gt;
Caso essa seja a regra do negócio, o relacionamento será contigente.&lt;/p&gt;

&lt;h2&gt;
  
  
  Mandatório
&lt;/h2&gt;

&lt;p&gt;As entidades somente existem se existir o relacionamento entre elas. &lt;br&gt;
Para existirem, as entidades têm que estar relacionadas e formam, portanto, um relacionamento mandatório. &lt;/p&gt;

&lt;h2&gt;
  
  
  Grau de relacionamento
&lt;/h2&gt;

&lt;p&gt;Representa o número de entidades que participam do relacionamento e são divididos pelos seguintes:&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Unário&lt;/strong&gt; &lt;br&gt;
&lt;strong&gt;Auto-relacionamento:&lt;/strong&gt; Também chamados de &lt;strong&gt;recursivo&lt;/strong&gt;, são casos especiais onde uma entidade se relaciona com si própria. É o que chamamos de amor próprio no mundo real...  Apesar de serem relacionamentos muito raros, a sua utilização é muito importante em alguns casos.&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;&lt;p&gt;Instâncias de mesma entidade  &lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;Participam do relacionamento com papéis diferentes&lt;/p&gt;&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;Os auto-relacionamentos podem ser do tipo &lt;strong&gt;1:1&lt;/strong&gt; (um-para-um), &lt;strong&gt;1:N&lt;/strong&gt; (um-para-muitos) ou &lt;strong&gt;N:M&lt;/strong&gt; (muitos-para-muitos), dependendo da política de negócio que estiver envolvida.&lt;/p&gt;

&lt;p&gt;Exemplos deste relacionamento podem ser encontrados na chamada “explosão de materiais”, onde itens compostos são formados por muitos itens componentes; por sua vez, estes itens compostos podem ser componentes de outros itens maiores. &lt;/p&gt;

&lt;p&gt;Um exemplo de auto-relacionamento é o gerenciamento de funcionários, onde o gerente é um funcionário que possui um relacionamento com outros funcionários que lhe são subordinados. Este relacionamento pode ser representado da seguinte forma:&lt;/p&gt;

&lt;p&gt;&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2F5duh0qauo12f89aagcnc.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2F5duh0qauo12f89aagcnc.png" alt="Image description" width="800" height="508"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;h2&gt;
  
  
  Binário
&lt;/h2&gt;

&lt;p&gt;&lt;strong&gt;Relacionamento Binário:&lt;/strong&gt; Quando existe o relacionamento entre apenas duas entidades. Esse é o grau de relacionamento mais usado.&lt;/p&gt;

&lt;p&gt;&lt;em&gt;&lt;strong&gt;Exemplo&lt;/strong&gt;: Um fornecedor comercializa materiais que são utilizados em diversos projetos.&lt;/em&gt;&lt;/p&gt;

&lt;p&gt;&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fhm8u95we3spr6s8s1u91.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fhm8u95we3spr6s8s1u91.png" alt="Image description" width="800" height="207"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;h2&gt;
  
  
  Ternário
&lt;/h2&gt;

&lt;p&gt;&lt;strong&gt;Relacionamento Ternário:&lt;/strong&gt; Quando existe o relacionamento entre três entidades. &lt;br&gt;
Regra para a determinação das multiplicidades: &lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;&lt;p&gt;Fixa-se dois elementos (dois tipos-entidade) &lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;Verifica-se quantos elementos do outro tipo-entidade podem surgir com relação a um elemento de cada tipo-entidade fixada.&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;Se a quantidade for indeterminada ou variável&lt;br&gt;&lt;br&gt;
então considera-se n&lt;br&gt;&lt;br&gt;
senão considera-se 1&lt;/p&gt;&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;&lt;em&gt;&lt;strong&gt;Exemplo&lt;/strong&gt;: Um fornecedor comercializa materiais que são utilizados em projetos específicos.&lt;/em&gt;&lt;/p&gt;

&lt;p&gt;&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2F3zu9cgeal11yw99g0wdj.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2F3zu9cgeal11yw99g0wdj.png" alt="Image description" width="800" height="451"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;&lt;em&gt;Mais exemplos de Relacionamentos: O Professor leciona Estrutura de Dados e o aluno cursa Linguagem de Programação&lt;/em&gt;&lt;/p&gt;

&lt;p&gt;&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fv08r2vftk1v9j2qtw14i.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fv08r2vftk1v9j2qtw14i.png" alt="Image description" width="800" height="437"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;Um Modelo Lógico de Dados para uso meramente operacional/transacional não deve conter:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;&lt;p&gt;&lt;strong&gt;Replicações de atributos:&lt;/strong&gt; fisicamente pode ser interessante alguma redundância com o objetivo de melhorar a performance de determinado processo. No modelo lógico isso não pode ser feito; um atributo só é representado na Entidade que o pertence.&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;&lt;strong&gt;Atributos derivados:&lt;/strong&gt; pelos mesmos motivos apontados anteriormente, a implementação das tabelas pode requerer o armazenamento de uma informação derivada de outra (valor do saldo por exemplo). Tal tipo de informação não se constitui um atributo do modelo lógico.&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;&lt;strong&gt;Atributos repetitivos:&lt;/strong&gt; o uso de atributos repetidos, como Telefone-1 e Telefone-2, não é admitido. &lt;em&gt;Se existe a possibilidade de uma pessoa possuir mais de um telefone, então Telefone deve ser representado como uma entidade&lt;/em&gt;, mantendo relacionamento Nx1 com a entidade Pessoa.&lt;/p&gt;&lt;/li&gt;
&lt;/ul&gt;




&lt;p&gt;&lt;em&gt;Este post foi um extenso resumo dos principais pontos a serem considerados na modelagem de um banco de dados, mas isso não cobre tudo, nos próximos posts vamos aprofundar mais e teremos exemplos usando SQL Database Modeler.&lt;/em&gt;&lt;/p&gt;

</description>
      <category>welcome</category>
      <category>frontend</category>
      <category>webdev</category>
      <category>career</category>
    </item>
    <item>
      <title>O QUE É UM BANCO DE DADOS E QUANTO UM DEV PRECISA SABER SOBRE?</title>
      <dc:creator>Vanny </dc:creator>
      <pubDate>Wed, 25 Jan 2023 01:30:19 +0000</pubDate>
      <link>https://forem.com/wonderwanny/o-que-e-um-banco-de-dados-e-quanto-um-dev-precisa-saber-sobre-51jo</link>
      <guid>https://forem.com/wonderwanny/o-que-e-um-banco-de-dados-e-quanto-um-dev-precisa-saber-sobre-51jo</guid>
      <description>&lt;p&gt;Um banco de dados é um componente crucial de qualquer sistema digital, pois armazena e organiza informações que são usadas pelo sistema para executar várias tarefas. &lt;/p&gt;

&lt;p&gt;Como desenvolvedor, entender os fundamentos dos bancos de dados é essencial para construir e manter sistemas digitais robustos e eficientes. &lt;/p&gt;

&lt;p&gt;&lt;a href="https://res.cloudinary.com/practicaldev/image/fetch/s--L6idql5w--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_880/https://dev-to-uploads.s3.amazonaws.com/uploads/articles/bykmr8hbg51vq6ua4236.jpeg" class="article-body-image-wrapper"&gt;&lt;img src="https://res.cloudinary.com/practicaldev/image/fetch/s--L6idql5w--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_880/https://dev-to-uploads.s3.amazonaws.com/uploads/articles/bykmr8hbg51vq6ua4236.jpeg" alt="Image description" width="612" height="344"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;Vale a pena observar que diferentes tipos de funções de desenvolvimento exigem diferentes níveis de especialização em bancos de dados, por exemplo, um desenvolvedor full stack exigirá mais conhecimento do que um desenvolvedor front-end. No entanto, independentemente da função específica, um desenvolvedor deve ter uma sólida compreensão dos fundamentos dos bancos de dados e como eles funcionam para projetar e construir sistemas digitais eficientes e eficazes.&lt;/p&gt;

&lt;p&gt;Um desenvolvedor full stack deve ter uma boa compreensão de:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;&lt;p&gt;&lt;strong&gt;Modelagem de dados:&lt;/strong&gt; Isso inclui entender os diferentes tipos de campos de dados e como criar um design de banco de dados bem estruturado e normalizado.&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;&lt;strong&gt;SQL:&lt;/strong&gt; SQL (Structured Query Language) é usado para interagir com o banco de dados, incluindo a criação de tabelas, inserção, atualização e recuperação de dados. Um desenvolvedor deve ter um bom entendimento dos comandos SQL, como SELECT, INSERT, UPDATE e DELETE.&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;&lt;strong&gt;Gerenciamento de banco de dados:&lt;/strong&gt; Isso inclui entender como configurar e manter um banco de dados, incluindo criar e modificar tabelas, configurar índices e backups e solucionar problemas comuns.&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;&lt;strong&gt;Segurança de dados:&lt;/strong&gt; um desenvolvedor deve entender a importância da segurança de dados e saber como implementar práticas recomendadas, como criptografia e controles seguros de acesso a dados.&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;&lt;strong&gt;Integração de banco de dados:&lt;/strong&gt; Isso inclui entender como conectar um banco de dados a um aplicativo da Web ou móvel, incluindo o uso de APIs e bibliotecas ORM (Mapeamento Objeto-Relacional).&lt;/p&gt;&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;Já como desenvolvedor front-end, você não precisa ter um conhecimento profundo de estruturas e gerenciamento de banco de dados, mas é benéfico ter um entendimento básico de como os bancos de dados funcionam e como eles interagem com o front-end de um sistema. &lt;/p&gt;

&lt;p&gt;&lt;a href="https://res.cloudinary.com/practicaldev/image/fetch/s--VyaD5If8--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_880/https://dev-to-uploads.s3.amazonaws.com/uploads/articles/zptjkcse1lvzrh6zbc0y.jpeg" class="article-body-image-wrapper"&gt;&lt;img src="https://res.cloudinary.com/practicaldev/image/fetch/s--VyaD5If8--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_880/https://dev-to-uploads.s3.amazonaws.com/uploads/articles/zptjkcse1lvzrh6zbc0y.jpeg" alt="Image description" width="612" height="344"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;Algumas coisas importantes que um desenvolvedor front-end deve saber sobre bancos de dados incluem:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;&lt;p&gt;&lt;strong&gt;Como recuperar dados de um banco de dados:&lt;/strong&gt; Um desenvolvedor front-end deve entender como usar chamadas de API e outros métodos para recuperar dados de um banco de dados e exibi-los no front-end de um site ou aplicativo.&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;&lt;strong&gt;Como filtrar e classificar dados:&lt;/strong&gt; Entender como filtrar e classificar dados em um banco de dados pode ajudar um desenvolvedor front-end a criar interfaces mais dinâmicas e amigáveis.&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;&lt;strong&gt;Como enviar dados para um banco de dados:&lt;/strong&gt; Um desenvolvedor front-end deve ser capaz de enviar dados do front-end de um site ou aplicativo para um banco de dados, por exemplo, quando um usuário preenche um formulário e o envia.&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;&lt;strong&gt;Como os dados são organizados e armazenados em um banco de dados:&lt;/strong&gt; entender os fundamentos de como os dados são armazenados em um banco de dados, como tabelas e campos, pode ajudar um desenvolvedor front-end a criar uma recuperação e envio de dados mais eficientes e precisos.&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;&lt;strong&gt;Segurança e validação de dados:&lt;/strong&gt; Um desenvolvedor front-end deve estar ciente da importância da validação e segurança de dados ao interagir com um banco de dados e como implementá-lo no front-end.&lt;/p&gt;&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;Também é importante observar que um desenvolvedor front-end pode não necessariamente precisar saber como criar e gerenciar bancos de dados, mas deve estar familiarizado com os conceitos e a terminologia usados no gerenciamento de banco de dados e ser capaz de se comunicar efetivamente com o back-end, desenvolvedores responsáveis pelo gerenciamento dos bancos de dados.&lt;/p&gt;

&lt;h2&gt;
  
  
  Tá, mas o que seria um banco de dados?
&lt;/h2&gt;

&lt;p&gt;&lt;a href="https://res.cloudinary.com/practicaldev/image/fetch/s--Pm2K5j7i--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_880/https://dev-to-uploads.s3.amazonaws.com/uploads/articles/zjnn7s11onzg8w7jxtav.jpeg" class="article-body-image-wrapper"&gt;&lt;img src="https://res.cloudinary.com/practicaldev/image/fetch/s--Pm2K5j7i--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_880/https://dev-to-uploads.s3.amazonaws.com/uploads/articles/zjnn7s11onzg8w7jxtav.jpeg" alt="Image description" width="553" height="311"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;Um banco de dados é uma coleção de dados organizados e armazenados de forma a permitir a fácil recuperação, manipulação e atualização dos dados. Os bancos de dados podem ser usados para armazenar e gerenciar uma ampla variedade de informações, incluindo texto, números, imagens e outros tipos de dados. &lt;/p&gt;

&lt;p&gt;Eles são frequentemente usados em negócios, governo e outras organizações para armazenar e gerenciar grandes quantidades de dados de forma eficiente e eficaz. Os tipos mais comuns de bancos de dados são bancos de dados relacionais, bancos de dados de documentos, bancos de dados de valores-chave e bancos de dados de gráficos.&lt;/p&gt;

&lt;p&gt;&lt;a href="https://res.cloudinary.com/practicaldev/image/fetch/s--mBJ0axyT--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_880/https://dev-to-uploads.s3.amazonaws.com/uploads/articles/8f62e6gg8a19lmwlqpb0.jpg" class="article-body-image-wrapper"&gt;&lt;img src="https://res.cloudinary.com/practicaldev/image/fetch/s--mBJ0axyT--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_880/https://dev-to-uploads.s3.amazonaws.com/uploads/articles/8f62e6gg8a19lmwlqpb0.jpg" alt="Image description" width="880" height="587"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;Para entender como funciona um banco de dados, é necessário entender as diferentes estruturas que compõem um banco de dados e como elas funcionam juntas para manter nossos dados organizados e facilmente acessíveis.&lt;/p&gt;

&lt;h2&gt;
  
  
  Tabelas (Tables)
&lt;/h2&gt;

&lt;p&gt;As tabelas são os blocos básicos de construção de um banco de dados.&lt;/p&gt;

&lt;p&gt;Cada tabela contém um conjunto de linhas (também conhecidas como registros) e colunas (também conhecidas como campos).&lt;/p&gt;

&lt;p&gt;&lt;a href="https://res.cloudinary.com/practicaldev/image/fetch/s--hBFXsr5l--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_880/https://dev-to-uploads.s3.amazonaws.com/uploads/articles/zltz9alsre9546qmzrkx.png" class="article-body-image-wrapper"&gt;&lt;img src="https://res.cloudinary.com/practicaldev/image/fetch/s--hBFXsr5l--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_880/https://dev-to-uploads.s3.amazonaws.com/uploads/articles/zltz9alsre9546qmzrkx.png" alt="Image description" width="880" height="521"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;Cada coluna representa uma informação específica (como um nome ou endereço de e-mail) e cada linha representa uma única instância dessa informação (como um cliente ou produto específico).&lt;/p&gt;

&lt;p&gt;As tabelas são criadas com diferentes tipos de campos de dados com diferentes características, por exemplo, chave primária e chave estrangeira.&lt;/p&gt;

&lt;h2&gt;
  
  
  Chave primária (Primary key)
&lt;/h2&gt;

&lt;p&gt;Uma chave primária é um identificador exclusivo para cada linha em uma tabela.&lt;/p&gt;

&lt;p&gt;&lt;a href="https://res.cloudinary.com/practicaldev/image/fetch/s--OPJr-o85--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_880/https://dev-to-uploads.s3.amazonaws.com/uploads/articles/8mam6c8pbwzav52w4t4k.png" class="article-body-image-wrapper"&gt;&lt;img src="https://res.cloudinary.com/practicaldev/image/fetch/s--OPJr-o85--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_880/https://dev-to-uploads.s3.amazonaws.com/uploads/articles/8mam6c8pbwzav52w4t4k.png" alt="Image description" width="880" height="583"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;Pode ser um único campo ou uma combinação de vários campos.&lt;/p&gt;

&lt;p&gt;É usado para garantir que não haja duas linhas em uma tabela com o mesmo valor para a chave primária.&lt;br&gt;
Também ajuda a melhorar o desempenho do banco de dados criando um índice para a chave primária, o que permite uma busca e recuperação de dados mais rápidas.&lt;/p&gt;

&lt;h2&gt;
  
  
  Chave Estrangeira (Foreign key)
&lt;/h2&gt;

&lt;p&gt;Uma chave estrangeira é um campo em uma tabela que se refere à chave primária de outra tabela.&lt;/p&gt;

&lt;p&gt;&lt;a href="https://res.cloudinary.com/practicaldev/image/fetch/s--3m3B105z--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_880/https://dev-to-uploads.s3.amazonaws.com/uploads/articles/kcsgsr822ua7qqkgujw8.jpeg" class="article-body-image-wrapper"&gt;&lt;img src="https://res.cloudinary.com/practicaldev/image/fetch/s--3m3B105z--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_880/https://dev-to-uploads.s3.amazonaws.com/uploads/articles/kcsgsr822ua7qqkgujw8.jpeg" alt="Image description" width="880" height="311"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;É usado para estabelecer um relacionamento entre duas tabelas.&lt;br&gt;
Esse relacionamento permite que os dados de uma tabela sejam vinculados aos dados de outra tabela.&lt;/p&gt;

&lt;p&gt;Por exemplo, em um banco de dados de comércio eletrônico, a chave primária de uma tabela de clientes pode ser usada como chave estrangeira em uma tabela de pedidos para vincular informações específicas de clientes a informações específicas de pedidos.&lt;/p&gt;

&lt;h2&gt;
  
  
  Índices (Indexes)
&lt;/h2&gt;

&lt;p&gt;Um índice é uma estrutura de dados que permite uma pesquisa e recuperação mais rápida de dados em uma tabela.&lt;/p&gt;

&lt;p&gt;&lt;a href="https://res.cloudinary.com/practicaldev/image/fetch/s--eAIOQLVO--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_880/https://dev-to-uploads.s3.amazonaws.com/uploads/articles/n5t0w29wkv3lsnd1m1cj.png" class="article-body-image-wrapper"&gt;&lt;img src="https://res.cloudinary.com/practicaldev/image/fetch/s--eAIOQLVO--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_880/https://dev-to-uploads.s3.amazonaws.com/uploads/articles/n5t0w29wkv3lsnd1m1cj.png" alt="Image description" width="880" height="503"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;Ele é criado com base nos valores de um campo ou grupo de campos específico.&lt;br&gt;
Índices podem ser criados em campos frequentemente usados em consultas, como a chave primária, para melhorar o desempenho do banco de dados.&lt;/p&gt;

&lt;h2&gt;
  
  
  Visualizações (Views)
&lt;/h2&gt;

&lt;p&gt;Uma visualização é uma tabela virtual baseada nos dados de uma ou mais tabelas.&lt;br&gt;
Ele é criado definindo uma instrução SELECT que recupera dados específicos das tabelas subjacentes.&lt;/p&gt;

&lt;p&gt;&lt;a href="https://res.cloudinary.com/practicaldev/image/fetch/s--Jc0cHZjK--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_66%2Cw_880/https://dev-to-uploads.s3.amazonaws.com/uploads/articles/zv24krlex4j3a8vvxsra.gif" class="article-body-image-wrapper"&gt;&lt;img src="https://res.cloudinary.com/practicaldev/image/fetch/s--Jc0cHZjK--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_66%2Cw_880/https://dev-to-uploads.s3.amazonaws.com/uploads/articles/zv24krlex4j3a8vvxsra.gif" alt="Image description" width="515" height="263"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;As exibições podem ser usadas para apresentar dados em um formato específico ou para limitar o acesso a dados específicos em uma tabela. Por exemplo, uma exibição pode ser criada para mostrar todas as informações do cliente, exceto dados confidenciais, como números de previdência social.&lt;/p&gt;




&lt;p&gt;Em resumo, um banco de dados é composto de várias estruturas diferentes, incluindo tabelas, chaves primárias, chaves estrangeiras, índices e visualizações, que trabalham juntas para armazenar, organizar e recuperar dados de maneira eficiente e segura. Cada componente desempenha um papel específico no funcionamento do banco de dados, e entender como eles funcionam é crucial para o projeto e gerenciamento de qualquer sistema digital que utilize um banco de dados.&lt;/p&gt;

</description>
      <category>database</category>
      <category>table</category>
      <category>beginners</category>
      <category>datascience</category>
    </item>
  </channel>
</rss>
