<?xml version="1.0" encoding="UTF-8"?>
<rss version="2.0"
	xmlns:content="http://purl.org/rss/1.0/modules/content/"
	xmlns:wfw="http://wellformedweb.org/CommentAPI/"
	xmlns:dc="http://purl.org/dc/elements/1.1/"
	xmlns:atom="http://www.w3.org/2005/Atom"
	xmlns:sy="http://purl.org/rss/1.0/modules/syndication/"
	xmlns:slash="http://purl.org/rss/1.0/modules/slash/"
	>

<channel>
	<title>Eliel de Paula &#187; nomes</title>
	<atom:link href="http://elieldepaula.com.br/blog/tag/nomes/feed/" rel="self" type="application/rss+xml" />
	<link>http://elieldepaula.com.br/blog</link>
	<description>Programando ou tocando por aí...</description>
	<lastBuildDate>Thu, 10 Jun 2010 17:20:02 +0000</lastBuildDate>
	<generator>http://wordpress.org/?v=2.9.2</generator>
	<language>en</language>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
			<item>
		<title>Nomenclaturas</title>
		<link>http://elieldepaula.com.br/blog/2009/06/nomenclaturas/</link>
		<comments>http://elieldepaula.com.br/blog/2009/06/nomenclaturas/#comments</comments>
		<pubDate>Tue, 09 Jun 2009 12:43:26 +0000</pubDate>
		<dc:creator>Eliel de Paula</dc:creator>
				<category><![CDATA[Dia-a-dia]]></category>
		<category><![CDATA[Programação]]></category>
		<category><![CDATA[Tecnologia]]></category>
		<category><![CDATA[nomenclatura]]></category>
		<category><![CDATA[nomes]]></category>

		<guid isPermaLink="false">http://elieldepaula.com.br/blog/?p=290</guid>
		<description><![CDATA[Olá! Hoje eu falarei sobre nomenclaturas, uma dica que me ajuda muito no dia-a-dia de programação.
Uma nomenclatura bem organizada e consistente pode salvar nossa pele quando um projeto toma grandes proporções.
Os problemas mais sérios são os nomes usados nos bancos de dados, coisas como ter um campo com o mesmo nome em várias tabelas, e [...]]]></description>
			<content:encoded><![CDATA[<p>Olá! Hoje eu falarei sobre nomenclaturas, uma dica que me ajuda muito no dia-a-dia de programação.</p>
<p>Uma nomenclatura bem organizada e consistente pode salvar nossa pele quando um projeto toma grandes proporções.</p>
<p>Os problemas mais sérios são os nomes usados nos bancos de dados, coisas como ter um campo com o mesmo nome em várias tabelas, e falta de padrão nos nomes das tabelas e seus registros.<span id="more-290"></span></p>
<p><strong>Erros que não devemos cometer</strong></p>
<p>Evitar usar os famosos ‘ID’, ‘NUMREG’ ou outro termo qualquer como chave primária de suas tabelas, menos que seu sistema possua apenas uma tabela, o que é muito improvável. Na hora de criar um relacionamento seu banco de dados pode explodir.</p>
<p>Evite usar tudo com letras maiúsculas, se você trabalha em um ambiente Linux ou derivado já sabe que tudo é “<em>Case Sensitive</em>”, então o minúsculo ou a ordem da primeira letra maiúscula seguida das minúsculas são a melhor opção.</p>
<p><strong>De programador para programador</strong></p>
<p>Vamos tomar como exemplo uma base de dados que contenham 3 tabelas, uma de clientes, uma de vendas e uma de produtos. Os nomes das tabelas sempre começariam com o prefixo ‘<em>tb</em>’ seguido pelo nome, que ficariam tbClientes, tbVendas e tbProdutos.</p>
<p><a href="http://elieldepaula.com.br/blog/wp-content/uploads/2009/06/nomenclaturas-1.png"><img class="aligncenter size-medium wp-image-291" title="nomenclaturas-1" src="http://elieldepaula.com.br/blog/wp-content/uploads/2009/06/nomenclaturas-1-300x226.png" alt="nomenclaturas-1" width="300" height="226" /></a></p>
<p>Ó que coisa simples&#8230; mas isso ajuda muito quando você tem que trabalhar no código de sua aplicação, afinal quando você ler tbClientes já sabe que se trata da tabela de clientes, caso contrario, se fosse somente CLIENTES poderia gerar dúvidas pois poderia ser uma variável, uma constante ou qualquer outra coisa menos a tabela&#8230;</p>
<p>Em seguida vem o padrão da estrutura interna das tabelas que é outro ponto que devemos sempre tomar muito cuidado. Eu uso como padrão da chave primaria da tabela o prefixo ‘cod’ seguido do nome da tabela, no caso da tabela de clientes seria codCliente.</p>
<p>Os demais campos seguiriam um padrão de prefixos de acordo com a tabela, colocando prefixos de no máximo 3 caracteres, a tabela de clientes poderia ficar assim:</p>
<p><a href="http://elieldepaula.com.br/blog/wp-content/uploads/2009/06/nomenclaturas-2.png"><img class="aligncenter size-medium wp-image-292" title="nomenclaturas-2" src="http://elieldepaula.com.br/blog/wp-content/uploads/2009/06/nomenclaturas-2-300x227.png" alt="nomenclaturas-2" width="300" height="227" /></a></p>
<p><strong>Nomenclaturas de arquivos</strong></p>
<p>Uma boa nomenclatura para os arquivos sempre ajuda na localização e na orientação dentro de suas aplicações. Em geral, quando o programa é grande e trabalhamos muito nele, sabemos com certa facilidade sobre o que procuramos, mas depois que se passa um certo tempo sem colocar a mão naquele sistema, ou mesmo quando já está enorme com muitos arquivos e você com serviço saindo pelo “<em>ladrão</em>”, uma hora a cabeça falha e você fica doido procurando determinado arquivo.</p>
<p><strong>De programador para programador</strong></p>
<p>Em geral, em meus projetos eu uso prefixos nos arquivos de acordo com sua funcionalidades dentro do sistema. Veja um exemplo de como ficaria a árvore de arquivos de um sistema web:</p>
<p><a href="http://elieldepaula.com.br/blog/wp-content/uploads/2009/06/nomenclaturas-3.png"><img class="aligncenter size-medium wp-image-293" title="nomenclaturas-3" src="http://elieldepaula.com.br/blog/wp-content/uploads/2009/06/nomenclaturas-3-223x300.png" alt="nomenclaturas-3" width="223" height="300" /></a></p>
<p>Na pasta Arquivos eu guardo todos os arquivos relativos ao projeto, como rascunhos, anotações e fontes de imagens criadas para o projeto, na pasta home geralmente fica apenas um aruivo, o index. A pasta inc já diz, fica guardando os arquivos que serão incluídos ou usados pelo index que fica na pasta home, a pasta img armazena toas as imagens do projeto.</p>
<p>Os arquivos de inclusão que ficam armazenados na pasta inc também recebem um prefixo com o nome da pasta, por exemplo, inc.Clientes.php.</p>
<p>Essas são dicas simples mas que ao longo do tempo podem fazer a diferença na organização do seu trabalho e que com certeza vão refletir em desempenho, agilidade devido ao fluxo de dados e até com usabilidade devido a organização. (Fluxo de dados e usabilidade que são assuntos para post’s futuros.)</p>
<p>Muitos programadores, por alguma razão, não fazem a documentação de seus programas, como diagramas de classe, UML, modelagens em geral. A maioria faz de cabeça ou rascunham em um pedaço de papel.</p>
<p>Em geral isso não é errado, desde que o programa funcione <img src='http://elieldepaula.com.br/blog/wp-includes/images/smilies/icon_wink.gif' alt=';-)' class='wp-smiley' />  Mas qualquer anotação em um pedaço de guardanapo pode ser considerado como uma modelagem, mesmo que informal.</p>
<p>Eu confesso que para projetos pequenos eu não faço toda a documentação, mas faço um pequeno esboço do programa (mesmo que em papel) um esboço do banco de dados e seus relacionamentos e diagramas de casos de uso (resumidos) também são muito bons para se organizar as idéias na hora de colocar tudo em funcionamento.</p>
<p>Espero que seja de utilidade para todos pois pra mim isso sempre fez a diferença em meus projetos depois que eu comecei a colocar em pratica. Sucesso a todos!</p>
<p>Eliel de Paula – Analista de sistemas<br />
Elieldepaula[arroba]gmail.com</p>
 <span class="post2pdf_span" style="border: 1px solid gray; width: 160px; text-align: left; "><a href="http://elieldepaula.com.br/blog/wp-content/plugins/post2pdf/generate.php?post="" rel="nofollow"><img src="http://elieldepaula.com.br/blog/wp-content/plugins/post2pdf/icon/pdf.png" width="16px" height="16px" />convert this post to pdf.</a></span>]]></content:encoded>
			<wfw:commentRss>http://elieldepaula.com.br/blog/2009/06/nomenclaturas/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
	</channel>
</rss>
