Differences
This shows you the differences between two versions of the page.
| Both sides previous revision Previous revision Next revision | Previous revision | ||
|
pt:manual:contrib:coding_style_guidelines [2020/04/27 02:46] i3_relativism [Guia de Estilo de Desenvolvimento do Codigo HyperbolaBSD] |
pt:manual:contrib:coding_style_guidelines [2025/03/04 23:59] (current) luck02 [Descrição] |
||
|---|---|---|---|
| Line 1: | Line 1: | ||
| - | ... (WIP) | + | ...(WIP) |
| + | ====== Diretrizes do Modelo de Desenvolvimento do Código HyperbolaBSD ====== | ||
| - | ====== Diretrizes de Estilo de Desenvolvimento do Codigo HyperbolaBSD ====== | + | ===== Descrição |
| - | + | Este artigo específica o modelo preferido para o desenvolvimento do código fonte do kernel <color # | |
| - | ... (WIP) | + | |
| - | + | ||
| - | ===== Description ===== | + | |
| - | + | ||
| - | This article specifies the preferred style for kernel | + | |
| - | These guidelines should be followed for all new code. In general, code can be considered | + | |
| <code c> | <code c> | ||
| /* | /* | ||
| - | | + | |
| */ | */ | ||
| /* | /* | ||
| - | | + | |
| */ | */ | ||
| - | /* Most single-line comments look like this. */ | + | /* A maior parte dos comentários de linha única representa-se assim. */ |
| /* | /* | ||
| - | | + | |
| - | | + | |
| */ | */ | ||
| </ | </ | ||
| - | Kernel | + | Os arquivos |
| <code c> | <code c> | ||
| - | #include < | + | #include < |
| </ | </ | ||
| - | If it's a network program, put the network | + | Se for um programa de rede, ponha o arquivo |
| <code c> | <code c> | ||
| Line 42: | Line 37: | ||
| </ | </ | ||
| - | Then there' | + | Deixe uma linha em branco, seguida por arquivos<color # |
| - | Global pathnames are defined in <color # | + | Pathnames globais estão definidos em <color # |
| <code c> | <code c> | ||
| Line 50: | Line 45: | ||
| </ | </ | ||
| - | Then there' | + | Deixe uma linha em branco, seguida para os arquivos |
| <code c> | <code c> | ||
| - | #include " | + | #include " |
| </ | </ | ||
| - | All functions are prototyped somewhere. | + | Todas as funções necessitam serem inicializadas com um protótipo da mesma. |
| - | Function prototypes for private functions | + | Protótipos de funções privadas |
| - | Functions used from other parts of the kernel | + | Funções usadas por outras partes do kernel |
| - | Functions that are used locally in more than one module go into a separate | + | Funções que são utilizadas localmente em mais de um módulo fonte, apresentam-se num arquivo |
| - | Prototypes should not have variable names associated with the types; i.e., | + | Protótipos não deveram incluir nomes de variáveis com os tipos; ex., |
| <code c> | <code c> | ||
| Line 76: | Line 71: | ||
| </ | </ | ||
| - | Prototypes may have an extra space after a tab to enable function names to line up: | + | Protótipos poderam ter um espaço |
| <code c> | <code c> | ||
| Line 83: | Line 78: | ||
| </ | </ | ||
| - | There should be no space between the function name and the argument list. | + | Não deverá haver espaço entre o nome da função e a lista dos argumentos. |
| - | Use <color # | + | Utilize |
| <code c> | <code c> | ||
| Line 91: | Line 86: | ||
| </ | </ | ||
| - | In header | + | Nos arquivos |
| - | Macros | + | Macros |
| <code c> | <code c> | ||
| Line 102: | Line 97: | ||
| </ | </ | ||
| - | Enumeration values are all uppercase. | + | Valores de enumeração são todos em **!?!uppercase!?!**. |
| <code c> | <code c> | ||
| Line 108: | Line 103: | ||
| </ | </ | ||
| - | When defining unsigned | + | Na definição de integers |
| - | When declaring variables in structures, declare | + | Na declaração de variáveis nas estruturas, declare |
| - | Major structures should be declared at the top of the file in which they are used, or in separate | + | Estruturas mais relevantes deverão ser declaradas no topo do arquivo que serão usadas, ou nos arquivos |
| <code c> | <code c> | ||
| Line 123: | Line 118: | ||
| </ | </ | ||
| - | Use <color # | + | Utilize macros |
| <code c> | <code c> | ||
| Line 135: | Line 130: | ||
| </ | </ | ||
| - | Avoid using typedefs | + | Evite utilizar |
| <code c> | <code c> | ||
| /* | /* | ||
| - | | + | |
| - | | + | |
| - | | + | |
| */ | */ | ||
| int | int | ||
| Line 150: | Line 145: | ||
| </ | </ | ||
| - | For consistency, <color # | + | Para haver consistencia, <color # |
| <code c> | <code c> | ||
| Line 176: | Line 171: | ||
| </ | </ | ||
| - | Use a space after keywords | + | Utilize um espaço depois das palavras chave (<color # |
| <code c> | <code c> | ||
| Line 194: | Line 189: | ||
| </ | </ | ||
| - | Parts of a <color # | + | Algumas partes de um <color # |
| <code c> | <code c> | ||
| Line 203: | Line 198: | ||
| </ | </ | ||
| - | Indentation is an 8 character | + | Identação é um **!?tab?!** de 8 caractres. Identaçãoo de segundo nível são quatro espaços. Todo o código deve caber em 80 colunas. |
| <code c> | <code c> | ||
| Line 212: | Line 207: | ||
| </ | </ | ||
| - | Do not add whitespace at the end of a line, and only use tabs followed by spaces to form the indentation. Do not use more spaces than a tab will produce and do not use spaces in front of tabs. | + | Não adicione espaços em branco no final da linha, e somente utilize **!?tabs?!** seguidos de espaços para criar a identação. Não utilize mais espaços que um **!?tab?!** ira produzir, e não utilize estes antes de espaços. |
| - | Closing and opening braces go on the same line as the else. | + | Abertura e fechamento de parentises apresentam-se na mesma linha que os anteriores. Parentises desnecessarios poderam ser omitidos, a não ser que estes causem um erro de compilamento. |
| <code c> | <code c> | ||
| Line 226: | Line 221: | ||
| </ | </ | ||
| - | Do not use spaces after function names. | + | Não utilize espaços depois dos nomes das funções. Virgulas apresentam um espaço após as mesmas. Não utilize espaços depois dos seguintes caracteres: |
| <code c> | <code c> | ||
| Line 233: | Line 228: | ||
| </ | </ | ||
| - | Unary operators don't require spaces; binary operators do. | + | Operadores unitarios não requerem espaços; ao contrário dos operadores binários. Não utilize parentises a não ser que estes sejam requeridos para precedencia, e que o **!?statement?!** se torne confuso sem a existencia destes, a não ser que estes causem um erro de compilamento. Lembre-se que esta prática podera confudir outros. |
| <code c> | <code c> | ||
| Line 240: | Line 235: | ||
| </ | </ | ||
| - | Exits should be <color # | + | Exits deverão utilizar |
| <code c> | <code c> | ||
| /* | /* | ||
| - | | + | |
| - | * "Exit 0 on success." | + | * "Exit 0 com successo." |
| */ | */ | ||
| exit(0); | exit(0); | ||
| </ | </ | ||
| - | The function type should be on a line by itself preceding the function. | + | Este tipo de função deverá se apresentar numa linha separada, precedendo |
| <code c> | <code c> | ||
| Line 258: | Line 253: | ||
| </ | </ | ||
| - | When declaring variables in functions, declare | + | Ao declarar variáveis das funções, declare-as organizadas por uso, por seguida tamanho |
| - | Be careful not to obfuscate the code by initializing variables in the declarations. Use this feature only thoughtfully. DO NOT use function calls in initializers! | + | Tenha cuidado para não ofuscar o código, através da utilização de variaveis em declarações. Utilize esta técnica apenas da maneira correcta. NãO UTILIZE chamadas de funções em **!?initializers"!?**. |
| <code c> | <code c> | ||
| Line 271: | Line 266: | ||
| </ | </ | ||
| - | Do not declare | + | Não declare |
| Casts and <color # | Casts and <color # | ||
| - | Use of the “<color # | + | A utilização do **specificador? |
| - | When using <color # | + | Na utilização de <color # |
| <code c> | <code c> | ||
| Line 283: | Line 278: | ||
| </ | </ | ||
| - | If any warnings of this type occur, you must apply the “<color # | + | Se qualquer erro deeste tipo ocorrer, deverá aplicar o "type-qualifier" |
| <code c> | <code c> | ||
| Line 289: | Line 284: | ||
| </ | </ | ||
| - | says that “< | + | Assumindo que “< |
| <code c> | <code c> | ||
| Line 295: | Line 290: | ||
| </ | </ | ||
| - | If both the pointer and the thing pointed to are volatile use | + | Se ambos o apontador e o que este esta apontando form volateis, utilize: |
| <code c> | <code c> | ||
| Line 301: | Line 296: | ||
| </ | </ | ||
| - | “< | + | “< |
| <code c> | <code c> | ||
| Line 307: | Line 302: | ||
| </ | </ | ||
| - | Global flags set inside signal | + | Bandeiras globais defenidas dentro de **!?handlers?!** de sinais deverao ser do tipo “< |
| - | NULL is the preferred null pointer constant. | + | NULL e a contaste preferida para apontadores nulos. Utilize |
| - | Don't use ‘< | + | Não utilize |
| <code c> | <code c> | ||
| Line 317: | Line 312: | ||
| </ | </ | ||
| - | not | + | não |
| <code c> | <code c> | ||
| Line 323: | Line 318: | ||
| </ | </ | ||
| - | Routines | + | **!?Routines?!** que retornam |
| - | Use the <color # | + | Utilize as familias de funções |
| <code c> | <code c> | ||
| Line 335: | Line 330: | ||
| </ | </ | ||
| - | Old-style function declarations look like this: | + | Funções desse modelo do antigo apresentam-se desta maneira: |
| <code c> | <code c> | ||
| Line 348: | Line 343: | ||
| </ | </ | ||
| - | Use <color # | + | Utilize declarações de funções |
| - | Variable numbers of arguments should look like this: | + | Numeros variaveis de argumentos devem-se apresentar desta maneira: |
| <code c> | <code c> | ||
| Line 373: | Line 368: | ||
| </ | </ | ||
| - | Usage statements should take the same form as the synopsis | + | Expressões de uso deverão se apresentar da mesma forma que a synopsis |
| - | A bar (‘< | + | Utilize uma barra (‘< |
| - | If numbers are used as options, they should be placed first, as shown in the example below. Uppercase | + | Se numeros sao utilizados como opcoes, estes deveram se apresentar primeiro, como mostra o exemplo a baixo. letras em **Uppercase** tem precedencia de letras em **lowercase**. |
| <code c> | <code c> | ||
| Line 384: | Line 379: | ||
| </ | </ | ||
| - | The <color # | + | A funcao |
| <code c> | <code c> | ||
| Line 390: | Line 385: | ||
| </ | </ | ||
| - | New core kernel | + | Novo código base de kernel |
| - | Whenever possible, code should be run through a code checker | + | Sempre que possível, código deverá rodar através de um verificador de código |
| - | Note that documentation follows its own style guide, as documented in <color # | + | Verifique que certa documentação segue os seus proprios parametros de estilo, como documentado em <color # |
| - | ===== History | + | ===== História |
| - | This article is largely based on the <color # | + | Este artigo |
| - | ===== Licensing | + | ===== Licenciamento |
| - | This wiki article is released under the [[https:// | + | Este artigo da wiki estar publicado sobre a [[https:// |
| - | ===== Acknowledgement | + | ===== Créditos |
| - | This wiki article is based on **[[https:// | + | Este artigo |