Início

Mais uma Aplicação Elegante do Enum

Este artigo é a parte 2 de 5 na série Dart

Mais uma Aplicação Elegante do Enum Uma aplicação bastante elegante de enhanced enums em Dart é na definição de rotas para uso em ferramentas como o GoRoute. Abaixo, apresento uma abordagem clássica utilizando uma classe com constantes nomeadas: Nesta estrutura, Route possui um construtor privado, garantindo que novas rotas só possam ser declaradas dentro do […]

CONSULTE MAIS INFORMAÇÃO

Sports Changelog

2025/07/31 clubs-05 – rudsonalves Separate athlete and manager club getters and refine view logic This commit refactors the club user case and view model to clearly distinguish between athlete and manager clubs. It updates the clubs view to consume these new getters directly, replacing the generic selection method and inlining role-based branching. These changes enhance […]

CONSULTE MAIS INFORMAÇÃO

Enumerações em Dart com Interfaces e Polimorfismo

Este artigo é a parte 1 de 5 na série Dart

Índice1. Introdução1.1. Por que enriquecer Enumerações?1.2. Enumerações Aprimoradas no Dart 32. Adicionando um label a Enumeração3. Polimorfismo com Enumerações via interface4. Interface Position4.1. Implementando Position nos Enumerações5. Validando consistência em Sportsman6. Método factory fromLabel7. ConclusãoIntrodução Enumerações no Dart são uma ferramenta poderosa para restringir o escopo de nomes a conjuntos específicos de valores. Contudo, na […]

CONSULTE MAIS INFORMAÇÃO

Tipos Primitivos no Dart?

Volta e meia vejo desenvolvedores de Dart tratando os tipos mais fundamentais da linguagem como “primitivos”. Muitas vezes isso se deve ao hábito ou influência de outras linguagens – como Java, C, C++ e C# – onde realmente há uma distinção entre tipos primitivos (como int, float e boolean) e classes ou objetos. Entretanto, em […]

CONSULTE MAIS INFORMAÇÃO

Princípio da Segregação de Interface

Este artigo é a parte 5 de 5 na série SOLID

Índice1. O Problema da Interface “Gorda”2. Problemas de Não Seguir o ISP3. Exemplo Prático em Dart4. Benefícios do Princípio da Segregação de Interface5. ResumoO Princípio da Segregação de Interface (Interface Segregation Principle, ou ISP) é o quarto dos cinco princípios SOLID e foca em garantir que as interfaces sejam coesas e que as classes não […]

CONSULTE MAIS INFORMAÇÃO

Princípio da Inversão de Dependência

Este artigo é a parte 4 de 5 na série SOLID

Índice1. Entendendo o Princípio2. Problemas de Não Seguir o DIP3. Exemplo Prático em Dart4. Benefícios do Princípio da Inversão de Dependência5. ResumoO Princípio da Inversão de Dependência (Dependency Inversion Principle, ou DIP) é o último dos cinco princípios SOLID e tem como objetivo reduzir o acoplamento entre módulos de um sistema, aumentando a flexibilidade e […]

CONSULTE MAIS INFORMAÇÃO

Reatividade no Flutter: ValueNotifier vs MobX

Índice1. O Cenário Comum: MobX e Computed Values2. Substituindo o MobX com ValueNotifier e Listenable.merge3. Análise da Abordagem com ValueNotifier4. Integrando com a Interface do Usuário usando ValueListenableBuilder5. ConclusãoAo desenvolver um aplicativo Flutter, o gerenciamento de estado e a reatividade são aspectos centrais que afetam diretamente a manutenção do código e a experiência do usuário. […]

CONSULTE MAIS INFORMAÇÃO

Princípio de Substituição de Liskov

Este artigo é a parte 3 de 5 na série SOLID

Índice1. Como Funciona o Princípio de Substituição de Liskov?2. Problemas de Não Seguir o LSP3. Exemplo Prático em Dart4. Benefícios do Princípio de Substituição de Liskov5. ResumoO Princípio de Substituição de Liskov (Liskov Substitution Principle, ou LSP) é o terceiro dos cinco princípios SOLID e é fundamental para garantir a corretude e a robustez de […]

CONSULTE MAIS INFORMAÇÃO

Princípio do Aberto/Fechado

Este artigo é a parte 2 de 5 na série SOLID

Índice1. O Que Significa Estar Aberto para Extensão e Fechado para Modificação?2. Problemas de Não Seguir o OCP3. Exemplo Prático em Dart4. Benefícios do Princípio do Aberto/Fechado5. ResumoO Princípio do Aberto/Fechado (Open-Closed Principle, ou OCP) é o segundo dos cinco princípios SOLID e é essencial para criar códigos que sejam fáceis de estender e manter. […]

CONSULTE MAIS INFORMAÇÃO

Princípio da Responsabilidade Única

Este artigo é a parte 1 de 5 na série SOLID

Índice1. O Que Significa Responsabilidade Única?2. Problemas de Não Seguir o SRP3. Exemplo Prático em Dart4. Benefícios do Princípio da Responsabilidade Única5. ResumoO Princípio da Responsabilidade Única (Single Responsibility Principle, ou SRP) é o primeiro dos cinco princípios SOLID e se refere a uma das diretrizes mais fundamentais para criar código limpo, bem organizado e […]

CONSULTE MAIS INFORMAÇÃO