Escolar Documentos
Profissional Documentos
Cultura Documentos
Introdução: 02
Código limpo 08
Princípios sólidos 10
Próximos passos 13
GEXPERTS
GExperts adiciona alguns recursos muito úteis ao Delphi, como GrepSearch
Alt + Shift + S, Lista de procedimentos Ctrl + G, RenameComponents e
outros atalhos muito úteis.
Chegaremos a esses atalhos no Capítulo Dois. Dê uma olhada nas
ferramentas Componentes ao Código e Lista de Procedimentos também.
Download: https://blog.dummzeuch.de/experimental-gexperts-version/
DDEVEXTENSIONS
Adoramos DDevExtensions para a caixa de diálogo de substituição Find
Unit/Use Unit (Alt + F11).
A caixa de diálogo padrão do Delphi Use-Unit mostra apenas os arquivos do
grupo de projetos.
DDevExtensions substitui a caixa de diálogo por uma que não mostra
apenas o grupo de projetos mas também todos os arquivos que o
compilador pode ver. Nunca mais navegue para os usos seção e insira uma
unidade manualmente - basta pressionar Alt-F11.
Download: https://github.com/DelphiPraxis/DDevExtensions
SPRING FRAMEWORK
O framework Spring é uma biblioteca de código aberto com um conjunto
muito útil de classes de coleção baseadas em interface, por exemplo, o IList
de interface genérica, dicionários, etc. Ele também contém um ótimo
framework de injeção de dependência e várias bibliotecas de criptografia.
Download: https://bitbucket.org/sglienke/spring4d/src/master/
MADEXCEPT
Esta ferramenta é usada para enviar informações e dados sobre falhas e
exceções que acontecem na produção ambiente para os desenvolvedores.
Outra ferramenta que pode ser usada para isso é o Eurekalog. Eu usei os
dois e não tenho uma clara preferência. Mas pelo menos: use um deles, ele
irá ajudá-lo a encontrar a fonte de bugs.
http://madshi.net/
https://www.youtube.com/watch?v=chtkIdU1avA&ab_channel=T2Ti
CN Pack: https://www.cnpack.org/index.php?lang=en
Testinsight: https://bitbucket.org/sglienke/testinsight/wiki/Home
Fique longe do rato!
Atalhos IDE são a maneira mais fácil de acelerar o desenvolvimento. Sem
dúvida, a maioria de nós conhecemos os atalhos mais importantes em
Delphi, mas vamos compartilhar quais eu uso regularmente.
Bookmarks
Salve os pontos no código onde você quer voltar. Navegue facilmente pelo
código. Defina um marcador com Ctrl + Shift + <Number> e use-o com Ctrl
+ <Number>.
Salte entre a interface de métodos e a implementação com Ctrl + Shift +
seta para cima ou Ctrl + Shift + seta para baixo. Instale e use o Grep Search
de GExperts, pesquisando mais rápido e representando os resultados em
uma visão melhor do que o Delphi IDEvia Alt + Shift + S. (GExperts) Pesquise
e vá para um método com Ctrl + G.
Use Alt + F11 para adicionar uma unidade ao seu código (use com
DDevExtensions).
Use um gerenciador de área de transferência para copiar várias coisas sem
trocar continuamente entre copiar/colar, copiar/colar, etc. Preferimos CLCL
(https://www.nakka.com/soft/clcl/index_eng.html) para o histórico da
área de transferência. Você pode usá-lo facilmente pressionando Alt + C.
Apesar de não ser um sugestão específica do Delphi, acho que será de
grande ajuda.
OUTROS ATALHOS POPULARES SÃO
Os óbvios
Salvar: Ctrl + S e salvar tudo: Ctrl + Shift + S
Execute: F9, compile: Ctrl + F9 e construa: Shift + F9
Parar de executar/depurar: Ctrl + F2
Adicione um arquivo ao projeto: Shift + F11
Complete uma classe: Ctrl + Shift + C (ou seja, crie os métodos no seção de
implementação).
Declare uma variável: Ctrl + Shift + V
Declare uma variável de classe: Ctrl + Shift + D (o mesmo que V, mas em
vez de a variável local, você terminará com uma variável de classe).
Renomear uma variável: Ctrl + Shift + E
Vá para a unidade: Ctrl + Enter (quando o cursor estiver no nome de uma
unidade). Mais rápido do que Ctrl + clique, mas só funciona se o Delphi
puder localizar a unidade.
Alinhe suas linhas de código com Ctrl + Alt + Z (GExperts).
Sincronize os parâmetros do procedimento ou da função: Ctrl + Alt + Shift
+P
Atalhos completo
https://docwiki.embarcadero.com/RADStudio/Alexandria/en/Default_Key
board_Shortcuts
Código limpo
É impossível exagerar a importância do Código Limpo. Escrever código
limpo faz seu código mais legível, mais fácil de manter e mais fácil de
entender. Se você não leu o livro 'Clean Code' de Robert C. Martin, eu o
encorajo a fazer assim. Isso realmente ajuda você a escrever um código
melhor. A definição mais popular de código limpo é o código que é fácil de
entender e fácil de mudar. Embora isso possa parecer simples, é bastante
difícil de executar. Manter seu código simples, você deve reduzir a
complexidade o máximo possível. Isso significa que mais simples é sempre
melhor. No entanto, você nunca deve sacrificar a legibilidade ou
manutenção para tornar seu código mais simples. Existem algumas lições
gerais a serem aprendidas se você quiser escrever um código limpo. Como
um desenvolvedor delphi você provavelmente trabalha com código novo e
legado. Especificamente para legado código, a regra do escoteiro se aplica:
deixe o acampamento mais limpo do que você o encontrou. Certifique-se
de melhorar o código quando estiver refatorando. Dividir funções maciças
em Menores; dê nomes sensatos às variáveis; e tornar o código legível.
Afinal, você gasta muito do seu tempo lendo código, não escrevendo!
Então, por que não ajudar a si mesmo e outros para facilitar a parte da
leitura?
A verdade só pode ser encontrada em um lugar: o código Robert C.Martin
Para manter seus procedimentos e funções limpos, tente mantê-los o
menor possível, e deixá-los fazer apenas uma coisa. Se sua função está
fazendo mais de “uma coisa”, é um momento perfeito para extrair isso para
outra função. Essa é uma das razões pelas quais fazemos não misture regras
de negócios com código GUI. Não misturamos consultas SQL com
comunicação protocolos. Mantemos o código que é alterado por diferentes
motivos separados para que alterações em uma parte não quebram outras
partes. Em Delphi isso significa que você não escreva sua lógica de negócios
por trás do clique de um botão, mas também que você não use um módulo
de dados para recuperar dados de um banco de dados e gerar relatórios.
Os procedimentos e funções também devem ter o menor número possível
de parâmetros. Zero seria ser o melhor, um ou dois está bem, três e acima,
não. Porque se uma função ou procedimento requer mais de 3 parâmetros,
é provável que alguns desses parâmetros possam ser envolto em uma
classe.
Use nomes facilmente pronunciados para variáveis e funções e
procedimentos, e não usar abreviaturas. Talvez você economize um
segundo para digitar a função AddCmt, mas parece horrível, e não é fácil
lembrar ou procurar.
Ser consistente. Use uma palavra para funções semelhantes. Não use “get”
em uma classe e “buscar” em outro. Comentários são difíceis de manter e
não dizem a verdade sobre o código, então tente Evite-os. Eles estão quase
sempre desatualizados ou redundantes. Com a ajuda das dicas já foi
mostrado, seu código deve se explicar.
Além disso, não comente o código não utilizado, apenas exclua-o. Você tem
um sistema de controle de origem de qualquer maneira (você tem um,
certo?). A única razão para usar comentários é para expressar a importância
de alguns pontos no código.
Nomes de uma única letra representam um problema particular, pois não
são fáceis de localizar muito texto. Nomes de uma única letra só podem ser
usados como variáveis locais dentro de procedimentos. O comprimento de
um nome de variável deve corresponder ao tamanho de seu escopo. E por
último, evite codificações como colocar L na frente de variáveis locais. Na
GDK também não use o prefixo A com parâmetros. A única exceção a esta
regra para nós é nos campos private de uma classe, onde usamos o prefixo
F.
3. The Liskov Substitution Principle: Os objetos devem ser substituíveis por seus
subtipos.
Quanto mais você automatizar, melhor. Por isso é recomendável que você
crie seus próprios modelos ao vivo para código usado com frequência em
seu programa. Este pode ser feito facilmente via Arquivo -> Novo -> Outro
-> Modelo de Código. Para maiores informações sobre a estrutura dos
templates, acesse o wiki da Embarcadero. Faça uso das enormes bibliotecas
existentes do Delphi. Quase tudo que você pode pensar foi escrito nos
últimos 27 anos de Delphi. Faça uso de listas como
https://github.com/Fr0sT-Brutal/awesome-pascal para encontrar a
ferramenta ou biblioteca certa para o trabalho.