anúncios

domingo, 30 de março de 2025

Instalando o software IRPF 2025 no Linux

Procedimentos de instalação do software IRPF 2025 no Linux (qualquer distro)

Pré-requisitos:

Ter o openJDK 1.8 ou superior configurado no PATH do SO.

Copie a linha seguinte e cole no terminal da distribuição Linux que estiver usando ou clique no link https://www.gov.br/receitafederal/pt-br/centrais-de-conteudo/download/pgd/dirpf

Setar a permissão para execução

$ chmod +x IRPF2025Linux-x86_64v1.1.sh.bin

$ ./IRPF2025Linux-x86_64v1.1.sh.bin

Na primeira tela, clique no botão "Avançar"

Clique no botão "Avançar".

O próximo passo é escolher o diretório de instalação que deseja salvar, clique em "Avançar".

Confirme a instalação no botão "Avançar".

Por fim, clique no botão "Terminar".

Pronto, a instalação do IRPF2025 está concluída, poderá abrir no atalho que foi criado na área de trabalho. Também se preferir abrir o software IRPF2025 pelo terminal.

$ ~/ProgramasRFB/IRPF2025/irpf.jar

Agora, pode fazer a sua declaração do imposto de renda no Linux.

Após fazer a sua declaração e salvar o comprovante que fez a declaração do imposto de renda 2025, se quiser, pode desinstalar o software IRPF 2025.

Execute no terminal.

~/ProgramasRFB/IRPF2025/uninstall

Confirme o tipo de desinstalação (padrão ou completa), clique no botão "Avançar" e confirme.

Feito!

terça-feira, 25 de março de 2025

Comparação entre arquiteturas monolíticas, microsserviços e cliente-servidor: Qual escolher?

Na hora de projetar a arquitetura de um sistema, uma das decisões mais importantes é escolher a abordagem correta. Existem várias opções, mas as três mais comuns são as arquiteturas monolítica, microsserviços e cliente-servidor. Cada uma tem seus próprios benefícios e desafios, e entender suas características pode ajudar a escolher a solução mais adequada para o seu projeto.

Neste artigo, vamos explorar as principais diferenças entre essas arquiteturas, suas vantagens, desvantagens e os casos de uso ideais para cada uma delas.

Visão geral das arquiteturas

Arquitetura Monolítica

Uma arquitetura monolítica é uma abordagem em que todo o sistema (frontend, backend e banco de dados) está agrupado em um único projeto. Isso significa que todas as funcionalidades e componentes do sistema compartilham um mesmo código-base.

Arquitetura de Microsserviços

Em uma arquitetura de microsserviços, o sistema é dividido em serviços pequenos e independentes, cada um com sua própria funcionalidade e banco de dados. Esses serviços se comunicam entre si por meio de APIs (geralmente REST ou gRPC), permitindo que partes do sistema sejam escaladas e desenvolvidas de maneira independente.

Arquitetura Cliente-Servidor

A arquitetura cliente-servidor separa as responsabilidades entre o cliente, que é responsável pela interface e interação com o usuário, e o servidor, que gerencia a lógica de negócios e armazenamento de dados. O cliente se comunica com o servidor por meio de requisições HTTP ou WebSockets, o que permite que o frontend e o backend estejam desacoplados.

Comparação direta: Monolítico vs. Microsserviços vs. Cliente-Servidor



