Skip to content

Repository files navigation

📘 JavaScript Studies

JavaScript HTML5 CSS3 Git Status License


📖 Sobre o Repositório

Este repositório reúne exercícios, anotações e pequenos projetos desenvolvidos durante meus estudos de JavaScript.

O objetivo é registrar minha evolução na linguagem, consolidar os fundamentos da programação e construir uma base sólida para avançar no desenvolvimento back-end com Node.js e TypeScript.

Os conteúdos estão organizados por seções, passando por lógica de programação, fundamentos do JavaScript, funções, arrays, objetos, protótipos, Programação Orientada a Objetos e programação assíncrona.


🎯 Objetivos

  • Consolidar os fundamentos da programação
  • Aprofundar meus conhecimentos em JavaScript
  • Praticar lógica e resolução de problemas
  • Compreender funções, arrays, objetos e protótipos
  • Aplicar os conceitos de Programação Orientada a Objetos
  • Compreender o funcionamento do JavaScript assíncrono
  • Escrever códigos mais organizados e legíveis
  • Construir uma base sólida para Node.js, TypeScript e back-end
  • Registrar minha evolução prática no GitHub

🚀 Tecnologias Utilizadas

  • JavaScript
  • HTML5
  • CSS3
  • Git
  • GitHub
  • WebStorm
  • Visual Studio Code
  • Linux

📂 Estrutura do Repositório

javascript-studies/
│
├── Seção_LP/
│   └── Exercícios de lógica de programação
│
├── Seção_JavascriptBasico/
│   └── Fundamentos da linguagem JavaScript
│
├── Seção_FunçõesAvançadas/
│   └── Funções, escopo, closures e callbacks
│
├── Seção_ArraysAvançados/
│   └── Métodos de arrays e manipulação de dados
│
├── Seção_ObjetosPrototypesAvançados/
│   └── Objetos, prototypes, prototype chain e herança
│
├── Seção_POO/
│   └── Programação Orientada a Objetos com JavaScript
│
├── Seção_Assincrono/
│   └── Callbacks, Promises, async/await e requisições
│
├── jsconfig.json
├── .gitignore
└── README.md

A estrutura pode ser atualizada conforme novos exercícios e conteúdos forem adicionados.


📚 Conteúdos Estudados

🧠 Lógica de Programação

  • Variáveis
  • Tipos de dados
  • Operadores
  • Estruturas condicionais
  • Estruturas de repetição
  • Entrada e saída de dados
  • Resolução de problemas
  • Organização do raciocínio lógico

⚡ Fundamentos do JavaScript

  • Tipos primitivos
  • Operadores
  • Strings
  • Numbers
  • Arrays
  • Objetos
  • Funções
  • Escopo
  • Template strings
  • Estruturas de controle
  • Tratamento de erros

🔥 Funções Avançadas

  • Function declarations
  • Function expressions
  • Arrow functions
  • Parâmetros e argumentos
  • Retorno de valores
  • Escopo léxico
  • Closures
  • Callbacks
  • Factory functions
  • Constructor functions
  • Funções recursivas

📦 Arrays e Manipulação de Dados

  • Manipulação de arrays
  • Iteração
  • forEach()
  • map()
  • filter()
  • reduce()
  • find()
  • findIndex()
  • some()
  • every()
  • sort()
  • Spread operator
  • Rest operator
  • Desestruturação

🏛️ Objetos, Prototypes e Herança

  • Objetos literais
  • Propriedades e métodos
  • Palavra-chave this
  • Funções construtoras
  • Prototypes
  • Prototype chain
  • Herança via prototype
  • Métodos em prototypes
  • Object.create()
  • Object.defineProperty()
  • Object.defineProperties()
  • Getters e setters

🧩 Programação Orientada a Objetos

  • Classes em JavaScript
  • Constructors
  • Métodos de instância
  • Métodos estáticos
  • Encapsulamento
  • Herança
  • Polimorfismo
  • Getters e setters
  • Composição
  • Abstração
  • Separação de responsabilidades
  • Aplicação de POO em exercícios e projetos

