Exceções – Item 61

do it - procrastination conceptLance exceções apropriadas à abstração

Existem alguns problemas quando uma API lança uma exceção referente à invocação de uma camada de nível inferior:

  • A exceção repassada não tem conexão aparente com a tarefa requisitada a ser executada do ponto de vista da camada invocadora.
  • Exposição detalhes de implementação interna da camada em uso.
  • Poluição da camada invocadora referente aos detalhes de implementação interno da camada em uso.
  • Inflexibilidade na manutenção. Quando detalhes internos de uma camada forem alteradas, resultara em impacto em todas as suas camadas invocadoras.

Portanto, as camadas superiores devem encapsular totalmente os detalhes e situação excepcionais internos, utilizando uma das seguintes abordagens:

  1. Encadeamento de exceções – definir e lançar exceções coerentes com o nível de abstração oferecida, encapsulando os detalhamentos internos. Use o encadeamento de exceções oferecido pela classe Exception.
  2. Contorno Silencioso – tratar as situações excepcionais internos transparentemente para as camadas invocadoras, registrando os ocorridos em um recurso de log apropriado.

Para todas as informações, veja o post inicial

“Pois a nossa pátria está nos céus, de onde também aguardamos o Salvador, o Senhor Jesus Cristo.” Filipenses 3:20

Adeus PermGen. Olá Metaspace!

imagesCom o surgimento do JDK8, PermGen não existe mais. As informações de metadados não desapareceram, só que o espaço em que eram mantidos não é mais contíguo ao heap. Agora, o metadado foi movido para a memória nativa, em uma área conhecida como “Metaspace”. Veja o artigo completo no site da InfoQ.

“Ora, se vós, que sois maus, sabeis dar boas dádivas aos vossos filhos, quanto mais o Pai celestial dará o Espírito Santo àqueles que lho pedirem?” Lucas 11:13

Introdução e boas práticas em UX Design

ux-user-experience-featured_largeCada vez mais o desenvolvimento do front-end de sites e sistemas tem papel preponderante em como o seu site converte, retém e agrada os usuários. Porém, além de saber como implementar uma tela é importante saber o que fazer nela. Quais recursos devem ser usados? Quais informações precisam ser exibidas? Em quais lugares? Atualmente, a experiência do usuário (User Experience – UX) tem ganhado um papel fundamental na criação de sites e apps e entender como o usuário se comportará no seu sistema é de extremo valor para criar um site simples para o usuário. Neste livro, Fabricio Teixeira mostra com exemplos práticos e reais de sucesso e insucesso de diferentes sites quais são as boas práticas e os pilares para conseguir construir um site de uso agradável. Confira o sumário.

“Os céus proclamam a glória de Deus, e o firmamento anuncia as obras das suas mãos. Um dia discursa a outro dia, e uma noite revela conhecimento a outra noite.” Salmos 19:1-2

Curso JSE M2 – Java Avançado

Objetivos

Objetivo deste curso é dar continuidade do curso inicial JSE M1 – Programador Básico acrescentando conhecimentos relacionados com tópicos avançados. O participante também se torna apto à utilização das seguintes tecnologias fundamentais:

  • Threads – Execução concorrentes.
  • JDBC – Comunicação com banco de dados relacionais.
  • Collection Classes – Coleções dinâmicas.
  • Swing – Desenvolvimento de interfaces gráficas.

O curso é finalizado com a conceitualização e apresentação de alguns ambientes de desenvolvimento RAD para a tecnologia JSE.

Pré-requisitos

Tem feito o curso JSE M1 – Programador Básico ou possuir sólidos conhecimentos relacionados ao conteúdo deste curso.

Duração: 24 hs
Valor R$  350,00
Forma de Pagamento: 10% de desconto a vista ou 2 vezes no cheque pessoal.

CONTEÚDO PROGRAMÁTICO

Polimorfismo

  • Conceitualização.
  • Interfaces.
  • Estudo de caso.

Classes Padrões

  • Wrappers.
  • Collections e utilização de generics.
  • String, StringBuilder e StringBuffer.

Tópicos Avançados

  • Autoboxing e unboxing.
  • Exceptions.
  • Threads.
  • Static Import.
  • Var-Args.
  • JavaCode Convention.
  • JavaDoc.

Java Data Base Connection – JDBC

  • Fundamentos e arquitetura.
  • Componentes básicos: Connection, DriverManager, Statement, Preparedtatement e ResulSet.
  • Utilização com SGDB MySql.

ToolKit Swing – Interface Gráfica

  • Gerenciadores básicos de Layout.
  • Janelas gráficas e painéis.
  • Componentes gráficos – rotulo botão, Campo de texto, caixa de verificação, Área de texto, lista de rolagem e menus.
  • Caixa de mensagens.
  • Tratamentos de eventos – janelas, teclados, ações e mouse.

Ferramentas RAD

  • Conceitualização.
  • Eclipse Windows Builder.
  • NetBeans – Matisse Project.

Os interessados em participar deste curso pode nos enviar sua solicitação de interesse através desse cadastro.

“Suportai-vos uns aos outros, perdoai-vos mutuamente, caso alguém tenha motivo de queixa contra outrem. Assim como o Senhor vos perdoou, assim também perdoai vós.” Colossenses 3:13

Arquitetura Ágil C4

c4

Veja link oficial

“assim também Cristo, tendo-se oferecido uma vez para sempre para tirar os pecados de muitos, aparecerá segunda vez, sem pecado, aos que o aguardam para a salvação.” Hebreus 9:28

MOB M2 – Desenvolvimento Web Mobile – LB2 02/09/14

1962676_855377261163110_8443147487431189491_n

MOB M2 – Desenvolvimento Web Mobile

“Porque vós, irmãos, fostes chamados à liberdade; porém não useis da liberdade para dar ocasião à carne; sede, antes, servos uns dos outros, pelo amor.” Gálatas 5:13

Você é só mais um na multidão ou você é o desenvolvedor?

Sem título

Se você quer ser o desenvolvedor que faz a diferença no contexto que você esta, participe desse movimento conosco! Assine o manifesto http://manifesto.softwarecraftsmanship.org/#/pt-br  e se posicione dentro desse padrão.

“Ora, o Deus da paciência e da consolação vos conceda o mesmo sentir de uns para com os outros, segundo Cristo Jesus, para que concordemente e a uma voz glorifiqueis ao Deus e Pai de nosso Senhor Jesus Cristo.” Romanos 15:5-6

Seguir

Obtenha todo post novo entregue na sua caixa de entrada.

Junte-se a 686 outros seguidores