Skip to content

pitercoding/curso-java-dev-dojo

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

64 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

☕ 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 | 💼 LinkedIn | 💻 GitHub

About

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.

Topics

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

 
 
 

Contributors

Languages