Skip to content

Commit

Permalink
DOCS: Adicionando guia de estudos na documentacao
Browse files Browse the repository at this point in the history
  • Loading branch information
WillxBernardo committed Apr 26, 2024
1 parent e03be6f commit 8c50e0c
Show file tree
Hide file tree
Showing 8 changed files with 197 additions and 0 deletions.
24 changes: 24 additions & 0 deletions docs/Guia de estudos/JavaScript.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,24 @@
<div style="text-align:center;">
<h1>JavaScript</h1>
<a href="https://developer.mozilla.org/en-US/docs/Web/JavaScript" target="_blank"><img src="https://img.shields.io/badge/javascript-%23323330.svg?style=for-the-badge&logo=javascript&logoColor=%23F7DF1E" alt="JavaScript"></a>
</div>

JavaScript é uma linguagem de programação de alto nível, interpretada e multi-paradigma. É conhecida por ser a linguagem de programação da web, sendo amplamente utilizada para criar conteúdo interativo em páginas web.

## Características Principais

- **Linguagem Interpretada:** JavaScript é uma linguagem interpretada, o que significa que o código é executado linha por linha pelo navegador ou pelo ambiente de execução.

- **Multi-Paradigma:** JavaScript suporta programação procedural, orientada a objetos e funcional, oferecendo aos desenvolvedores flexibilidade para escolher o paradigma mais adequado para seus projetos.

- **Client-Side e Server-Side:** JavaScript pode ser executado tanto no lado do cliente (navegador) quanto no lado do servidor (Node.js), permitindo a criação de aplicativos web completos em JavaScript.

- **Ecossistema Rico:** JavaScript possui um ecossistema vasto e diversificado de bibliotecas e frameworks, como React, Angular, Vue.js e Express.js, que simplificam o desenvolvimento de aplicações web complexas.

## Casos de Uso

- **Desenvolvimento Web:** JavaScript é amplamente utilizado no desenvolvimento web para criar páginas interativas, interfaces de usuário dinâmicas e aplicações web completas.

- **Desenvolvimento de Jogos:** JavaScript é uma escolha popular para o desenvolvimento de jogos web e móveis, seja usando bibliotecas como Phaser.js ou frameworks como Unity com suporte a WebGL.

- **Automatização de Tarefas:** JavaScript pode ser utilizado para automatizar tarefas comuns de desenvolvimento, como minificação de arquivos, automação de testes e integração contínua.
25 changes: 25 additions & 0 deletions docs/Guia de estudos/Next.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,25 @@
<div style="text-align:center;">
<h1>Next JS</h1>
<a href="https://nextjs.org/docs/getting-started" target="_blank"><img src="https://img.shields.io/badge/Next-black?style=for-the-badge&logo=next.js&logoColor=white" alt="Next JS"></a>
</div>

Next.js é um framework de desenvolvimento web front-end React de código aberto que permite a criação de aplicativos web rápidos e escaláveis. Ele é construído sobre o React e oferece uma série de recursos avançados para simplificar o desenvolvimento de aplicações web modernas.

## Características Principais

- **Renderização Híbrida:** Next.js suporta tanto a renderização do lado do cliente quanto do servidor, oferecendo a flexibilidade de escolher o método de renderização mais adequado para cada página do aplicativo.

- **Roteamento Dinâmico:** Next.js possui um sistema de roteamento dinâmico que simplifica a criação de rotas para diferentes páginas do aplicativo, permitindo a passagem de parâmetros e a geração de URLs amigáveis para SEO.

- **Pré-renderização Estática e Incremental:** Next.js suporta a pré-renderização estática e incremental, o que significa que as páginas podem ser pré-renderizadas no momento da compilação ou sob demanda, resultando em tempos de carregamento mais rápidos e uma melhor experiência do usuário.

- **API Integrada:** Next.js oferece suporte integrado para a criação de APIs RESTful e GraphQL, permitindo que os desenvolvedores criem e gerenciem serviços da web diretamente em seus aplicativos Next.js.

## Casos de Uso

- **Desenvolvimento de Aplicativos Web:** Next.js é amplamente utilizado no desenvolvimento de aplicativos web, desde sites corporativos até lojas online e painéis de administração.

- **Aplicações Estáticas e Dinâmicas:** Next.js é adequado para a criação de tanto de sites estáticos quanto de aplicativos dinâmicos, oferecendo recursos avançados para atender às necessidades de diferentes tipos de projetos.

