domingo, 15 de março de 2009

Dicionário de imposto de renda

A seguir seguem alguns termos que podem ser úteis para quem deseja prestar as contas com a receita federal (imposto de renda):
  • ANTECIPAÇÃO
Se um contribuinte tem valores a receber, pode pedir um empréstimo no banco antes que o dinheiro chegue, apresentando a declaração como "garantia".
  • CÔNJUGE
Marido, mulher, companheiro ou companheira. O casal pode declarar em conjunto ou separadamente.
  • DARF (Documento de Arrecadação da Receita Federal)
Documento pode ser usado para recolher impostos e contribuições pela Secretaria da Receita Federal. Se o contribuinte tem imposto a pagar, é necessário a emissão do DARF.
  • DEDUÇÃO
Desconto sobre o valor de uma série de despesas. Não é todo tipo de despesa que pode ser deduzida.
  • DIRF (Declaração de Imposto de Renda Retido na Fonte)
Documento necessário para gerar a declaração de pessoas jurídicas e físicas que pagaram ou creditaram rendimentos em que tenha havido retenção do imposto de Renda na fonte durante o ano.
  • ESPÓLIO
É a declaração dos bens de pessoa que já tenha falecido quando não foi concluído o inventário.
  • INFORME DE RENDIMENTO
Resumo anual dos rendimentos tributáveis e não tributáveis que as empresas empregadoras e bancos devem enviar aos seus empregados.
  • IRRF (Imposto de Renda Retido na Fonte)
É o imposto que é retido diretamente na fonte pagadora. Pode ser descontado diretamente do salário (o que ocorre na grande maioria dos casos, vide demonstrativo de pagamento mensal).
  • LIVRO CAIXA
Balanço das despesas dedutíveis que fazem parte do exercício da profissão, que os autônomos devem manter.
  • MALHA FINA
É a verificação detalhada da Receita sobre as declarações. Ela que "detecta" as declarações entregues com erro, não foram checadas ou omissão de valores recebidos.

  • RESTITUIÇÃO
Valor apurado na declaração quando o contribuinte teve mais imposto retido do que o que deveria.

Esse foi um breve resumo de alguns termos que a Secretaria da Receita Federal utiliza para que os contribuintes prestem as contas corretamente. É importante que os contribuintes visitem o site da Receita para que sejam solucionadas quaisquer outras dúvidas.

JSF - Erro no resource bundle

Apesar de ser um pouco tarde, acabei de solucionar um problema e fiquei disposto a postar a solução. Estou montando um projeto utilizando as seguintes ferramentas:
  • Ide Eclipse;
  • JSF;
  • Plug-in do JBoss Tools;
  • Facelets;
  • Rich-Faces.
Ao executar o projeto estava ocorrendo o seguinte erro:
java.util.MissingResourceException: Can't find bundle for base name test.resources.MessageResources, locale pt_BR
java.util.ResourceBundle.throwMissingResourceException(ResourceBundle.java:836)
java.util.ResourceBundle.getBundleImpl(ResourceBundle.java:805)
java.util.ResourceBundle.getBundle(ResourceBundle.java:699)
javax.faces.component.MessageFactory.getMessage(MessageFactory.java:122)
javax.faces.component.MessageFactory.getMessage(MessageFactory.java:199)
javax.faces.component.MessageFactory.getMessage(MessageFactory.java:232)
javax.faces.component.MessageFactory.getMessage(MessageFactory.java:209)
javax.faces.component.UIInput.addConversionErrorMessage(UIInput.java:1074)
javax.faces.component.UIInput.validate(UIInput.java:630)
O problema é que não estava sendo possível encontrar o arquivo resource.properties. Para contornar esse problema foi necessário adicionar o no arquivo faces-config:




Obviamente que o arquivo de resources ficou na seguinte estrutura do projeto:
  • JavaSource\resources_pt_BR.properties.
Espero ter ajudado, posteriormente esterei colocando alguns problemas para ajudar a comunidade de desenvolvimento.





domingo, 20 de julho de 2008

Exceções em Java

O conceito de uma exceção em programação é quando algo não ocorre conforme o desejado, logo é iniciado (ou não dependendo da previsão do desenvolvedor) um processo / programa. Em Java há recursos para que essas exceções sejam devidamente tratadas nas cláusulas TRY / CATCH / FINALLY. Sugerindo a classe abaixo:

package br.com.excecoes.everton;

public class Telefone{

public String returnDDD(String str){
return str.substring(0, 3);
}
}

Esse método retornaria o prefixo do telefone, ou seja, os três primeiros dígitos. É importante ressaltar que esse método funcionaria, embora não seja tratado o tipo de informação que está sendo passada por parâmetro, isto é, se esse método receber "null", será lançado uma NullPointerException; se for recebido uma string vazia, a exibição para o usuário final seria StringIndexOutOfBoundsException, convenhamos para um usuário final, é uma situação altamente desagradável receber esse tipo de mensagem na tela do sistema. Vamos aplicar boas práticas de orientação a objetos, cada método deve assumir a responsabilidade pela validação dos dados que recebe. No código a seguir, serão efetuadas algumas revisões no método returnDDD lançando exceções:

public class Telefone {
public String returnDDD(String str) throws Exception{
if(str==null){
throw new IllegalArgumentException("Parâmetro nulo");
}else if(str.length() < 3){
throw new IllegalArgumentException("Tamanho do parâmetro tem que ser maior do que 3");
}
try{
int prefixo = Integer.valueOf(str.substring(0, 3));
}catch(NumberFormatException numEx){
throw new NumberFormatException("Prefixo tem que ser um número");
}
return str.substring(0, 3);
}
}

