Curso Java Basico na Treinamento in Foco iniciando no proximo mes.Melhores alunos serao selecionados para estagio ou contratacao em empresas do Porto Digital.Ementa do curso: http://treinamentoinfoco.com.br/cursos/javacompleto/Inscricoes abertas: http://treinamentoinfoco.com.br/pre-inscricoes/ Diante da vasta quantidade de opcoes que temos no mundo tecnologico, os profissionais da area precisam fazer escolhas sobre em quais tecnologias se especializar. Defendo a posicao que e importante conhecer algumas para poder comparar e que muitas vezes determinadas linguagens podem ser bastante adequadas em projetos especificos.Mas, na hora de escolher para qual dedicar esforcos de aprendizado, e bom levarmos em consideracao seu uso no mercado. Segue abaixo dados atualizados da comunidade Tiobe.Historico dos ultimos anos e projecao para 2014.PositionOct 2013PositionOct 2012Delta in PositionProgramming LanguageRatingsOct 2013DeltaOct 2012Status11C17.246%-2.58% A22Java16.107%-1.09% A33Objective-C8.992%-0.49% A44C++8.664%-0.60% A56PHP6.094%+0.43% A65C#5.718%-0.81% A77(Visual) Basic4.819%-0.30% A88Python3.107%-0.79% A923Transact-SQL2.621%+2.13% A1011JavaScript2.038%+0.78% A1118Visual Basic .NET1.933%+1.33% A129Perl1.607%-0.52% A1310Ruby1.246%-0.56% A1414Pascal0.753%-0.09% A1517PL/SQL0.730%+0.10% A1613Lisp0.725%-0.22% A1712Delphi/Object Pascal0.701%-0.40% A1853Groovy0.658%+0.53% B1919MATLAB0.614%+0.02% B2026COBOL0.599%+0.15% BFonte: http://www.tiobe.com/content/paperinfo/tpci/index.html Ciclo de vida JSF Voce pode desenvolver uma aplicacao completa em JSF sem conhecer todos os detalhes deste framework, porem quanto mais voce souber sobre ele, melhor e mais produtivo voce se tornara. Ao executar uma pagina construida usando componentes JSF, ela passara por um ciclo de vida de processamento bem definido, constituido por 6 fases, como seguem: 1. Restaurar visao 2. Aplicar valores de requisicao 3. Processar validacoes 4. Atualizar os valores do modelo 5. Invocar a aplicacao 6. Renderizar a resposta Vamos detalhar essas fases:1. Restaurar visao Recupera a hierarquia de componentes para a pagina solicitada, se ela foi exibida anteriormente, ou constroi uma nova hierarquia de componentes, se for a primeira exibicao. Se a pagina ja tiver sido exibida, todos os componentes sao recuperados em seu estado anterior. Isso da condicoes dos dados de um formulario submetido ao servidor serem recuperados, caso ocorra algum problema de validacao ou restricao de regra de negocio. Por exemplo, se um formulario solicita campos obrigatorios que nao sao totalmente preenchidos, porem enviados pelo usuario, o mesmo formulario deve aparecer novamente com os campos que nao estavam vazios ja preenchidos, porem com mensagens de erro indicando os campos requeridos. 2. Aplicar valores de requisicao Nesta fase, cada componente tem a chance de atualizar seu proprio estado com informacoes que vieram da requisicao.3. Processar validacoes Nesta fase, os valores submetidos sao convertidos em tipos especificos e anexados aos componentes. Quando voce programa uma pagina em JSF, voce pode incluir validadores para criticarem os valores recebidos pelos usuarios. Neste momento, os validadores entram em acao e, se ocorrerem erros de conversao ou de validacao, a fase de renderizacao de resposta (6) e invocada imediatamente, pulando todas as outras fases, e exibindo a pagina atual novamente, para que o usuario possa corrigir os erros e submeter os dados mais uma vez. 4. Atualizar os valores do modelo Durante esta fase, os valores anexados (chamados de valores locais) aos componentes sao atualizados nos objetos do modelo de dados e os valores locais sao limpos. 5. Invocar a aplicacao Na quinta fase, os eventos que originaram o envio do formulario ao servidor sao executados. Por exemplo, ao clicar em um botao para submeter um cadastro, a programacao do