<?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>CodeIgniter Brasil &#187; Diversos</title>
	<atom:link href="http://codeigniterbrasil.com/categoria/diversos/feed/" rel="self" type="application/rss+xml" />
	<link>http://codeigniterbrasil.com</link>
	<description>tutoriais, dicas, macetes, códigos e informações sobre o melhor framework PHP: CodeIgniter</description>
	<lastBuildDate>Thu, 03 May 2012 01:07:56 +0000</lastBuildDate>
	<language>en</language>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
	<generator>http://wordpress.org/?v=3.3.2</generator>
<xhtml:meta xmlns:xhtml="http://www.w3.org/1999/xhtml" name="robots" content="noindex" />
		<item>
		<title>CodeIgniter Framework PHP : considerações de leitura</title>
		<link>http://codeigniterbrasil.com/diversos/codeigniter-framework-php-consideracoes-de-leitura/</link>
		<comments>http://codeigniterbrasil.com/diversos/codeigniter-framework-php-consideracoes-de-leitura/#comments</comments>
		<pubDate>Mon, 27 Sep 2010 13:13:08 +0000</pubDate>
		<dc:creator>Tárcio Zemel</dc:creator>
				<category><![CDATA[Diversos]]></category>

		<guid isPermaLink="false">http://codeigniterbrasil.com/?p=86</guid>
		<description><![CDATA[No início deste mês de setembro fui agraciado com um exemplar do livro &#8220;CodeIgniter Framework PHP&#8220;, de Ademir Cristiano Gabardo, cedido gentilmente pela editora Novatec, através de contato que tive com Mariana Prates, do departamento de marketing. Dada a óbvia relação entre o livro e o assunto principal deste blog, CodeIgniter, fui convidado a ler [...]]]></description>
			<content:encoded><![CDATA[<p style="text-align: center;"><a href="http://www.novatec.com.br/livros/codeigniter/"><img width="234" height="337" alt="Livro CodeIgniter Framework PHP" src="http://codeigniterbrasil.com/wp-content/uploads/2010/08/codeigniter-framework-php-capa-livro.jpg" title="Comprar livro CodeIgniter Framework PHP" class="aligncenter size-full wp-image-81 ilustra-artigo"></a></p>
<p>No início deste mês de setembro fui agraciado com um exemplar do livro &#8220;<strong>CodeIgniter Framework PHP</strong>&#8220;, de <strong>Ademir Cristiano Gabardo</strong>, cedido gentilmente pela <a href="http://www.novatec.com.br/">editora Novatec</a>, através de contato que tive com <strong>Mariana Prates</strong>, do departamento de marketing.</p>
<p>Dada a óbvia relação entre o livro e o assunto principal deste blog, <strong>CodeIgniter</strong>, fui convidado a ler a obra e escrever algumas palavras com minhas considerações sobre o <strong>melhor framework PHP</strong>!</p>
<h2>Estruturação do livro CodeIgniter Framework PHP</h2>
<p>O livro “CodeIgniter Framework PHP” é estruturado em 15 capítulos principais, quais sejam:</p>
<p><strong></p>
<ol>
<li>Design pattern MVC (model, view, controller)</li>
<li>Construindo seu ambiente de testes</li>
<li>CodeIgniter na prática: primeiros exemplos</li>
<li>Criando melhores views com os helpers do CodeIgniter</li>
<li>Criando um catálogo de produtos com o CodeIgniter</li>
<li>Processando um formulário de contato</li>
<li>Paginação com CodeIgniter</li>
<li>Rotas</li>
<li>Construindo a área de administração do catálogo</li>
<li>Protegendo a área de administração com senha</li>
<li>Adicionando funcionalidades de carrinho de compras</li>
<li>Mais funcionalidades do CodeIgniter</li>
<li>Mais sobre a classe Database e o Active Record</li>
<li>Integrando CodeIgniter com Ajax</li>
<li>Considerações finais</li>
</ol>
<p></strong></p>
<p>Para facilitar o entendimento dessas considerações, fica mais fácil agrupar determinados capítulos e discorrer com base nestes agrupamentos. Então, a fim de facilitar o entendimento, consideremos que o primeiro grupamento, a qual chamaremos &#8220;<strong>Início</strong>&#8220;, abrange os capítulos <strong>1, 2, 3 e 4</strong>; o seguinte, chamado &#8220;<strong>Meio</strong>&#8220;, envolve os capítulos <strong>5, 6, 7, 8, 9, 10 e 11</strong>; e, por &#8220;<strong>Fim</strong>&#8220;, os capítulos restantes, <strong>12, 13, 14 e 15</strong>.</p>
<h2>CodeIgniter Framework PHP: &#8220;Início&#8221;</h2>
<p>O livro, em seus capítulos iniciais, como não poderia deixar de ser, apresenta uma base teórica necessária para o entendimento e uso do CodeIgtniter. As primeiras dezenas de páginas se encarregam de explicar conceitos primordiais como design pattern, MVC, o conceito de model, view e controller e outros.</p>
<p>Inclusive, algumas considerações sobre a atual versão do framework e o que se pode esperar da próxima – o que, pessoalmente, considerei uma abordagem precoce, dado que o leitor iniciante ainda desconhece termos abordados, como &#8220;scaffolding&#8221;, &#8220;helpers&#8221;, &#8220;drivers&#8221;. Talvez a intenção de Ademir Gabardo tenha sido, justamente, suscitar curiosidade no leitor. É uma possibilidade&#8230;</p>
<p>Achei especialmente interessante a explicação de como montar um ambiente de testes para CodeIgniter, explicando como baixar, instalar e configurar <a href="http://www.apache.org/">Apache</a>, <a href="http://www.php.net/">PHP</a> e <a href="http://www.mysql.com/">MySQL</a>, separadamente. É fato que existem programas que, nas palavras do próprio autor, são &#8220;pacotes de softwares &#8216;pré-embalados&#8217;&#8221;, ou seja, permitem instalar os sistemas citados de forma bem mais simples (um deles, inclusive, sendo citado pelo autor); mas, a meu ver, é interessante ao estudante saber algo sobre o funcionamento de servidores e instalação de aplicações nestes, tal como foi abordado no livro.</p>
<p>Depois disso, a estrutura de diretórios do <a href="http://codeigniter.com/">CodeIgniter</a> é explicada, mostrando para que serve e os cuidados necessários que se deve ter com cada pasta do CI. A essa altura, alguns exemplos básicos de uso de controllers e views já são apresentados, mostrando a quem está lendo como o CodeIgniter alia poder e simplicidade de uso para a construção de sites e aplicativos.</p>
<p>Evoluindo com as explicações, mais considerações são feitas sobre o funcionamento interno e funcionalidades nativas do framework e acontece a apresentação dos helpers, seguida de exemplos de como usar alguns helpers importantes e comuns quando se está usando o CodeIgniter.</p>
<h2>CodeIgniter Framework PHP: &#8220;Meio&#8221;</h2>
<p>Ademir Cristiano Gabardo, o autor do livro &#8220;CodeIgniter Framework PHP&#8221;, utilizou uma abordagem que julgo bastante eficiente quando o assunto é passar conhecimento técnico desta natureza: apresentou o modo de fazer, exemplos, nuances e alguns macetes através do desenvolvimento de um aplicativo “do mundo real”. Sua proposta foi criar um <em>catálogo de produtos</em> com o CI e, no processo, habituar seu leitor às ações e peculiaridades encontradas no processo. Mais um ponto positivo!</p>
<p>E o importante é que, no livro, o desenvolvimento de uma boa parte de um &#8220;sistema de verdade&#8221; é mostrado, com explicações de se fazer páginas de categorias e de detalhes de produtos (com recursos completos de visualização e paginação), recursos de busca, formulário para contato e área administrativa protegida por senha, reforçando a abordagem de exemplo de “aplicativo do mundo real” apresentada.</p>
<p>As explicações sobre este catálogo de produtos abrangeram desde a criação do banco de dados apropriado – mostrando o Diagrama Entidade Relacionamento, ou DER (chamado, no livro de “Esquema do banco de dados”), inclusive com a disponibilização da SQL necessária –, passando pela configuração de BD do próprio CodeIgniter e mostrando o fabuloso recurso <em>scaffolding</em> (que, conforme podemos encontrar nas primeiras páginas da obra, deixará de funcionar a partir da próxima versão do CI), até chegar no uso da <a href="http://codeigniter.com/user_guide/database/active_record.html">Active Record</a>, classe essencial do Code Igniter para qualquer site/aplicação que utilize banco de dados.</p>
<p>E um dos principais pontos fortes da obra: apresentação e exemplos de uso da <a href="http://codeigniter.com/user_guide/libraries/cart.html">biblioteca nativa do CodeIgniter para carrinho de compras</a>, recurso de versões recentes do framework para facilitar a manipulação de operações envolvendo este conceito!</p>
<h2>CodeIgniter Framework PHP: &#8220;Fim&#8221;</h2>
<p>Nos capítulos finais da publicação, outros recursos não abordados para a criação do catálogo de produtos são apresentados.</p>
<p>Certamente o autor não deixaria seus leitores na mão quanto à apresentação e exemplos de uso de funcionalidades tão importantes como customização de páginas de erros, criação dinâmica de tabelas, operações variadas relacionadas a manipulação de imagens, criação de backups dinâmicos, recursos especiais de string e texto e, de forma complementar, exposição de outras possibilidades oferecidas pela Active Record.</p>
<p>Como <em>plus</em>, Gabardo explica uma das maneiras possíveis de se fazer a integração CodeIgniter + AJAX, tão essencial à quase totalidade de sites/aplicativos modernos.</p>
<h2>CodeIgniter Framework PHP: considerações finais</h2>
<p>Com o desenvolvimento do catálogo de produtos que fez parte da proposta do &#8220;<strong>CodeIgniter Framework PHP</strong>&#8220;, é possível tomar contato e receber explicações de muitos recursos excepcionais do framework, como transição de dados entre camadas do padrão MVC, tratamento de informações, segurança, criação de formulários, paginação, upload e tratamento de imagens e outros tipos de arquivos, roteamento de URLs, sessões, trabalho com carrinho de compras e muitos outros.</p>
<p>O livro é destinado a pessoas que tiveram pouco ou nenhum contato com o CodeIgniter – ou seja, o público iniciante – e, acredito, por este motivo, o autor foi feliz na quase totalidade das páginas de sua publicação.</p>
<p>Se fosse pedido para a avaliação do livro se dar através de pontuação de 1 a 10, &#8220;<strong>8,5</strong>&#8221; seria minha resposta. Excetuando-se um equívoco de tradução ou conceito aqui e acolá, digo, com toda certeza, que a obra é indicada e recomendada a todos os iniciantes em CodeIgniter que queiram aprender/reforçar desde conceitos básicos a alguns mais além. Ficou um gostinho de &#8220;quero mais&#8221; para uma edição ampliada!  ;-)</p>
<p>Parabéns ao autor <strong>Ademir Cristiano Gabardo</strong> e à editora <strong>Novatec</strong> pela publicação!</p>
<div class="alert">
Lembre-se: até dia 31/12/2010 você pode <a href="http://codeigniterbrasil.com/dicas/desconto-na-compra-do-livro-codeigniter-framework-php/">adquirir seu exemplar do livro &#8220;CodeIgniter Framework PHP&#8221; com 20% de desconto</a>!
</div>
]]></content:encoded>
			<wfw:commentRss>http://codeigniterbrasil.com/diversos/codeigniter-framework-php-consideracoes-de-leitura/feed/</wfw:commentRss>
		<slash:comments>21</slash:comments>
		</item>
		<item>
		<title>CodeIgniter: Requisitos de Servidor e Licença de Uso</title>
		<link>http://codeigniterbrasil.com/diversos/codeigniter-requisitos-de-servidor-e-licenca-de-uso/</link>
		<comments>http://codeigniterbrasil.com/diversos/codeigniter-requisitos-de-servidor-e-licenca-de-uso/#comments</comments>
		<pubDate>Wed, 20 May 2009 15:00:09 +0000</pubDate>
		<dc:creator>Tárcio Zemel</dc:creator>
				<category><![CDATA[Diversos]]></category>
		<category><![CDATA[código-fonte]]></category>
		<category><![CDATA[documentação]]></category>

		<guid isPermaLink="false">http://codeigniterbrasil.com/?p=46</guid>
		<description><![CDATA[Até agora estávamos em uma &#8220;introdução geral&#8221;, falando genericamente sobre o que são framewoks, um pouco sobre padrões de projeto, o padrão MVC e uma palhinha sobre o próprio CodeIgniter, mostrando que ele é um framework PHP ágil, robusto e de alta performance e mostramos 10 razões de porque CodeIgniter arrasa! Bem, chegou a hora [...]]]></description>
			<content:encoded><![CDATA[<p>Até agora estávamos em uma &#8220;introdução geral&#8221;, falando genericamente sobre o que são <em><a title="Mais sobre frameworks." href="http://codeigniterbrasil.com/passos-iniciais/o-que-e-um-framework-definicao-e-beneficios-de-se-usar-frameworks/">framewoks</a></em>, um pouco sobre <a title="Mais informações sobre os padrões de projeto." href="http://codeigniterbrasil.com/passos-iniciais/padroes-de-projeto-ou-design-patterns-o-que-sao-para-que-servem-e-qual-sua-implicacao-de-uso/">padrões de projeto</a>, o <a title="Mais sobre Mode, View, Controller, o popular MVC." href="http://codeigniterbrasil.com/passos-iniciais/mvc-model-view-controller/">padrão MVC</a> e uma palhinha sobre o próprio <strong>CodeIgniter</strong>, mostrando que ele é um <a title="Mais informações sobre as características e funcionalidades do CodeIgniter." href="http://codeigniterbrasil.com/passos-iniciais/codeigniter-framework-php-agil-robusto-e-de-alta-performance/"><em>framework</em> PHP ágil, robusto e de alta performance</a> e mostramos <a title="Conheça as 10 razões!" href="http://codeigniterbrasil.com/diversos/10-razoes-de-porque-codeigniter-arrasa/">10 razões de porque CodeIgniter arrasa</a>!</p>
<p>Bem, chegou a hora de começar a abordar os assuntos referentes ao <strong>CodeIgniter, propriamente dito</strong>, já que a &#8220;base teórica&#8221; já foi dada e vocês, queridos leitores, certamente já procuraram estudar e buscar mais informações sobre tudo o que foi dito até agora, não é?</p>
<h2>Requisitos de Servidor para rodar o CodeIgniter</h2>
<p>Como já estamos falando há algum tempo, o CodeIgniter consegue alinhar boa performance, poderosos recursos, simplicidade e leveza, ao mesmo tempo! Para se ter ideia, na versão mais atual (2.1.0) os arquivos do <em>framework</em> inteiro não chegam a 1.3MB!</p>
<p>CodeIgniter é um <em>framework</em> PHP e, como era de se esperar, sua &#8220;instalação&#8221; consiste em descompactar seus arquivos no servidor, alterar pouquíssimas linhas de código para configurações preliminares e começar a usar! Para rodar o CodeIgniter, o servidor precisa de:</p>
<ul>
<li><strong>PHP 5.1.6 ou superior.</strong> Em sua versão mais recente, a 2.1.0, o CodeIgniter exige PHP 5.1.6 o superior.</li>
<li><strong>Banco de Dados.</strong> Na verdade ter um banco de dados não é obrigatório, mas se for para desenvolver algo que não use BD, então nem precisa usar CodeIgniter&#8230; Atualmente há suporte para <a title="Mais sobre MySQL, na Wikipédia." href="http://pt.wikipedia.org/wiki/Mysql">MySQL</a> (4.1+), <a title="Mais informações sobre MySQLi (em inglês)." href="http://en.wikipedia.org/wiki/MySQLi">MySQLi</a>, <a title="Mais sobre MS SQL, na Wikipédia." href="http://pt.wikipedia.org/wiki/Microsoft_SQL_Server">MS SQL</a>, <a title="Mais sobre PostgreSQL, na Wikipédia." href="http://pt.wikipedia.org/wiki/Postgres">PostgreSQL</a>, <a title="Mais sobre o SGBD Oracle, na Wikipédia." href="http://pt.wikipedia.org/wiki/Oracle">Oracle</a>, <a title="Informações sobre SQLite, na Wikipédia." href="http://pt.wikipedia.org/wiki/Sqlite">SQLite</a> e  <a title="Mais informações sobre ODBC, na Wikipédia." href="http://pt.wikipedia.org/wiki/Odbc">ODBC</a>. E, como veremos em artigos futuros, alternar o uso entre estes é facinho, facinho!  ;-)</li>
</ul>
<h2>Licença de Uso</h2>
<div class="alert">
Em outubro de 2011 foi anunciada a mudança da licença do CodeIgniter para OSL 3.0. Para mais informações, acesse o artigo <a href="http://codeigniterbrasil.com/noticias/nova-licenca-codeigniter-osl-3/">Nova licença do CodeIgniter: OSL 3.0</a>.
</div>
<p>Como qualquer software, o Code Igniter possui uma <strong>licença de uso</strong>. Licença esta que é um acordo legal entre quem usa o CodeIgniter e a <a title="Página inicial da EllisLab Inc." href="http://ellislab.com/">EllisLab Inc</a>, empresa mantenedora do <em>framework</em>. É permitido <strong>usar</strong>, <strong>copiar</strong>, <strong>modificar</strong> e <strong>distribuir</strong> o CodeIgniter e sua documentação, com ou sem modificações, para qualquer finalidade, <strong>desde que</strong> sejam cumpridas as seguintes condições:</p>
<ol>
<li>Uma cópia da licença deve ser incluída com a distribuição;</li>
<li>As redistribuições do código fonte devem reter a observação de <em>copyright</em> em todos seus arquivos;</li>
<li>As redistribuições na forma binária devem reproduzir a observação de <em>copyright</em> na documentação e/ou outros materiais fornecidos com a distribuição;</li>
<li>Os arquivos que foram modificados devem conter avisos indicando a natureza da alteração e os nomes de quem os alterou;</li>
<li>Produtos derivados devem incluir um aviso de que eles são derivados de CodeIgniter na sua documentação e/ou outros materiais fornecidos com a distribuição;</li>
<li>Produtos derivados não pode ser chamado de &#8220;CodeIgniter&#8221;, nem pode &#8220;CodeIgniter&#8221; aparecem em seu nome, sem autorização prévia por escrito da <a title="Página oficial da EllisLab Inc." href="http://ellislab.com/">EllisLab Inc</a>.</li>
</ol>
<p>Essas são as condições no momento da publicação deste artigo, pode ser que haja alterações. Outras 3 coisas importantíssimas são:</p>
<ol>
<li><strong>Indenização.</strong> Ao usar o CodeIgniter, Você concorda em indenizar e defender os autores do <em>software</em> e eventuais contribuições para quaisquer efeitos diretos, indiretos, incidentais ou consequentes reclamações de terceiros, ações ou fatos, bem como de quaisquer despesas, responsabilidades, danos, acordos ou honorários decorrentes de seu uso ou mau uso do <em>software</em> ou uma violação de quaisquer termos da licença.</li>
<li><strong>Isenção de Garantia.</strong> O <em>software</em> é fornecido &#8220;como está&#8221;, sem qualquer tipo de garantia, expressa ou implícita, incluindo, mas não se limitando a garantias de qualidade, desempenho, não violação, comerciabilidade ou adequação a uma finalidade específica.</li>
<li><strong>Limitações de responsabilidade.</strong> Você assume todos os riscos associados com a instalação e utilização do <em>software</em>. Em nenhum caso o autor ou direitos de autor do <em>software</em> pode ser responsabilizado por reclamações ou outros danos decorrentes da responsabilidade civil, a partir de ou em conexão com o <em>software</em>. Titulares de licença são os únicos responsáveis por determinar a adequação do uso e assumir todos os riscos associados à sua utilização,incluindo mas não limitados aos riscos do programa, erros, danos aos equipamentos, perda de dados ou programas ou indisponibilidade ou interrupção de operações.</li>
</ol>
<p>Quer dizer, é possível usar amplamente o CodeIgniter, mas <strong>você assume toda a responsabilidade em usá-lo</strong>! Quando fizer <em>softwares</em> utilizando o <em>framework</em> (inclusive os de distribuição em modo binário), você deve liberar juntamente o aviso de <em>copyright</em> (em todos os arquivos) e avisar que é um produto derivado (apesar de você não poder incluir o nome &#8220;CodeIgniter&#8221; no produto).</p>
<p>Vai encarar?  :-D</p>
]]></content:encoded>
			<wfw:commentRss>http://codeigniterbrasil.com/diversos/codeigniter-requisitos-de-servidor-e-licenca-de-uso/feed/</wfw:commentRss>
		<slash:comments>12</slash:comments>
		</item>
		<item>
		<title>10 razões de porque CodeIgniter arrasa</title>
		<link>http://codeigniterbrasil.com/diversos/10-razoes-de-porque-codeigniter-arrasa/</link>
		<comments>http://codeigniterbrasil.com/diversos/10-razoes-de-porque-codeigniter-arrasa/#comments</comments>
		<pubDate>Mon, 27 Apr 2009 11:00:51 +0000</pubDate>
		<dc:creator>Tárcio Zemel</dc:creator>
				<category><![CDATA[Diversos]]></category>
		<category><![CDATA[Passos Iniciais]]></category>
		<category><![CDATA[bibliotecas]]></category>
		<category><![CDATA[documentação]]></category>
		<category><![CDATA[mvc]]></category>
		<category><![CDATA[segurança]]></category>

		<guid isPermaLink="false">http://codeigniterbrasil.com/?p=37</guid>
		<description><![CDATA[De vez em quando é possível encontrar em algum artigo de blog ou discussão em fóruns a pergunta sobre qual é o melhor framework para PHP. Todos os frameworks têm seus pontos positivos e negativos, mas a verdadeira resposta para essa pergunta, é que depende do programador. Cada programador tem um estilo diferente e diferentes [...]]]></description>
			<content:encoded><![CDATA[<p>De vez em quando é possível encontrar em algum artigo de blog ou discussão em fóruns a pergunta sobre qual é o <strong>melhor framework para PHP</strong>. Todos os frameworks têm seus pontos positivos e negativos, mas a verdadeira resposta para essa pergunta, é que <strong>depende do programador</strong>. Cada programador tem um estilo diferente e diferentes prioridades quando se trata de adotar uma <em>tool kit</em> para usar na construção de seus aplicativos.</p>
<p>Nossa escolha é <a title="Visitar o site oficial do Code Igniter." href="http://codeigniter.com/">CodeIgniter</a> (CI) e abaixo estão as minhas 10 razões de porque CodeIgniter arrasa!</p>
<div class="alert">Este artigo é tradução do original &#8220;<a href="http://www.christophermonnat.com/2008/06/10-reasons-why-codeigniter-rocks/">10 Reasons Why CodeIgniter Rocks</a>&#8220;, do <a href="http://www.christophermonnat.com/">Chris Monnat</a>, e sofreu pequenas modificações.</div>
<h2>10. Arquitetura MVC</h2>
<p>A arquitetura <a title="Ler artigo sobre Model, View, Controller." href="http://codeigniterbrasil.com/passos-iniciais/mvc-model-view-controller/">Model, View, Controller</a> não tem nada de novo. É como se todos os <a href="http://codeigniterbrasil.com/passos-iniciais/o-que-e-um-framework-definicao-e-beneficios-de-se-usar-frameworks/">frameworks</a> hoje em dia fossem feitos em MVC e, os que não são, podem ser adaptados facilmente. Tenho tido experiência construindo grandes aplicações de forma procedural e toda vez elas terminam com uma salada-mista de códigos ingerenciáveis. A forma MVC oferece uma boa separação de códigos, e mantém a escrita limpa. Alguns frameworks forçam você a trabalhar de uma forma específica, mas o CI deixa você livre dentro do modelo MVC para programar como achar melhor. Se isso significa ignorar modelos, então, que assim seja.</p>
<h2>9. Quase nenhum pré-requisito para o servidor</h2>
<p>Diferente de outros <a href="http://www.phpframeworks.com/">frameworks PHP</a>, o CI trabalha com as versões 4 e 5 do PHP. Isso faz a vida de alguém como eu, que tem que ser capaz de trabalhar entre as duas versões, muito mais fácil. Claro, há muito tempo tenho usado técnicas do PHP 5 nas minhas aplicações, mas o framework por si só funciona em ambas versões.</p>
<h2>8. Fácil de entender e extender</h2>
<p>O CI foi o primeiro framework que usei que realmente fez sentido para mim. Tentei o <a href="http://www.cakephp.org/" target="_blank">Cake PHP</a>, o <a href="http://framework.zend.com/" target="_blank">Zend Framework</a>, <a href="http://www.symfony-project.org/" target="_blank">Symfony</a>, entre outros, e o CI foi o melhor para sair desenvolvendo rapidamente. É simples também quando se trata de escrever novas bibliotecas, mudar o comportamento de bibliotecas existentes, e simplesmente mudar todo comportamento do framework com um pequeno esforço.</p>
<h2>7. Todas as ferramentas que você precisa em um pequeno pacote</h2>
<p>Calendário, e-mail, codificação ZIP, validação, upload, sessões, teste de unidade&#8230; São somente algumas das bibliotecas pré-prontas que vêm com o CI. Isso inclui uma rápida importação dos &#8220;helpers&#8221; padrão para coisas como formulários, manipulação de arquivos, arrays, strings, cookies, diretórios e muito mais. Se tudo isso ainda não foi suficiente, você pode criar suas próprias bibliotecas e &#8220;helpers&#8221; ou usar código desenvolvido pela comunidade CI e postado no <a href="http://codeigniter.com/wiki/" target="_blank">Wiki</a>.</p>
<h2>6. Instalação não necessária</h2>
<p>Acredite ou não, uma das coisas mais difíceis que experienciei testando novos frameworks é a instalação dos mesmos. Eu não sou fã das linhas de comando UNIX, então procuro ferramentas que posso instalar e usar apenas subindo arquivos para um diretório. O CI é perfeito para isso. Não é preciso pacotes PEAR ou mudanças no servidor para ter o framework rodando. Apenas suba os arquivos para o seu servidor e pronto.</p>
<h2>5. Ferramentas de segurança pré-prontas</h2>
<p>O CI permite que você implemente quanta segurança for necessária para a sua aplicação. Ele faz algumas coisas por padrão como desconfigurar todas variáveis globais independente da diretiva <a href="http://www.php.net/manual/pt_BR/ini.core.php#ini.register-globals">register_globals</a> do PHP, e desabilita o <a href="http://www.php.net/set_magic_quotes_runtime">magic_quotes_runtime</a> durante a inicialização do sistema, assim você não precisará remover as barras quando for capturar dados do seu banco de dados. Outras coisas podem ser habilitadas, como encriptação de cookies, integração de dados de sessão com o banco de dados e automação de tratamento de consultas SQL.</p>
<h2>4. Abstração de banco de dados e mais</h2>
<p>Todo framework decente de hoje em dia tem uma camada de abstração de banco de dados e o CI não é diferente. Você pode facilmente criar declarações de insert, update e delete sem precisar escrever SQL. Manipule conexões para múltiplos bancos dentro de uma só aplicação e conecte-se em qualquer tipo de banco: MySQL(4.1+), MySQLi, MS SQL, Postgre, Oracle, SQLite ou ODBC. O CI também deixa você manipular o banco de dados adicionando/removendo colunas de tabelas, criando novas tabelas e removendo as antigas usando a nova biblioteca &#8220;database forge&#8221;.</p>
<h2>3. Comunidade grande e ativa</h2>
<p>A ultima vez que chequei, havia mais de 57.000 (na data de publicação deste artigo, mais de 70000) membros registrados no fóruns CI. É uma ótima comunidade para trabalhar quando se tem um problema ou uma questão. O site do CI tem um <a title="Visitar os fóruns oficiais do CodeIgniter." href="http://codeigniter.com/forums/">fórum</a> e um <a title="Visitar wiki oficial do CodeIgniter." href="http://codeigniter.com/wiki/">Wiki</a> quando você procura por respostas. Não há listas de grupo confusas ou canais de chat apenas para pegar uma resposta rápida.</p>
<h2>2. Documentação excelente</h2>
<p>De longe, a maior vantagem do CI é sua documentação. Eu admito que tentei outros frameworks enquanto eles ainda estavam na versão BETA e sob desenvolvimento. Mas a documentação do CI é 10 vezes melhor do que a documentação deles, e realmente acredito que é porque o CI é apoiado por uma empresa e não somente pela comunidade. <a href="http://www.ellislabs.com/" target="_blank">EllisLab</a>, a empresa que criou o CI, tem orgulho de tê-lo criado e eles têm grandes planos para ele, de modo que eles não têm problema em gastar o tempo necessário para criar uma documentação de qualidade para a comunidade de usuários.</p>
<h2>1. Logo mais irá se unificar com o ExpressionEngine</h2>
<p>A primeira razão do porque o CI arrasa é que o <a title="Acesar site oficial do ExpressionEngine." href="http://expressionengine.com/">ExpessionEngine</a>, sistema de gerenciamento de conteúdo da <a title="Site oficial da EllisLab." href="http://www.ellislabs.com/">EllisLab</a>, está sendo reconstruído para utilizar o <a title="Artigo sobre frameworks." href="http://codeigniterbrasil.com/passos-iniciais/o-que-e-um-framework-definicao-e-beneficios-de-se-usar-frameworks/">framework</a>. Isso significa que as bibliotecas, &#8220;helpers&#8221;, etc. que você desenvolver para o CI, poderão ser reutilizados para o EE e vice-versa. Também significa que, o que quer que o EE precise operar, o CI tem. Classes melhoradas, autenticação de usuários pré-pronta, capacidade para facilmente programar aplicações modulares e muito mais. Tudo isso é apenas especulação, a nova versão do EE ainda não foi lançada, mas podemos sonhar (NT: quem tem uns dólares <em>extra</em> pode sonhar mais, porque o <strong>ExpressionEngine</strong> é pago).</p>
]]></content:encoded>
			<wfw:commentRss>http://codeigniterbrasil.com/diversos/10-razoes-de-porque-codeigniter-arrasa/feed/</wfw:commentRss>
		<slash:comments>12</slash:comments>
		</item>
		<item>
		<title>CodeIgniter Brasil: o começo</title>
		<link>http://codeigniterbrasil.com/diversos/codeigniter-brasil-o-comeco/</link>
		<comments>http://codeigniterbrasil.com/diversos/codeigniter-brasil-o-comeco/#comments</comments>
		<pubDate>Thu, 05 Feb 2009 12:25:09 +0000</pubDate>
		<dc:creator>Tárcio Zemel</dc:creator>
				<category><![CDATA[Diversos]]></category>
		<category><![CDATA[comunidade]]></category>
		<category><![CDATA[diversidades]]></category>

		<guid isPermaLink="false">http://codeigniterbrasil.com/?p=40</guid>
		<description><![CDATA[Muito bem-vindo seja você, visitante, utilizador do CodeIgniter, curioso sobre o assunto ou mesmo que não sabe nada a respeito e está se perguntando &#8220;Mas que diabos de blog é esse?&#8221;! Seja muito bem vindo a este novo espaço virtual, o CodeIgniter Brasil, dedicado a tratar do melhor framework para PHP que existe atualmente, o [...]]]></description>
			<content:encoded><![CDATA[<p>Muito bem-vindo seja você, visitante, utilizador do <strong>CodeIgniter</strong>, curioso sobre o assunto ou mesmo que não sabe nada a respeito e está se perguntando &#8220;Mas que diabos de blog é esse?&#8221;! Seja muito bem vindo a este novo espaço virtual, o <a title="CodeIgniter Brasil." href="http://codeigniterbrasil.com/">CodeIgniter Brasil</a>, dedicado a tratar do melhor framework para PHP que existe atualmente, o <a title="Página oficial do CodeIgniter." href="http://codeigniter.com/">CodeIgniter</a>, e os assuntos que são correlatos.</p>
<h2>Proposta</h2>
<p>Nós, autores e mantenedores do blog, consideramos que o <strong>CodeIgniter</strong> é o melhor framework para PHP e que ele veio para ficar! As facilidades que ele proporciona no desenvolvimento; a rapidez que ele provê para a criação e manutenção de funcionalidades; as características intrínsecas que ele aprensenta; suas bibliotecas, classes e helpers nativos; é por tudo isso e muito mais que escolhemos o <strong>CodeIgniter</strong> como nosso framework para trabalhos com PHP!</p>
<p>Nossa proposta com este blog é tratar das diversas temáticas que envolvem o <strong>CodeIgniter</strong>, passando desde assuntos como configurações, ajustes e otimização a downloads, notícias sobre <strong>CodeIgniter</strong>, tira-dúvidas com os leitores e muito mais!</p>
<p>Que fique claro que não somos &#8220;gurus&#8221; em <strong>CodeIgniter</strong>, ou algo parecido. Somos apenas pessoas que gostam muito do framework e querem compartilhar o que sabem e aprender muito mais coisas, principalmente através da interação entre as pessoas que os blogs proporcionam.</p>
<h2>Aspirações</h2>
<p>Temos a intenção de fazer o CodeIgniter Brasil o melhor blog nacional sobre o <strong>CodeIgniter</strong>. Nossa idéia é, através de artigos, tutoriais, ajuda dos amigos e leitores, fazer com que este ambiente online seja o melhor possível &#8211; dentro das possibilidades de cada um.</p>
<p>E para que este objetivo aconteça, é muitíssimo importante que a contribuição dos leitores/frequentadores do blog seja uma constante. Temos certeza de que as contribuições serão várias e que teremos, mutuamente, muitos e muitos momentos para interagir e aprender por aqui!</p>
<p>Para já ficar ligado nos conteúdos que estão por vir, <a title="Assinar feed do CodeIgniter Brasil." href="http://codeigniterbrasil.com/feed">assine o feed do CodeIgniter Brasil</a> e fique sabendo das novidades e atualizações da forma mais rápida possível!</p>
<h2>Sucesso aos &#8220;codeigniters&#8221;!</h2>
<p>Somos pessoas que têm seus trabalhos &#8220;oficiais&#8221; e também os &#8220;paralelos&#8221;. Uma de nossas atividades é escrever em blogs e outras publicações. Nossa intenção é colocar artigos com relativa frequencia que, esperamos, seja do agrado dos leitores.</p>
<p>Que todos nós, utilizadores do <strong>CodeIgniter</strong>, possamos lograr sucesso em nossas atividades e que comecem as atividades no <a title="CodeIgniter Brasil." href="http://codeigniterbrasil.com/">CodeIgniter Brasil</a>!</p>
]]></content:encoded>
			<wfw:commentRss>http://codeigniterbrasil.com/diversos/codeigniter-brasil-o-comeco/feed/</wfw:commentRss>
		<slash:comments>9</slash:comments>
		</item>
	</channel>
</rss>