Critério Monolítico Microsserviços Cliente-Servidor
Complexidade de desenvolvimento Baixa, pois tudo está em um único código-base. Alta, pois cada serviço é independente e requer mais integração. Moderada, o backend pode ser desenvolvido separadamente do frontend.
Escalabilidade Escalabilidade limitada, pois a aplicação inteira é escalada como uma unidade. Escalabilidade independente por serviço, cada serviço pode ser escalado conforme a demanda. Escalabilidade do servidor, geralmente simples para sistemas de pequeno porte.
Desempenho Bom desempenho, mas limitações em sistemas maiores. Potencial de alto desempenho, mas pode sofrer com latência devido à comunicação entre serviços. Depende da implementação do servidor, simples de otimizar.
Manutenção Dificuldade crescente à medida que a aplicação cresce, pois tudo está interligado. Facilidade de manutenção, já que cada serviço pode ser atualizado sem afetar os outros. Fácil de manter se os sistemas de backend e frontend forem bem separados.
Testabilidade Mais difícil de testar devido à complexidade de tudo estar no mesmo código-base. Facilita o teste de serviços de maneira isolada. Testes independentes para o cliente e servidor, o que facilita o processo.
Flexibilidade Baixa, alterações exigem modificações em todo o sistema. Alta, cada serviço pode ser desenvolvido com a tecnologia mais adequada. Alta, permite escolher tecnologias diferentes para frontend e backend.
Casos de uso ideais Pequenos sistemas com pouca necessidade de escalabilidade. Grandes sistemas distribuídos, onde cada parte precisa ser escalada e gerida de forma independente. Sistemas com frontend desacoplado, como aplicações web modernas e APIs RESTful.


Vantagens e desafios de cada arquitetura

Monolítica

Vantagens:

  • Simplicidade:
  • Como tudo está em um único projeto, a configuração inicial e o desenvolvimento são mais simples.

  • Facilidade de implementação:
  • Ideal para projetos pequenos ou MVPs, onde a agilidade é mais importante que a escalabilidade.

  • Menos complexidade operacional:
  • Não há a necessidade de gerenciar múltiplos serviços, tornando a infraestrutura mais simples.

Desafios:

  • Escalabilidade limitada:
  • A escalabilidade precisa ser feita como um todo, o que pode ser ineficiente para sistemas maiores.

  • Desempenho:
  • Em sistemas grandes, o desempenho pode cair à medida que a aplicação cresce.

  • Manutenção e atualizações:
  • À medida que a aplicação cresce, fica mais difícil de manter e atualizar, já que mudanças podem afetar o sistema inteiro.

Microsserviços

Vantagens:

  • Escalabilidade:
  • Cada serviço pode ser escalado de forma independente, o que torna a arquitetura ideal para sistemas grandes e complexos.

  • Flexibilidade:
  • Cada microsserviço pode ser desenvolvido usando a melhor tecnologia para o seu propósito.

  • Facilidade de manutenção:
  • Como os microsserviços são independentes, é possível atualizar, corrigir ou melhorar um serviço sem impactar os outros.

Desafios:

  • Complexidade operacional:
  • Exige mais esforço para configurar e monitorar a comunicação entre os serviços.

  • Gerenciamento de estado:
  • Em uma arquitetura de microsserviços, gerenciar o estado global pode ser um desafio, já que cada serviço tem seu próprio banco de dados.

  • Custo:
  • A necessidade de infraestrutura mais complexa e o uso de múltiplas tecnologias podem gerar custos mais altos.

Cliente-Servidor

Vantagens:

  • Desacoplamento:
  • Frontend e Backend são independentes, o que facilita a manutenção e a escalabilidade de cada parte.

  • Tecnologias independentes:
  • Permite o uso de diferentes tecnologias para o frontend e o backend, de acordo com a necessidade de cada parte.

  • Escalabilidade do Backend:
  • O servidor pode ser escalado conforme a demanda, sem afetar a interface do usuário.

Desafios:

  • Dependência de conexão de rede:
  • A comunicação entre o cliente e o servidor depende de uma rede estável, o que pode impactar a performance em alguns cenários.

  • Gerenciamento de sessão:
  • Manter a sessão do usuário entre o cliente e o servidor pode ser desafiador, especialmente em sistemas mais complexos.

Qual escolher?

A escolha da arquitetura depende dos requisitos do seu projeto:

Arquitetura Monolítica é ideal para projetos pequenos, MVPs e equipes com menos experiência em arquiteturas distribuídas. Se a escalabilidade não for um problema imediato, esta abordagem oferece rapidez no desenvolvimento.