- **SEO e Performance:** Devido à sua capacidade de pré-renderização estática e incremental, Next.js é uma escolha popular para projetos que exigem uma forte otimização de SEO e desempenho.

25 changes: 25 additions & 0 deletions docs/Guia de estudos/Node.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,25 @@
<div style="text-align:center;">
<h1>NodeJS</h1>
<a href="https://nodejs.org/en/docs/" target="_blank"><img src="https://img.shields.io/badge/node.js-6DA55F?style=for-the-badge&logo=node.js&logoColor=white" alt="NodeJS"></a>
</div>

Node.js é um ambiente de execução JavaScript construído no motor V8 do Google Chrome. Ele permite que os desenvolvedores usem JavaScript para criar aplicativos de servidor escaláveis e de alto desempenho.

## Características Principais

- **Ambiente de Execução Assíncrono:** Node.js é conhecido por sua arquitetura assíncrona, que permite a execução de operações de entrada e saída de forma não bloqueante, resultando em aplicações rápidas e eficientes.

- **Baseado em Eventos:** Node.js utiliza um modelo baseado em eventos para lidar com solicitações de entrada e saída, permitindo que os desenvolvedores construam aplicativos escaláveis e orientados a eventos.

- **Módulos Nativos e Gerenciador de Pacotes:** Node.js possui um rico ecossistema de módulos nativos e um gerenciador de pacotes chamado npm (Node Package Manager), que facilita a instalação e o compartilhamento de bibliotecas de terceiros.

- **Single-Threaded e Non-Blocking:** Node.js é single-threaded e utiliza um modelo de E/S não bloqueante, o que significa que pode lidar com um grande número de conexões simultâneas sem a necessidade de threads adicionais.

## Casos de Uso

- **Desenvolvimento de APIs RESTful:** Node.js é amplamente utilizado no desenvolvimento de APIs RESTful para criar serviços da web escaláveis e de alto desempenho.

- **Aplicações em Tempo Real:** Node.js é uma escolha popular para o desenvolvimento de aplicações em tempo real, como bate-papos ao vivo, jogos multiplayer e transmissões de vídeo em tempo real.

- **Microserviços e Arquiteturas Baseadas em Eventos:** Devido à sua natureza orientada a eventos e capacidade de lidar com um grande número de conexões simultâneas, Node.js é adequado para a construção de microserviços e arquiteturas baseadas em eventos.

24 changes: 24 additions & 0 deletions docs/Guia de estudos/Postgresql.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,24 @@
<div style="text-align:center;">
<h1>PostgreSQL</h1>
<a href="https://www.typescriptlang.org/docs/" target="_blank"><img src="https://upload.wikimedia.org/wikipedia/commons/2/29/Postgresql_elephant.svg" alt="PostgreSQL Logo" width="75"></a>
</div>

O PostgreSQL é um sistema de gerenciamento de banco de dados relacional de código aberto e altamente avançado. Conhecido por sua confiabilidade, robustez e conformidade com os padrões ANSI SQL, o PostgreSQL é uma escolha popular para uma ampla gama de aplicativos, desde pequenos projetos pessoais até grandes sistemas corporativos.

## Características Principais

- **Confiabilidade e Estabilidade:** O PostgreSQL é conhecido por sua confiabilidade e estabilidade, com um histórico comprovado de desempenho sólido em ambientes de produção de missão crítica.

- **Suporte a Transações ACID:** O PostgreSQL suporta transações ACID (Atomicidade, Consistência, Isolamento, Durabilidade), garantindo a integridade dos dados mesmo em condições de falha.

- **Extensibilidade:** O PostgreSQL é altamente extensível, permitindo a criação de novos tipos de dados, funções e até mesmo novos motores de armazenamento através de suas extensões e recursos de programação.

- **Suporte a Recursos Avançados:** O PostgreSQL oferece suporte a uma variedade de recursos avançados, incluindo consultas complexas, junções, subconsultas, gatilhos, procedimentos armazenados e muito mais.

## Casos de Uso

- **Aplicações Web:** O PostgreSQL é amplamente utilizado no desenvolvimento de aplicativos web, fornecendo uma base sólida para armazenamento e gerenciamento de dados.

- **Aplicações Empresariais:** Devido à sua confiabilidade e escalabilidade, o PostgreSQL é uma escolha popular para aplicações empresariais, como sistemas de CRM, ERP e BI.

