No mês passado eu compartilhei algumas curiosidades e dicas sobre a certificação SCJP 6 (Sun Certified Java Programmer), e agora chegou a vez da SCJA (Sun Certified Java Associate).
A SCJA também não tem nenhum outro exame como pré-requisito. Mas diferente da SCJP, a SCJA não é pré-requisito para nenhum outro exame, o que diminui muito o interesse por essa certificação.
Mas eu acho uma certificação muito interessante, pois é mais voltada para iniciantes no mundo Java, normalmente estudantes ou profissionais que estão mudando de tecnologia, funcionando como uma porta de entrada para as demais certificações e acelerando o ingresso ao mercado Java. Ou para aqueles que não são ou não pretendem ser especialistas Java, mas estão envolvidos com a linguagem de alguma forma, normalmente gestores, líderes de equipes, analista de negócio, etc.
Mas para quem já possui a certificação SCJP, acho pouco interessante obter a certificação SCJA.
A SCJA é um pouco mais básica, mas com uma cobertura maior de assuntos, portanto além de conhecer o básico de programação Java, também será necessário conhecer o básico de UML, JavaME, EJB, RMI, Servlets, JSP, JNDI, Swing, entre outros.
É muito importante estar afiado nos conceitos básicos de UML e da linguagem Java, isso já irá garantir boa parte da prova. E para os demais assuntos precisa saber apenas alguns pontos teóricos.
Eu fiz a prova a algumas semanas e fui bem (84%). Como achei a prova bem fácil, pensei que iria melhor, mas da mesma forma que a SCJP as pegadinhas são muitas e precisa estar bem atento.
Vou mostrar algumas dicas que coletei durante meus estudos por objetivo:
Conceitos Fundamentais de Orientação a Objetos.
- Ao analisar métodos implementados de uma interface, tenha certeza de ver o modificador public, pois por default os métodos da interface são públicos.
- Uma classe extende (extends) outra classe, implementa (implements) uma interface. Mas uma interface extende (extends) outras interfaces.
- Classes abstratas podem ter construtores, enquanto interfaces não podem.
- Uma classe final não pode ser extendida, portanto não pode ser abstrata.
Representação UML de Conceitos de Orientação a Objetos.
- Java não permite herança multipla, portanto fique atento para marcar um diagrama com essa caracteristica como inválido.
- Uma interface também pode ser representada pela notação pirulito (lollipop).
Implementação Java de Conceitos de Orientação a Objetos.
- Enumerations não podem conter métodos abstratos e não podem ser definidos dentro de métodos.
- Um método abstrato não pode ser declarado como final, privado ou estático.
- Variáveis locais não possuem valores default, portanto precisam ser inicializadas antes do uso.
- Não confundir o atributo estático length do array com o método length() da classe String.
- Conhecer os conceitos de encapsulamento e polimorfismo.
- Conhecer a ordem de execução dos construtores. E a ordem entre construtores, blocos de código e blocos estáticos.
Projeto e Implementação de Algoritmos.
- A variável de iteração do laço for-each precisa ser declarada dentro da instrução.
- Qualquer uma das três seções do laço for podem ser omitidas, ex: for( ; ; ) {} // laço infinito
- O corpo do laço while não pode não ser executado, ex: while(false){} // erro compilação
- No switch, a clausula default pode vir em qualquer posição.
- Pode esperar muitas questões sobre a classe String, esteja certo de conhecer cada método mencionado no objetivo.
- Lembre-se de analisar o escopo de uma variável declarada dentro de um for, while, método, etc.
- Conhecer as diferenças entre os operadores de incremente pós-fixado e pre-fixado.
Fundamentos de Desenvolvimento Java.
- Em um arquivo fonte pode haver apenas uma classe pública e o nome do arquivo deve bater com essa classe.
- Lembre-se da ordem das instruções de um código fonte. Primeiro package, imports e por fim class.
- Conheça os caminhos para configurar o classpath através dos comandos javac e java.
Tecnologias Java de Plataforma e Integração.
- Aplicações JavaME desenvolvidas para um dispositivo não necessariamente funcionam em outros dispositivos.
- JavaSE é incluida em todos ambientes JavaEE, portanto classes JavaSE funcionam em um ambiente JavaEE.
- Para o JavaME, vá direto para a arquitetura, camadas e tipo de configuração.
- Conheça exatamente os pacotes que contém as APIs JDBC, JMS, Servlet, RMI, etc.
Tecnologias Cliente.
- Conhecer os seguintes comparativos:
Swing e AWT
Servlets e JSPs
RMI e Socket
Applet, MIDlet, Javascript e HTML
Tecnologias Servidor.
- Conhecer em alto nível os tópicos de Web Services: SOAP, UDDI, WSDL e JAX-RPC.
- Conhecer os componentes existentes de cada camada em uma aplicação JavaEE.
Faremos uma revisão teórica desses assuntos no novo minicurso Dicas para a certificação SCJA que acontecerá no dia 10/11/2009, terça das 19 às 22hs. E para finalizar, alguns links de simulados:
Abraço amigos javeiros e boa sorte.
Comentários