[quote=tiagoberga]Apenas uma leve opinião meu caro, talvez alguns tópicos sejam muitos simples, e outros nem tanto, porém são assuntos para você “seguir um carreira java”, portanto comece de baixo…
LOGICAMENTE não estou dizendo que deva saber tudo, mas deve estar pode dentro da maioria destas ferramentas, e saber que as outras existem e pra que servem…
----> JAVA BÁSICO
Classes e objetos
Introdução aos conceitos de classes e objetos
Notação UML
Sobrecarga de métodos
Heap, stack e garbage collector
Operador this
Modificadores de acesso, construtores e elementos estáticos
Modificadores de acesso e encapsulamento
Construtores
Atributos e métodos estáticos
Herança e Polimorfismo
Herança
Sobrescrita de métodos
Polimorfismo
Palavra-chave super e o operador instanceof
Classes Abstratas e Interfaces
Classes e métodos abstratos
Interfaces
Tratamento de Exceções
Checked e unchecked exceptions
Lançando, tratando e transformando exceções
Strings, Datas e Números
String e StringBuilder
Formatação de strings, datas e números
Números randômicos
Enums, Classes Wrappers e Autoboxing
Enums e seus elementos
Funcionamento das classes wrappers
Autoboxing
Organização do Código Java
Separação em pacotes e uso do import
Visibilidade package e protected
Criação de Javadoc
Geração de arquivos JAR
Coleção de Dados
Arrays
Listas
Conjuntos
Mapas
Introdução ao I/O
Fluxo de dados
Streams em arquivos
Classes Scanner, PrintStream e File
Programação Multithread e Sincronismo
O que são threads, como criá-las e executá-las
Ciclo de vida
Prioridade e a atuação do escalonador
Sincronização e comunicação de threads
Expressões Regulares
Como funcionam
Expressões regulares e o Java
Divisão de dados em tokens
----> JAVA AVANÇADO
Annotations e Reflection API
O que são annotations, como criá-las e usá-las
Uso da reflexão com objetos
Generics
Comparação entre o uso e não uso do generics
Uso do generics em classes e métodos
Generics e as subclasses
Wildcars
Inner Classes
Características de uma inner class
Os 4 tipos de inner classes existentes
Concorrência e Paralelismo com java.util.concurrent
Interfaces Runnable e Callable
Conditions e locks
Programação paralela
Tarefas futuras
Operações atômicas
Programação em Rede com Sockets TCP/IP e UDP/IP
Sockets TCP/IP e UDP/IP
Multicast
Programação Distribuída com RMI
RMI Registry
Stubs e Skeletons
Invocação de objetos remotos
Implementação de um cliente
Tópicos Avançados de I/O
Argumentos de linha de comando
A classe Properties
Serialização de objetos
Acesso aleatório a arquivos
Acessando Bancos de Dados Através de JDBC
Arquitura do JDBC
Uso de conexões, statements e results sets
Metadados
Transações
Atualizações em lote
Desenvolvendo Aplicações Gráficas com Swing
Containers, components e layout managers
Menus
Tratamento de eventos
Manipulação de Dados nos Formatos XML e JSON
Manipulação de XML com as APIs DOM e SAX
Validação com XML Schema
Manipulação de dados no formato JSON
Log em Aplicações com SLF4J e Logback
O papel das APIs SLF4J e Logback
Loggers, log levels, appenders e layouts
Configuração
Criando Testes de Unidade com o JUnit
Implementação de métodos para testes de unidade
Execução e verificação dos resultados dos testes
Test suites
Automatizando Tarefas com o Ant
O Ant como automatizador de tarefas
Build file
Project, target, task e properties
Manipulação de Dados com a New I/O API
Channels e Buffers
Memory-Mapped Files
I/O assíncrono
Internacionalização
Locale
ResourceBundle e MessageFormat
Formatação de números e datas
----> JAVA - WEB
Introdução ao JSF
A plataforma Java EE
Aplicações web em Java
Funcionamento do JSF
Configurando o ambiente de desenvolvimento
Instalação do JDK
Instalação da IDE Eclipse
Instalação do servidor de aplicações GlassFish
Beans e injeção de dependência com CDI
Uso de beans CDI no JSF
Escopos de CDI beans
Tags e Componentes JSF
Tags existentes no JSF
Integração entre JSF e JavaScript
Resources
Navegação entre telas
Navegação estática e dinâmica
Regras de navegação
Forward e redirect
Métodos GET e POST
Templates e tags com Facelets
Templates de páginas
Inclusão de páginas
Decorators
Tags customizadas com Facelets
Tabelas dinâmicas com o componente DataTable
Criação de tabelas
Configuração das propriedades das tabelas
Conversores e validadores
Conversão de dados
Validação de dados
Eventos em JSF
Ciclo de vida de requisições
Eventos existentes no JSF
Integração de com banco de dados usando JPA
Arquitetura e funcionamento da JPA
Entidades e relacionamentos
Gerenciando conexões com bancos de dados
Transações
Modelo MVC e estrutura das aplicações
O modelo MVC e sua aplicação no JSF
Aplicação de design patterns na camada model
Utilizando AJAX com JSF
Requisições AJAX no JSF
Ciclo de vida de requisições AJAX
Dicas práticas de JSF
Dicas úteis para desenvolvedores
PrimeFaces - Dando mais poder ao JSF
Configuração
Componentes básicos e avançados do PrimeFaces
Exemplos práticos de usos de componentes
Temas
Por fim, deve saber sobre JPA, EJB, JPQL, Banco de Dados (eu utilizo postgres), JSF… and go on!
---- E POR ULTIMO, E TALVEZ ** SUPER IMPORTANTE**: Aprenda, decifre, sonhe… com “Design Patterns” <<- esses caras ai fazem muita diferença em organização e performance.
O resto meu caro… Você vai aprendendo com o tempo! um abraço e bons estudos.[/quote]
Muito obrigado por responder, é exatamente isso que eu estava procurando.
na sua opinião o aprendizado é na ordem que você citou?
Java Basico / Avançado / Web?