⏳ JavaScript Assíncrono

  • Callbacks
  • Callback hell
  • Promises
  • Estados de uma Promise
  • .then()
  • .catch()
  • .finally()
  • async
  • await
  • Tratamento de erros assíncronos
  • Event Loop
  • Requisições HTTP
  • Consumo de APIs
  • XMLHttpRequest
  • Fetch API
  • Axios

💡 Projetos e Exercícios

Durante os estudos, desenvolvi exercícios e pequenos projetos para aplicar os conceitos aprendidos.

Projeto ou exercício Conteúdo principal Status
Exercícios de lógica Lógica de programação Concluído
Exercícios com funções Funções e escopo Concluído
Manipulação de arrays Métodos de arrays Concluído
Validação de CPF Funções construtoras e classes Concluído
Validação de formulários DOM e validação de dados Concluído
Exercícios com objetos Objetos e propriedades Concluído
Exercícios com prototypes Prototypes e herança Concluído
Exercícios de POO Classes, herança e composição Concluído
Exercícios assíncronos Promises, async/await e requisições Concluído
Consumo de APIs Fetch API e Axios Concluído

📈 Progresso dos Estudos

  • Lógica de Programação
  • Fundamentos do JavaScript
  • Funções Avançadas
  • Arrays Avançados
  • Objetos
  • Prototypes
  • Herança com Prototypes
  • Programação Orientada a Objetos
  • JavaScript Assíncrono
  • Promises
  • Async/Await
  • Requisições HTTP
  • Consumo de APIs

🧠 Aprendizados Principais

Ao longo deste repositório, desenvolvi conhecimentos importantes para programação e desenvolvimento de software, como:

  • Escrever código mais organizado e legível
  • Resolver problemas utilizando lógica de programação
  • Manipular e transformar dados com JavaScript
  • Compreender melhor o funcionamento interno da linguagem
  • Utilizar funções, objetos, classes e módulos
  • Aplicar Programação Orientada a Objetos
  • Trabalhar com código assíncrono
  • Consumir dados de APIs externas
  • Tratar erros em operações síncronas e assíncronas
  • Utilizar Git e GitHub no fluxo de estudos
  • Construir uma base sólida antes de avançar para o back-end

▶️ Como Executar

Clone o repositório:

git clone https://github.com/davi-amaraldev/javascript-studies.git

Entre no diretório:

cd javascript-studies

Para executar um arquivo JavaScript com Node.js:

node caminho/do/arquivo.js

Os exercícios que possuem interface podem ser executados diretamente no navegador por meio do arquivo index.html.


🛣️ Próximos Passos

Após consolidar os conteúdos deste repositório, meus próximos estudos serão direcionados para:

  • TypeScript
  • Node.js
  • Desenvolvimento de APIs REST
  • Fastify
  • PostgreSQL
  • Validação de dados
  • Tratamento de erros
  • Testes automatizados
  • Arquitetura de aplicações back-end

Esses conteúdos serão desenvolvidos em projetos e repositórios próprios.


📝 Observações

Este repositório permanece em atualização conforme reviso os conteúdos e adiciono novos exercícios.

O objetivo não é apenas concluir aulas, mas compreender os conceitos, praticá-los e aplicá-los em projetos reais.

Alguns códigos representam etapas anteriores do meu aprendizado e foram mantidos para demonstrar minha evolução ao longo do tempo.


👨‍💻 Autor

Davi Amaral

Estudante de Engenharia de Software no UNIPÊ, com foco em desenvolvimento back-end utilizando JavaScript, TypeScript e Node.js.


⭐ Caso este repositório tenha sido útil ou interessante, considere deixar uma estrela.

About

JavaScript studies, exercises and projects focused on building a strong foundation in web development.

Topics

Resources

Stars

1 star

Watchers

0 watching

Forks

Releases

Packages

Contributors

Languages