Arquitetura de Microsserviços é indicada para sistemas grandes, complexos ou com a necessidade de alta escalabilidade. Se você precisar de flexibilidade tecnológica e agilidade para implementar e manter diferentes partes do sistema de maneira independente, os microsserviços são a melhor opção.

Arquitetura Cliente-Servidor é adequada para sistemas web modernos onde o frontend precisa ser desacoplado do backend. Ideal para aplicações que utilizam APIs RESTful ou GraphQL, com a vantagem de permitir a escolha independente das tecnologias para cada camada do sistema.

Considerações finais

Não existe uma solução única para todos os cenários. Cada arquitetura tem seus pontos fortes e desafios, e a escolha ideal vai depender do tamanho e da complexidade do projeto, da experiência da equipe, e das necessidades de escalabilidade e manutenção do sistema. Ao entender as vantagens e limitações de cada abordagem, você estará mais preparado para tomar a melhor decisão para o seu próximo projeto!

Qual dessas arquiteturas você prefere? Deixe seu comentário abaixo!

Feito!

quarta-feira, 19 de março de 2025

Instruções de entrega do IRPF 2025

O prazo de entrega da Declaração Anual do Imposto de Renda Pessoa Física (IRPF) 2025, ano-calendário 2024, começou nesta segunda-feira, 17 de março, e segue até o próximo dia 30 de maio, às 23h59.

Pessoas físicas que receberam rendimentos tributáveis acima de R$ 33.888, assim como aquelas que obtiveram receita bruta da atividade rural acima de R$ 169.440, são obrigadas a declarar.

A declaração do imposto sobre a renda das pessoas físicas pode ser preenchida de forma online, pelo e-CAC, sem precisar baixar ou instalar nenhum programa. Outra maneira de preencher a declaração é baixando a versão para os SOs Windows, Linux, macOS.

Neste primeiro momento, os contribuintes não terão a declaração pré-preenchida para agilizar a entrega. De acordo com a Receita Federal, em 2025, o preenchimento dos campos do documento estará disponível ao público em 1º de abril. A data é a mesma da liberação do programa de preenchimento e entrega online e por dispositivos móveis pelo aplicativo Meu Imposto de Renda.