- **Aplicações de IoT e Big Data:** O PostgreSQL é adequado para aplicações de Internet das Coisas (IoT) e Big Data devido à sua capacidade de lidar com grandes volumes de dados e consultas complexas.
26 changes: 26 additions & 0 deletions docs/Guia de estudos/Python.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,26 @@
<div style="text-align:center;">
<h1>Python</h1>
<a href="https://docs.python.org/" target="_blank"><img src="https://img.shields.io/badge/python-3670A0?style=for-the-badge&logo=python&logoColor=ffdd54" alt="Python"></a>
</div>

Python é uma linguagem de programação de alto nível, interpretada, de tipagem dinâmica e multiplataforma. Foi criada por Guido van Rossum e lançada pela primeira vez em 1991. Desde então, Python se tornou uma das linguagens de programação mais populares do mundo, conhecida por sua sintaxe simples e legibilidade.

## Características Principais

- **Fácil de Aprender e Usar:** Python é conhecido por sua sintaxe limpa e simples, o que o torna uma excelente escolha para iniciantes em programação. Ele enfatiza a legibilidade do código, tornando-o fácil de entender e manter.

- **Multiplataforma:** Python é suportado em uma ampla variedade de plataformas, incluindo Windows, macOS e Linux. Isso significa que você pode escrever código Python em uma plataforma e executá-lo em outra sem fazer muitas alterações.

- **Rica Biblioteca Padrão:** Python vem com uma biblioteca padrão abrangente que oferece suporte a uma ampla gama de tarefas de programação, desde manipulação de arquivos até desenvolvimento web e análise de dados.

- **Comunidade Ativa e Suporte:** Python possui uma comunidade global ativa de desenvolvedores que contribuem com bibliotecas, frameworks e ferramentas para aprimorar a linguagem. Além disso, há uma abundância de recursos de aprendizado disponíveis, como documentação oficial, tutoriais e fóruns de discussão.

## Casos de Uso

- **Desenvolvimento Web:** Python é amplamente utilizado no desenvolvimento web, seja para construir aplicativos web simples usando frameworks como Flask e Django, ou para criar APIs RESTful e serviços da web.

- **Ciência de Dados e Análise:** Devido à sua facilidade de uso e poderosas bibliotecas como NumPy, Pandas e Matplotlib, Python é a escolha preferida para cientistas de dados e analistas para análise e visualização de dados.

- **Automação de Tarefas:** Python é frequentemente usado para automatizar tarefas repetitivas, como processamento de arquivos, gerenciamento de sistemas e automação de testes.

- **Inteligência Artificial e Aprendizado de Máquina:** Python é amplamente utilizado em projetos de inteligência artificial e aprendizado de máquina devido às suas bibliotecas populares, como TensorFlow, PyTorch e Scikit-learn.
20 changes: 20 additions & 0 deletions docs/Guia de estudos/Regex.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,20 @@
<div style="text-align:center;">
<h1>Regex (Biblioteca re)</h1>
<a href="https://docs.python.org/3/library/re.html">
Biblioteca <strong>re</strong> Python
</a>
</div>

## Expressões Regulares em Python (Biblioteca `re`)

Expressões regulares (regex) são uma poderosa ferramenta utilizada para buscar e manipular padrões de texto em strings. Em Python, a biblioteca padrão `re` fornece suporte completo para trabalhar com expressões regulares, permitindo que os desenvolvedores realizem operações avançadas de busca e substituição em texto.

### Funcionalidades Principais da Biblioteca `re`

- **Busca de Padrões:** A biblioteca `re` permite buscar padrões específicos em uma string, usando métodos como `search()` e `match()`. Isso é útil para validar entradas de usuário, extrair informações de texto e muito mais.

- **Substituição de Padrões:** A função `sub()` da biblioteca `re` permite substituir padrões encontrados em uma string por outro texto. Isso é útil para realizar correções em texto ou transformações específicas.

- **Divisão de Strings:** A função `split()` da biblioteca `re` permite dividir uma string com base em um padrão específico, em vez de um caractere fixo. Isso é útil para analisar texto estruturado em partes menores.

- **Grupos de Captura:** A biblioteca `re` permite definir grupos de captura em expressões regulares, permitindo extrair partes específicas de um texto correspondente. Isso é útil para analisar dados estruturados e extrair informações relevantes.
29 changes: 29 additions & 0 deletions docs/Guia de estudos/Scrapy.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,29 @@
<div style="text-align:center;">
<h1>Scrapy</h1>
<a href="https://docs.scrapy.org/en/latest/" target="_blank"><img src="https://img.shields.io/badge/Scrapy-%23007ACC.svg?style=for-the-badge&logo=scrapy&logoColor=white" alt="Scrapy"></a>
</div>