Revisado o código, a informação recebida é devidamente tratada. Caso seja recebido um valor null para o texto, será lançado uma NullPointerException; caso venha uma string vazia a exibição será StringIndexOutBoundsException. Em ambos situações ocorrem bugs do método returnDDD, sendo que não deveriam acontecer em nenhuma circunstância. Por isso foram criadas exceções mais específicas para que o sistema tenha o mínimo de respostas amigáveis. No caso do nosso método, são tratados mais exceções, como por exemplo o tamanho mínimo da string e se realmente é um valor numérico.

Abaixo temos a classe main que faz a chamada da classe Telefone:

public class ExcecoesJava {
public static void main(String[] args) {
Telefone fone = new Telefone();
try{
System.out.println("O prefixo do telefone eh: " +
fone.returnDDD("12"));
}catch(IllegalArgumentException ex){
System.out.println(ex.getMessage());
} catch (Exception e) {
System.out.println(e.getMessage());
}
}
}

Vamos verificar algumas mensagens de acordo aos parâmetros passados:
  • parâmetro "011-55556666", a resposta seria: O prefixo do telefone eh: 011;
  • parâmetro null, a resposta seria: Parâmetro nulo;
  • parâmetro "12", a resposta seria: Tamanho do parâmetro tem que ser maior do que 3.

Os parâmetros e respostas em "vermelho", seriam condições negativas, ou seja, erros que seriam passados como parâmetros, embora devidamente tratados por nosso programa.

Sequência
Sempre trate as exceções pela sua respectiva hierarquia, note que no nosso método a última exceção lançada é a Exception, por ser a mais genérica.

Conclusão
O artigo descrito anteriormente teve o intuito de abordar alguns pontos interessantes sobre manipulação de exceções, obviamente existem mais a ser estudado - melhorar os conceitos sempre nos ajuda a entender melhor o mecanismo de tratamento fornecido pelo Java. É importante ressaltar que por mais trabalhoso que aparente, é fundamental o devido tratamento dos erros. Certamente, o projeto será mais robusto, tendo o cuidado de lidar com os erros de forma mais específica, em uma linguagem que possue um mecanismo de tratamento de erros altamente sofisticado.

sábado, 19 de julho de 2008

Compatibilidade de Servidores JAVAEE

Estava no site da sun e encontrei algo muito interessante, uma lista de servidores compatíveis com a tecnologia JAVAEE, isto é, homologados pela Sun MicroSystems. É importante ressaltar que não está sendo mencionado o JBOSS, um dos servidores de aplicações mais utilizados. O JBOSS é um produto maduro, instalado em alguns ambientes de produção de diversos segmentos de mercado por todo o mundo. Para conferir os servidores homologados acesse Compatibility Servers.

terça-feira, 4 de março de 2008

Download da JRE - Java

Hoje em dia diversos programas são feitos em java, inclusive a versão do aplicativo para efetuar a aplicação do imposto de renda exige que seja feito download da JRE java, assim como a diversidade de programas existentes no mercado. Para isso, é necessário que seja feito download para que sejam executados corretamente (para os programadores interpretados pela JVM). Esse aplicativo contém somente o básico para rodar aplicativos java em qualquer equipamento.
Para efetuar o download entrar em: JAVA, sendo que há opções para efetuar download independentemente do sistema operacional utilizado (Windows / Linux / Solaris / Apple).

segunda-feira, 7 de janeiro de 2008

FireFox

O Mozilla FireFox é um produto desenvolvido pela Mozilla Foundation com a colaboração de centenas de desenvolvedores.
Para desenvolvedores é imprescindível a utilização desse navegador, que tem extrema facilidade de uso, pois é permitido a utilização de "abas" dando um visual organizado e limpo ao navegar. Também há um mecanismo de ampliação de recursos denominado "complementos" (a partir da versão 2.0, anteriormente era conhecido como "extensões"). É importante ressaltar que esse navegador segue extritamente as normas do W3C, que estabelece standards e estabelece limites para o desenvolvimento na web definindo uma uniformidade nos componentes. Mas um dos pontos mais fortes do FireFox está no Add-ons (Complementos), que na prática são plug-ins definindo funcionalidades a critério e gosto do usuário. Dentro deles temos o FireBug que permite debugar código JavaScript, MeasureIt que mede em pixels o tamanho de qualquer componente da tela, o Cooliris Previews extremanente útil a webdesigners, pois consegue definir qualquer cor em hexadecimal. Isso sem contar os plug-ins gerenciadores de e-mail (gmail / yahoo), onde o usuário consegue ver sua caixa postal com muita prática. Esses complementos podem ser localizados por nome ou por categoria. O FireFox não é recomendado somente para desenvolvedores, mas para usuários comuns que pretendem obter mais recursos ao navegar na internet. É importante ressaltar que para desenvolvedores há a necessidade de testar sua página no Internet Explorer também, para manter a compatibilidade principalmente quando há JavaScript no seu conteúdo, visando não causar transtornos futuros.

Para efetuar o download entre no site do FireFox

segunda-feira, 31 de dezembro de 2007

Analista de Sistemas

Olá meu nome é Everton, sou formado em tecnologia eletrônica pela universidade Mackenzie e Ciências da Computação pela Anhembi Morumbi. Trabalhei com manutenção de microprocessadores, depois comecei a desenvolver sistemas com Visual Basic 6.0, VB.NET, ASP.NET 2005 e atualmente programo em JAVA. Posteriormente estarei publicando alguns artigos para pessoas que desejam iniciar (ou pensam em começar a trabalhar/estudar a área de TI). Espero estar contribuindo para que outros possam aprender, principalmente na área de JAVA onde trabalho atualmente, onde há uma série de informações relevantes e detalhes para que o desenvolvedor prepare seu equipamento e comece a programar.