O que você vai aprender?
Você será equipado com o conhecimento e as estratégias necessárias para transformar a sua forma de programar em Delphi. Aqui está o que você vai aprender:
Refatoração Estratégica: Como simplificar o código através da refatoração, dividindo grandes blocos de código em funções ou métodos menores e mais gerenciáveis.
Polimorfismo Prático: Aplicar o polimorfismo para criar um design de código flexível, utilizando herança e interfaces para tratar diferentes comportamentos de forma elegante.
Tabelas de Decisão: Implementar tabelas de decisão como uma alternativa a múltiplos "IFs" aninhados, simplificando a tomada de decisão no código.
Tratamento Elegante de Erros: Aperfeiçoar o uso de exceções para controlar o fluxo de autenticação e outros processos, reduzindo a necessidade de "IFs" para verificar erros.
Encapsulamento com Strategy: Utilizar o padrão Strategy para encapsular uma série de algoritmos, tornando-os intercambiáveis e simplificando a lógica condicional.
Gerenciamento de Estado com State: Aprender a usar o padrão State para permitir que um objeto altere seu comportamento quando seu estado interno muda, eliminando a necessidade de condicionais complexas.
Concisão com Operadores Ternários: Como e quando usar operadores ternários para substituir condicionais complexas, tornando o código mais conciso e legível.
Legibilidade e Manutenção: Estratégias para melhorar a legibilidade do código e facilitar a manutenção, tornando o trabalho em equipe mais eficiente.
Padrões de Projeto Adicionais: Além de Singleton, Factory e Observer, explorar outros padrões de design clássicos aplicáveis ao Delphi para resolver desafios comuns de programação.
Aplicabilidade Universal dos Conceitos: Como os conceitos e técnicas apresentados, embora focados no Delphi, podem ser aplicados a qualquer linguagem de programação, ampliando a versatilidade do leitor como desenvolvedor.
Neste guia inovador, são abordadas estratégias avançadas para escrever códigos de forma clara e manutenível, sem depender excessivamente de "IFs". O livro explora a refatoração inteligente e o uso de padrões de design, como Strategy e State, para promover uma programação eficaz. Os ensinamentos, embora baseados em Delphi, são universais e aplicáveis a qualquer linguagem, incentivando a melhoria da legibilidade, manutenção e colaboração no desenvolvimento de software.

COMO QUEBRAR O CICLO DOS IF’s
Ah, então você também já se viu naquele labirinto de "IFs", né? Cada vez que a gente adiciona mais um, parece que o código vai ficando mais e mais confuso, até chegar num ponto que a gente mesmo mal consegue entender o que escreveu. Se você tá cansado dessa dor de cabeça, tenho uma boa notícia: este livro é tipo um mapa do tesouro pra quem quer se livrar desse emaranhado.
Neste livro você irá mergulhar de cabeça em técnicas e práticas que são verdadeiros game-changers. Não importa se o Delphi te faz se sentir como um explorador de terras antigas, as dicas deste livro são como ferramentas modernas que vão ajudar a pavimentar um novo caminho no seu jeito de programar.
Como quebrar esse ciclo vicioso dos "IFs" através da refatoração, transformando aquele bloco monolítico de código em funções ou métodos bem mais digeríveis, cada um cuidando do seu quadrado. Isso não só vai fazer seu código respirar melhor, mas também facilita pra caramba na hora de entender e modificar qualquer coisa lá na frente.
Esse livro é um convite pra você repensar a forma como escreve código, deixando pra trás as velhas práticas que mais atrapalham do que ajudam. Então, se você tá a fim de deixar a dor de cabeça dos "IFs" no passado e fazer as pazes com o seu código, bora embarcar nessa jornada juntos!
CONFIRA O INDICE COMPLETO DO LIVRO
Indo além da Isla Nublar 9
As 21 Leis dos Desenvolvedores Anti-IF 13
Entendendo o IF
e Seus Impactos 21
A psicologia do IF: Como o uso excessivo do IF afeta a clareza do código. 22
O Labirinto do IF 24
O Peso Cognitivo 28
Estratégias de Redução 29
Encerrando o Labirinto 31
O Impacto Cognitivo do IF 32
Efeitos Estruturais no Código 33
Superando a Psicologia do IF 34
Análise de código com IF: Exemplos do impacto do IF na legibilidade e manutenção do código. 35
Impacto na Legibilidade 36
Impacto na Manutenção 43
Estratégias de Melhoria 44
IF e performance: Quando o IF pode ser um problema de desempenho. 45
Impacto na Predição de Ramificação 46
Entendendo a Predição de Ramificação em Delphi 47
O Desafio das Previsões Erradas em Delphi 48
Como a Predição de Ramificação Funciona 49
Implicações Reais 51
Código Desnecessariamente Complexo 52
Conceito de Tabelas de Pesquisa 53
Vantagens das Tabelas de Pesquisa 54
Outras Estratégias de Otimização 56
Alternativas ao IF 58
Uso de Polimorfismo: Como o polimorfismo pode substituir condicionais complexos. 59
Aplicando Polimorfismo 60
Vantagens do Polimorfismo 62
Padrões de Projeto: Explorando padrões como Strategy, State e Command para evitar IFs. 63
Padrão Strategy 64
Padrão State 65
Padrão Command 67
Técnicas de Refatoração: Refatorando código existente para reduzir IFs. 68
Substituição por Polimorfismo 69
Uso de Estratégias ou Comandos 70
Tabelas de Pesquisa 71
Simplificação de Condições 72
Early Return 73
Técnicas Avançadas de Programação Sem IF 76
Programação Funcional: Utilização de funções, mapeamento e filtragem em vez de condicionais. 77
Funções Puras e Imutabilidade 77
Mapeamento e Filtragem Sem IFs 78
Mapeamento em Delphi 78
Filtragem em Delphi 83
Definindo o Tipo da Função de Filtragem 84
Implementação de FilterArray 85
Uso da Função FilterArray 86
Vantagens e Considerações 87
Uso de Eventos e Delegates: Como a programação baseada em eventos pode reduzir a necessidade de IFs.
Reduzindo IFs com Eventos e Delegates 90
Refatoração 100
Refatoração de um sistema legado: Passo a passo da remoção de IFs em um projeto real. 101
Comparação de desempenho: Antes e depois da remoção de IFs em termos de performance e manutenibilidade.
Práticas Recomendadas e Dicas 116
Quando usar IF é aceitável: Identificando cenários onde o IF ainda faz sentido. 120
Dicas para evitar o uso excessivo de IF: Checklist para desenvolvedores. 125
Cultura de código limpo: Promovendo práticas que incentivem a escrita de código eficiente. 129
A Importância da Legibilidade 130
Refatoração e Simplificação 131
Princípios de Design e Padrões 132
Testes e Manutenção 133
2 SUPER TREINAMENTO EM VÍDEO DE BÔNUS
Ministrados por Thulio Bittencourt, um dos mais reconhecidos MVPs da Embarcadero quando o assunto é qualidade de código e Interfaces


+