DECLARAÇÃO — A expectativa da Receita é alcançar, este ano, 57% das declarações por meio do sistema pré-preenchido. No ano passado, foram 41,2% nessa condição. Desde 2022, para fazer a declaração pré-preenchida, o cidadão precisa de uma conta no portal Gov.br de nível prata ou ouro, com Cadastro de Pessoa Física (CPF) e senha cadastrados. O documento pode ser acessado em qualquer plataforma (online, aplicativo para dispositivos móveis ou Programa Gerador da Declaração. O contribuinte que optar pela declaração pré-preenchida, após 1º de abril, tem prioridade na hora de receber a restituição.

declaração pré-preenchida virá com as seguintes informações:

  • Informações da declaração anterior do contribuinte: identificação, endereço
  • Rendimentos e pagamentos da Dirf, Dimob, DMED e Carnê-Leão
  • Rendimentos isentos em função de moléstia grave e códigos de juros
  • -Rendimentos de restituição recebidas no ano-calendário
  • Contribuições de previdência privada
  • Atualização do saldo de conta bancária e poupança
  • Atualização do saldo de Fundos de investimento
  • Imóveis adquiridos no ano-calendário
  • Doações efetuadas no ano-calendário
  • Informação de Criptoativos
  • Conta bancária/poupança ainda não declarada
  • Fundo de investimento ainda não declarado
  • Contas bancárias no exterior

RENDIMENTOS NO EXTERIOR — A partir deste ano, os dados de contas bancárias no exterior foram incluídos na declaração pré-preenchida, após a legislação determinar a tributação de offshores (empresas de investimentos em outros países) e rendimentos no exterior. Por causa da lei que antecipou a cobrança de Imposto de Renda sobre Fundos Exclusivos e tributou as offshores, os rendimentos no exterior passaram a ser tributados de forma definitiva na declaração de ajuste anual, com alíquota de 15%. Até 2023, o pagamento era feito mensalmente, mas passou a ser feito anualmente. Na declaração, os bens que representem investimentos no exterior passam a permitir a informação do rendimento e do imposto pago, tanto no Brasil como no exterior.

OUTRAS MUDANÇAS — A declaração terá poucas mudanças em relação à do ano passado. As principais são as situações em que o contribuinte está obrigado a entregar o documento, por causa do reajuste da faixa de isenção no ano passado.

Em relação às obrigatoriedades, as mudanças foram as seguintes:

  • Valor de rendimentos tributáveis anuais que obrigam a entrega da declaração subiu de R$ 30.639,90 para R$ 33.888
  • Limite da receita bruta de obrigatoriedade para atividade rural subiu de R$ 153.999,50 para R$ 169.440
  • Quem atualizou valor de bens imóveis e pagou ganho de capital diferenciado em dezembro de 2024 terá de preencher a declaração
  • Quem apurou rendimentos no exterior de aplicações financeiras e de lucros e dividendos passou a declarar anualmente
  • As demais obrigatoriedades foram mantidas.
  • Outra mudança é a maior prioridade para quem simultaneamente utilizou a declaração pré-preenchida e optou pelo recebimento da restituição via Pix. Até o ano passado, a prioridade era definida apenas com base na utilização de uma das duas ferramentas.

Três campos na declaração foram extintos:

  • título de eleitor;
  • consulado/embaixada (para residentes no exterior);
  • número do recibo da declaração anterior (em declarações on-line). MULTA — Quem enviar a declaração fora do prazo deverá pagar multa de 1% sobre imposto devido, com valor mínimo de R$ 165,74, ou de 20% do valor devido, prevalecendo o maior valor.

RESTITUIÇÕES — De acordo com documento publicado no Diário Oficial da União (DOU), as restituições (ano-base 2024) serão efetuadas em cinco lotes, no período de maio a setembro de 2025, conforme as seguintes datas:

  • primeiro lote: 30 de maio
  • segundo lote: 30 de junho
  • terceiro lote: 31 de julho
  • quarto lote: 29 de agosto
  • quinto e último lote: 30 de setembro.

Ao considerar as prioridades determinadas por lei, o pagamento das restituições seguirá a seguinte ordem:

  • idade igual ou superior a 80 anos
  • idade igual ou superior a 60 anos, pessoas com deficiência e pessoas com doença grave
  • pessoas cuja maior fonte de renda seja o magistério
  • pessoas que utilizaram a declaração pré-preenchida e que optaram por receber a restituição por PIX
  • pessoas que utilizaram a declaração pré-preenchida ou optaram por receber a restituição por PIX

MEU INSS — Aposentados, pensionistas e beneficiários de auxílios pagos pelo Instituto Nacional do Seguro Social (INSS) que receberam até R$ 2.824 por mês no ano passado não serão obrigados a entregar a declaração do IRPF 2025. O comprovante de rendimento de beneficiários da Previdência Social está disponível no Meu INSS (aplicativo ou site), pelo telefone 135 ou na rede bancária. O programa para preencher a declaração está disponível no site da Receita Federal. O download do sistema é o primeiro passo para o preenchimento do documento.

Como acessar o documento no Meu INSS

  1. Acesse o site https://meu.inss.gov.br/
  2. Clique em "Entrar com Gov.br"
  3. Insira o CPF para fazer o login ou cadastrar senha
  4. Desça a tela e encontre a aba "Outros Serviços"
  5. Nela, clique em "Ver Mais"
  6. Clique no ícone com a frase "Extrato do Imposto de Renda"
  7. Selecione o ano-calendário 2024
  8. Escolha o extrato que deseja
  9. Salve o documento em PDF
  10. Confira, a seguir, o cronograma completo do IRPF 2025:

Referências

Gov.BR

Feito!

quinta-feira, 13 de março de 2025

Gerenciando estados no React

No desenvolvimento de aplicações React, gerenciar o estado de forma eficiente é um desafio essencial. Com o crescimento do projeto, a escolha da abordagem correta pode impactar a performance, manutenção e escalabilidade da aplicação. Entre as opções mais populares, temos:

  • Context API
  • Solução nativa do React para compartilhamento de estado.

  • Redux
  • Um dos gerenciadores de estado mais amplamente usados.

  • Zustand
  • Uma alternativa minimalista e eficiente para estados globais.

Neste artigo, vamos comparar essas soluções e entender quando utilizar cada uma.

Context API: O Básico Integrado ao React

O Context API é a solução nativa do React para compartilhar estado entre componentes sem precisar passar props manualmente (prop drilling). Ele é simples e eficiente para estados globais leves, como temas, autenticação e preferências do usuário.

Vantagens

  • Nativo do React, sem dependências extras.
  • Simples de implementar e fácil de entender.
  • Ideal para estados compartilhados pequenos.

Desvantagens

  • Pode impactar a performance ao re-renderizar muitos componentes.
  • Não possui middlewares nativos para manipulação avançada do estado.

Quando usar?

  • Gerenciamento de temas (dark/light mode).
  • Controle de autenticação (usuário logado).
  • Pequenos estados compartilhados entre múltiplos componentes.

Redux: Controle total sobre o estado

O Redux é uma biblioteca popular para gerenciamento de estado global, baseada no conceito de store centralizada e fluxo unidirecional. Ele é útil para aplicações grandes que precisam de previsibilidade e escalabilidade no gerenciamento de estado.

Vantagens

  • Estado centralizado e previsível.
  • Ferramentas poderosas como Redux DevTools.
  • Permite middlewares como Redux Thunk e Redux Saga.

Desvantagens

  • Código verboso e complexidade maior.
  • Pode ser overkill para pequenos projetos.
  • Performance pode ser impactada se não otimizado corretamente.

Quando usar?

  • Aplicações grandes com estados complexos.
  • Controle detalhado sobre mudanças no estado.
  • Necessidade de debugging e ferramentas avançadas.

Zustand: Simplicidade e Performance

O Zustand é uma alternativa mais leve e performática ao Redux. Ele usa uma store baseada em hooks, eliminando a necessidade de boilerplate excessivo e mantendo a eficiência no gerenciamento do estado.

Vantagens

  • API simples e intuitiva.
  • Melhor performance do que Redux.
  • Menos código e menos configuração.

Desvantagens

  • Menos popular do que Redux (menos suporte da comunidade).
  • Pode ser insuficiente para projetos extremamente complexos.

Quando usar?

  • Aplicações médias ou pequenas que precisam de estado global.
  • Quando performance e simplicidade são prioridades.
  • Substituto do Redux em projetos sem necessidade de middlewares avançados.

Comparação entre as abordagens

Critério Context API Redux Zustand
Facilidade de uso Fácil Moderado/Difícil Fácil
Performance Boa (para pequenos estados) Média (pode gerar re-renderizações) Excelente
Boilerplate Baixo Alto Baixo
Melhor para Estados simples Grandes aplicações Aplicações médias
Popularidade Alta Muito Alta Média

Considerações finais:

A escolha do gerenciador de estado ideal depende do tamanho da aplicação e da complexidade do estado:

Para pequenos estados globais, o Context API é suficiente.

Se precisa de escalabilidade e ferramentas avançadas, use Redux.

Se deseja simplicidade e performance sem perder flexibilidade, use Zustand.

Cada opção tem seu espaço no ecossistema React, e a melhor decisão virá da análise das necessidades do seu projeto.

Feito!

Bloqueador de anúncios detectado

Desative seu adblock para poder acessar este site.