An open API service indexing awesome lists of open source software.

https://github.com/pitercoding/curso-java-dev-dojo

PT-BR: Repositório com meus estudos do curso Maratona Java Virado no Jiraya do canal DevDojo. EN: Repository containing my studies from the 'Maratona Java Virado no Jiraya' course by DevDojo.
https://github.com/pitercoding/curso-java-dev-dojo

course curso devdojo java javacore

Last synced: 10 days ago
JSON representation

PT-BR: Repositório com meus estudos do curso Maratona Java Virado no Jiraya do canal DevDojo. EN: Repository containing my studies from the 'Maratona Java Virado no Jiraya' course by DevDojo.

Awesome Lists containing this project

README

          

☕ Maratona Java Virado no Jiraya ☕

Repositório com meus estudos do curso **Maratona Java Virado no Jiraya** do canal DevDojo.

Aqui registro minha evolução em Java, cobrindo desde os fundamentos até tópicos avançados como Streams, Threads, Concorrência e Multithreading.

# 🎯 Objetivo

Dominar Java do zero ao avançado, consolidando:

- Base sólida de OOP
- Programação funcional
- Streams
- Multithreading
- Concorrência
- Estruturas internas da linguagem

# 🚀 Tecnologias Utilizadas

- Java
- IntelliJ IDEA
- JDK 15+

# 📚 Conteúdo Completo do Curso

## 🔰 01 - Introdução e Configuração

- O que é Java
- Como Java funciona
- Download e instalação da JDK
- Variáveis de ambiente
- Compilação manual
- Instalando IntelliJ
- Organização de pacotes
- Comentários

## 🔢 02 - Tipos Primitivos

- byte, short, int, long
- float e double
- char
- boolean
- Casting
- Strings
- Exercícios

## ➗ 03 - Operadores

- Aritméticos
- Relacionais
- Lógicos
- Atribuição
- Exercícios

## 🔀 04 - Estruturas Condicionais

- if
- else if
- operador ternário
- switch
- Exercícios práticos

## 🔁 05 - Estruturas de Repetição

- while
- do while
- for
- break
- continue

## 🧮 06 - Arrays

- Arrays unidimensionais
- Arrays multidimensionais
- Iteração com for
- Exercícios

# 🧱 07 - Orientação a Objetos

- Classes e atributos
- Métodos
- Parâmetros
- Referência de objetos
- this
- Construtores
- Blocos de inicialização
- Static
- Sobrecarga
- Encapsulamento
- Associação
- Herança
- Polimorfismo
- Sobrescrita
- Super
- Final
- Classes Abstratas
- Interfaces
- Enum
- Anotação Override

# ⚠️ 08 - Exceções

- Errors
- RuntimeException
- Checked vs Unchecked
- Try / Catch
- Finally
- Try-with-resources
- Exceções customizadas

# 🛠️ 09 - Classes Utilitárias

- Wrappers
- Strings
- StringBuilder
- Date
- Calendar
- LocalDate
- LocalDateTime
- Period
- Duration
- Formatter
- Locale
- ResourceBundle
- Regex
- IO
- NIO
- Path
- Files
- Serialization

# 📦 10 - Coleções

- equals e hashCode
- List
- ArrayList
- LinkedList
- Set
- HashSet
- Map
- HashMap
- Queue
- PriorityQueue
- Binary Search
- Sorting
- Comparable
- Comparator

# 🧬 11 - Generics

- Classes genéricas
- Métodos genéricos
- Wildcards
- Upper bounded
- Lower bounded

# 🧩 12 - Classes Internas

- Classes locais
- Classes anônimas
- Classes estáticas aninhadas

# 🔥 13 - Lambdas e Programação Funcional

- Parametrizando comportamento
- Predicate
- Consumer
- Supplier
- Function
- Method Reference
- Optional

# 🌊 14 - Streams

- Introdução
- Filter
- Map
- Reduce
- Collect
- Collectors
- FlatMap
- GroupingBy
- Parallel Streams pt 01
- Parallel Streams pt 02

# 🧵 15 - Threads

- Introdução
- Estados das Threads
- Prioridade
- Sleep
- Yield
- Join
- Sincronização
- Synchronized
- Deadlock
- Wait / Notify

# ⚙️ 16 - Concorrência

- AtomicInteger
- Lock
- ReentrantLock
- Conditions
- ReentrantReadWriteLock
- CopyOnWriteArrayList
- ArrayBlockingQueue
- LinkedTransferQueue
- Executors pt 01 - Thread Pools
- Executors pt 02 - ScheduledExecutorService
- Executors pt 03 - Interface Callable
- Future
- CompletableFuture

# 🏗️ 12 - Padrões de Projeto

- Builder
- Factory
- Singleton (Eager Initialization)
- Singleton (Lazy Initialization)
- Singleton com Enum
- Data Transfer Object (DTO)

# 🗄️ 13 - JDBC

## Configuração

- Instalando Docker
- Criando container MySQL
- Instalando Workbench
- Criando schema e tabelas
- Adicionando Maven ao projeto
- Dependência JDBC

## Operações com Statement

- Inserindo dados
- Deletando dados
- Atualizando dados

## ResultSet

- findAll
- findByName
- ResultSetMetaData
- DatabaseMetaData
- TYPE_SCROLL_INSENSITIVE
- Atualizando registros com ResultSet
- Inserindo e deletando com ResultSet

## PreparedStatement

- PreparedStatement pt 01
- PreparedStatement pt 02

## CallableStatement

- Executando procedures

## RowSet

- JdbcRowSet
- CachedRowSet

## Transações

- Controle de transação

## CRUD Completo

- findAll
- findByName
- delete
- save
- update
- Anime CRUD completo

# 🧪 14 - Testes Unitários

- JUnit pt 01
- JUnit pt 02

# 🆕 15 - Atualizações da Linguagem

- Atualizando JDK
- Record Class
- Pattern Matching for instanceof

## 🧑‍💻 Autor

**Piter Gomes** — Aluno de Ciências da Computação (6º Período) & Desenvolvedor Full-Stack

📧 [Email](mailto:piterg.bio@gmail.com) | 💼 [LinkedIn](https://www.linkedin.com/in/piter-gomes-4a39281a1/) | 💻 [GitHub](https://github.com/pitercoding)