O Scrapy é um framework de scraping e web crawling open-source desenvolvido em Python. Ele fornece uma maneira eficiente e flexível de extrair dados da web, permitindo a coleta de informações de forma estruturada a partir de diversos sites.

## Características Principais

- **Robusto e Poderoso:** O Scrapy é projetado para lidar com a complexidade de navegar na web e extrair dados de forma eficiente, oferecendo uma arquitetura robusta para desenvolvimento de spiders.

- **Facilidade de Uso:** Apesar de sua potência, o Scrapy é relativamente fácil de usar, permitindo que os desenvolvedores criem spiders para extrair dados com apenas algumas linhas de código.

- **Extensibilidade:** O Scrapy é altamente extensível, oferecendo uma variedade de extensões e middleware para personalizar o comportamento das spiders de acordo com as necessidades específicas do projeto.

- **Suporte a Protolocos:** Além de HTTP e HTTPS, o Scrapy suporta uma variedade de outros protocolos, como FTP e SFTP, permitindo a extração de dados de uma ampla gama de fontes.

## Componentes Principais

O Scrapy é composto por diversos componentes principais que trabalham juntos para permitir o scraping de dados de forma eficiente:

- **Spiders:** As spiders são classes Python responsáveis por definir como o Scrapy navegará e extrairá dados de um site específico. Elas são personalizáveis e podem ser adaptadas para atender às necessidades de extração de dados do projeto.

- **Pipeline:** As pipelines são componentes responsáveis pelo processamento dos itens extraídos pelas spiders. Elas permitem que os dados sejam limpos, validados e armazenados em diferentes formatos, como JSON, CSV, ou bancos de dados.

- **Downloader Middleware:** O Downloader Middleware é responsável por processar as solicitações HTTP feitas pelo Scrapy. Ele permite a implementação de funcionalidades como throttling, proxy rotation e manipulação de cabeçalhos de solicitação.

- **Item Pipeline:** A Item Pipeline é responsável pelo processamento dos itens extraídos pelas spiders antes de serem armazenados ou descartados. Ela oferece uma maneira flexível de limpar, transformar e validar os dados antes de serem utilizados.
24 changes: 24 additions & 0 deletions docs/Guia de estudos/TypeScript.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,24 @@
<div style="text-align:center;">
<h1>TypeScript</h1>
<a href="https://www.typescriptlang.org/docs/" target="_blank"><img src="https://img.shields.io/badge/typescript-%23007ACC.svg?style=for-the-badge&logo=typescript&logoColor=white" alt="TypeScript"></a>
</div>

TypeScript é uma linguagem de programação de código aberto desenvolvida e mantida pela Microsoft. Ela é uma extensão do JavaScript que adiciona tipos estáticos opcionais e outras funcionalidades modernas ao JavaScript, permitindo o desenvolvimento de código mais robusto e escalável.

## Características Principais

- **Tipagem Estática Opcional:** TypeScript permite a adição de tipos estáticos opcionais às variáveis, parâmetros e retornos de função, fornecendo uma camada adicional de segurança e prevenindo erros comuns durante o desenvolvimento.

- **Compatibilidade com JavaScript:** Como uma extensão do JavaScript, todo código JavaScript válido é também código TypeScript válido. Isso significa que é fácil começar a usar TypeScript em projetos existentes e gradualmente adicionar tipos conforme necessário.

- **POO Avançada:** TypeScript suporta programação orientada a objetos avançada, incluindo classes, interfaces, herança e polimorfismo, facilitando a criação de código mais organizado e reutilizável.

- **Ferramentas de Desenvolvimento:** TypeScript é suportado por uma variedade de ferramentas de desenvolvimento, como o Visual Studio Code, que oferecem recursos avançados de edição, depuração e refatoração para aumentar a produtividade do desenvolvedor.

## Casos de Uso

- **Desenvolvimento Front-end:** TypeScript é amplamente utilizado no desenvolvimento front-end para criar aplicativos web e móveis usando frameworks populares como Angular, React e Vue.js.

- **Desenvolvimento Back-end:** TypeScript também é utilizado no desenvolvimento back-end, seja para construir APIs RESTful usando frameworks como Express.js, ou para criar microserviços usando Node.js.

- **Desenvolvimento de Jogos:** Devido à sua tipagem estática e suporte a POO, TypeScript é uma escolha popular para o desenvolvimento de jogos, especialmente quando combinado com bibliotecas e frameworks como Phaser e Babylon.js.

0 comments on commit 8c50e0c

Please sign in to comment.