Difference between revisions of "Policies/Kdelibs Coding Style/pt-br"

Jump to: navigation, search
(Created page with "Para usar o script, inclua-o em seu {{path|~/.vimrc}} assim:")
(Created page with "Muitas configurações podem ser alteradas pela edição do grupo "kde-emacs" via <tt>M-x customize-group</tt>.")
(3 intermediate revisions by one user not shown)
Line 18: Line 18:
 
Exemplo:
 
Exemplo:
 
<syntaxhighlight lang="cpp-qt">
 
<syntaxhighlight lang="cpp-qt">
// wrong
+
// errado
 
KProgressBar *prbar;
 
KProgressBar *prbar;
 
QString prtxt, errstr;
 
QString prtxt, errstr;
Line 165: Line 165:
 
</syntaxhighlight>
 
</syntaxhighlight>
  
Many settings can be changed by editing the "kde-emacs" group via <tt>M-x customize-group</tt>.
+
Muitas configurações podem ser alteradas pela edição do grupo "kde-emacs" via <tt>M-x customize-group</tt>.
  
 
Para mais informações, incluindo quais teclas estão mapeadas e quais configurações extras você pode adicionar ao seu .emacs, por favor, verifique <tt>kde-emacs.el</tt>
 
Para mais informações, incluindo quais teclas estão mapeadas e quais configurações extras você pode adicionar ao seu .emacs, por favor, verifique <tt>kde-emacs.el</tt>
Line 178: Line 178:
  
  
Document started by Urs Wolfer. Some parts of this document have been adopted from the Qt Coding Style document posted by Zack Rusin on kde-core-devel.
+
Documento criado por Urs Wolfer. Algumas partes desse documento foram adotadas do documento Qt Coding Style postado por Zack Rusin no kde-core-devel.
  
[[Category:Policies]] [[Category:C++]]
+
[[Category:Políticas]] [[Category:C++]]

Revision as of 02:05, 29 April 2012

Other languages:Czech 44% • ‎English 100% • ‎Finnish 92% • ‎Brazilian Portuguese 92% • ‎Russian 44% • ‎Chinese (China) 8%

Esse documento descreve o estilo de código recomendado para kdelibs. Ninguém é forçado a usá-lo, mas para ter uma formatação consistente dos seus arquivos de código-fonte é recomendado fazer uso dele.

Em síntese: O estilo de código da Kdelibs segue o estilo de código do Qt 4.

Contents

Indentação

  • Sem abas
  • 4 espaços ao invés de uma aba

Declaração de variável

  • Cada declaração de variável em uma nova linha
  • Cada nova palavra no nome de uma variável começa com uma letra maiúscula (o chamado camelCase)
  • Evitar abreviações
  • Usar nomes significativos. Não use nomes curtos, exceto:
    • Nomes de variáveis com um único caractere podem indicar contadores e variáveis temporárias cujo propósito é óbvio
    • Variáveis e funções começam com uma letra minúscula

Exemplo:

// errado
KProgressBar *prbar;
QString prtxt, errstr;
 
// certo
KProgressBar *downloadProgressBar;
QString progressText;
QString errorString;

Espaço em branco

  • Use linhas em branco para agrupar comandos
  • Use somente uma linha em branco
  • Use um espaço depois de cada palavra-chave
  • Para ponteiros ou referências, use um único space antes de '*' ou '&', nenhum depois
  • Não use espaço após um cast

Exemplo:

// errado
QString* myString;
if(true){
}
 
// certo
QString *myString;
if (true) {
}

Chaves

Como uma regra básica, a abertura da chave fica na mesma linha do comando que inicia o bloco.

Exemplo:

// errado
if (true)
{
}
 
// certo
if (true) {
}

Exceção: A chave de abertura das implementações de função, declarações de classes, struct's e namespace's deve ser sempre colocada no início da linha seguinte.

Exemplo:

void debug(int i)
{
    qDebug("foo: %i", i);
}
 
class Debug
{
};

Use as chaves mesmo quando o corpo de um bloco condicional contiver apenas uma linha.

Exemplo:

// errado
if (true)
    return true;
 
for (int i = 0; i < 10; ++i)
    qDebug("%i", i);
 
// certo
if (true) {
    return true;
}
 
for (int i = 0; i < 10; ++i) {
    qDebug("%i", i);
}

Comando switch

Case labels ficam na mesma coluna do switch

Exemplo:

switch (myEnum) {
case Value1:
    doSomething();
    break;
case Value2:
    doSomethingElse();
    // fall through
default:
    defaultHandling();
    break;
}

Quebra de linha

Tente manter linhas menores que 100 caracteres, inserindo quebras de linha conforme for necessário.

Qt Includes

  • Se você adicionar #includes para as classes do Qt, use o nome do módulo e da classe. Isso permite que a biblioteca seja utilizada sem uso excessivo de parâmetros para o compilador

Exemplo:

// errado
#include <QString>
 
// certo
#include <QtCore/QString>

Formatação automática com Artistic Style (astyle)

Você pode usar astyle (>=1.23) para formatar o código ou testá-lo se você tiver seguido esse documento. Execute o seguinte comando:

astyle --indent=spaces=4 --brackets=linux \
       --indent-labels --pad=oper --unpad=paren \
       --one-line=keep-statements --convert-tabs \
       --indent-preprocessor \
       `find -type f -name '*.cpp'-or -name '*.cc' -or -name '*.h'`

Com astyle (>=2.01) você precisa executar o seguinte comando:

astyle --indent=spaces=4 --brackets=linux \
       --indent-labels --pad-oper --unpad-paren --pad-header \
       --keep-one-line-statements --convert-tabs \
       --indent-preprocessor \
       `find -type f -name '*.cpp' -or -name '*.cc' -or -name '*.h'`

Um shell script relacionado pode ser encontrado para unix em kdesdk/scripts/astyle-kdelibs e para windows em kdesdk/scripts/astyle-kdelibs.bat.

Scripts para Emacs e Vim

O diretório "scripts" no módulo kdesdk contém, entre outras coisas, algumas adições úteis para os editores de texto Emacs e Vim que tornam mais fácil editar código do KDE code.

Emacs

O diretório kde-emacs contém um conjunto de mapeamento de teclas, macros e código útil em geral. Isso é compatível com GNU Emacs e XEmacs.

Para iniciar o uso de kde-emacs, adicione o seguinte para seu .emacs:

(add-to-list 'load-path "/path/to/kde-emacs")
(require 'kde-emacs)

Muitas configurações podem ser alteradas pela edição do grupo "kde-emacs" via M-x customize-group.

Para mais informações, incluindo quais teclas estão mapeadas e quais configurações extras você pode adicionar ao seu .emacs, por favor, verifique kde-emacs.el

Vim

Você pode encontrar um script para o vim em kdesdk/scripts/kde-devel-vim.vim que o ajuda a manter o correto estilo de código. Além de utilizar o estilo da kdelibs por padrão, ele automaticamente utilizará o estilo do Solid e kdepim quando necessário.

Para usar o script, inclua-o em seu ~/.vimrc assim:

source /path/to/kde/sources/kdesdk/scripts/kde-devel-vim.vim


Documento criado por Urs Wolfer. Algumas partes desse documento foram adotadas do documento Qt Coding Style postado por Zack Rusin no kde-core-devel.


KDE® and the K Desktop Environment® logo are registered trademarks of KDE e.V.Legal