Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

update pt-br norme to v4 #430

Merged
merged 9 commits into from
Sep 5, 2023
Merged
Next Next commit
update pt-br norme to v4
  • Loading branch information
vitorsantanna2 committed Sep 2, 2023
commit b420cdcb2e4b952957f8ed28ca85e95c49384260
32 changes: 17 additions & 15 deletions pdf/pt_br.norm.tex
Original file line number Diff line number Diff line change
@@ -1,5 +1,4 @@
\documentclass{42-pt}
\newcommand\qdsh{\texttt{42sh}}



Expand All @@ -11,11 +10,11 @@

\begin{document}
\title{A Norma}
\subtitle{Versão 3}
\subtitle{Versão 4}

\summary
{
Este documento descreve o padrão aplicável (norma) na 42. Um padrão de
Este documento descreve o padrão aplicável (Norma) na 42. Um padrão de
programação define um conjunto de regras a seguir ao escrever um código.
A norma aplica-se a todos os projetos C dentro do círculo interno por padrão, e
para qualquer projeto onde é especificado.
Expand All @@ -34,7 +33,7 @@
%******************************************************************************%
\chapter{Introdução}

A norma é em Python e código aberto.\\
A \texttt{norminette} é em Python e código aberto.\\
Seu repositório está disponível em https://github.com/42school/norminette. \\
Pull requests, sugestões e indicação de bugs são bem-vindos!

Expand Down Expand Up @@ -112,10 +111,10 @@ \chapter{Introdução}

%******************************************************************************%
% %
% A norma %
% A Norma %
% %
%******************************************************************************%
\chapter{A norma}
\chapter{A Norma}


%******************************************************************************%
Expand Down Expand Up @@ -157,9 +156,7 @@ \chapter{A norma}
arquivos ou diretórios) devem ter os
nomes mais explícitos ou mais mnemônicos possíveis.

\item Usando uma variável global em um projeto onde não é
explicitamente permitido é um erro de norma, exceto onde é
obrigatório (manuseio de sinais, por exemplo).
\item Usando variáveis globais que não são marcadas como constante e estática é proibido e é considerado um erro de norma, há menos que seja explicitamente permitido no projeto.
vitorsantanna2 marked this conversation as resolved.
Show resolved Hide resolved

\item O arquivo deve compilar. Um arquivo que não compila não é esperado
que passe na norma.
Expand Down Expand Up @@ -216,7 +213,7 @@ \chapter{A norma}
\item Os asteriscos que vão com ponteiros devem estar juntos aos
nomes das variáveis.

\item Uma única declaração variável por linha.
\item Uma única declaração de variável por linha.

\item Declaração e uma inicialização não podem estar
na mesma linha, exceto para variáveis globais (quando permitido),
Expand All @@ -236,7 +233,8 @@ \chapter{A norma}
Os operadores devem estar no início de uma linha.

\item Estruturas de controle (if, while ...) devem ter chaves,
a menos que contenham uma única linha ou uma única condição.
a menos que contenham uma única linha.
\item Funções seguidas de chaves, declaradores ou estruturas de controle devem ser precedidas e seguidas de uma nova linha.
vitorsantanna2 marked this conversation as resolved.
Show resolved Hide resolved

\end{itemize}

Expand Down Expand Up @@ -373,7 +371,7 @@ \chapter{A norma}
% O Header da 42 %
%******************************************************************************%

\section{O Header da 42}
\section{O Header da 42 - vulgo começar um arquivo com estilo}

\begin{itemize}

Expand All @@ -385,7 +383,7 @@ \chapter{A norma}

\item O header da 42 deve conter informações atualizadas, incluindo o
criador com login e email, a data de criação e a data da atualização
mais recente.
mais recente. Cada vez que o arquivo é salvo em disco, a informação deve ser atualizada automaticamente.
vitorsantanna2 marked this conversation as resolved.
Show resolved Hide resolved

\end{itemize}
\newpage
Expand All @@ -408,7 +406,7 @@ \chapter{A norma}
\item Nomes de macro devem ser todos maiúsculos (uppercase).
\item Você deve recuar caracteres que seguirem \#if, \#ifdef
or \#ifndef.

\item Instruções de pré-processamento são proibidas fora do escopo global.
vitorsantanna2 marked this conversation as resolved.
Show resolved Hide resolved
\end{itemize}
\newpage

Expand Down Expand Up @@ -463,10 +461,14 @@ \chapter{A norma}
\item Seus comentários devem estar em inglês. E eles devem ser
úteis.

\item Um comentário não pode ser usado para justificar uma função
\item Um comentário não pode ser usado para justificar declarações ou uma função
vitorsantanna2 marked this conversation as resolved.
Show resolved Hide resolved
mal feita.

\end{itemize}
\warn{
Uma declaração ou função mal feita normalmente vem com nomes não explícitos como f1, f2... para as funções e a, b, i, ... para as declarações.
vitorsantanna2 marked this conversation as resolved.
Show resolved Hide resolved
Uma função que tem o único objetivo de evitar a norma, sem um único propósito lógico, também é considerado uma função mal feita.
vitorsantanna2 marked this conversation as resolved.
Show resolved Hide resolved
Por favor lembre se que é desejável ter funções limpas e legíveis que realizem uma clara e simples tarefa cada. Evite qualquer técnica de ofuscação do código como \emph{one-liner}..
vitorsantanna2 marked this conversation as resolved.
Show resolved Hide resolved
\newpage


Expand Down