Posts Categorizados ‘framework

27
Ago
09

Codeigniter – Série de tutoriais – Introdução

Olá pessoal, minha meta de 2009 número 2 não vem sendo cumprida de maneira alguma. “Pelo menos um post por mês”. É, prometer e não cumprir é errado. Mas, a partir de hoje, estarei iniciando uma série de tutoriais/dicas/rotinas/qualquer coisa que tenha relação com o  CodeIgniter.

Vou falar um pouco sobre o CodeIgniter neste primeiro post, para que todos tenham uma boa noção de como utilizá-lo, onde achá-lo e por que utilizá-lo. Antes disso, precisamos dar uma revisada no conceito de um framework. Não vou entrar em conceitos de MVC ou como funciona um framework, pois você pode encontrar estes conceitos em vários sites, como aqui, aqui e aqui.

Framework

Resumidamente falando, um framework é um pacote de coisas. Simples? É exatamente isto. Seguindo alguns padrões, um framework traz uma série de ferramentas, auxiliadores e ainda alguns geradores de funcionalidades. A utilização de um tipo de ferramenta como esta, pode agilizar o desenvolvimento de projetos em dias e por que não meses.

A primeira impressão de um programador que não utiliza nenhum framework pode ser de renúncia, porém, ao se deparar com a facilidade e as várias funcionalidades que um framework pode trazer, logo vira hábito a utilização do mesmo.

Imagine que você estaria construindo um préio de 3 andares, e no começo de tudo você já poderia ter pronto o cimento, as ferramentas e a estrutura toda pronta no papel e virtual. Agora você só precisaria se importar com o que realmente importa, que é subir os andares de tijolos utilizando o cimento e as ferramentas.

Da mesma forma acontece quando se utiliza um framework para a construção de um sistema para web. Você já possui um padrão de estrutura, já possui todas as ferramentas para manipular XML, Web Services, Banco de dados e preocupa-se apenas com a regra de negócio na hora de desenvolver as linhas de código.

O Codeigniter

Bom, já entendemos o que é um framework, agora podemos falar do propriamente dito “suprassumo do rabo do pato”, vulgo Codeigniter framework, ágil, prático e robusto.

Como já dizia o pessoal do Codeigniter Brasil no seu belo post CodeIgniter: framework PHP ágil, robusto e de alta performance:

“CodeIgniter, como bom framework que é, permite o desenvolvimento de web sites, softwares e aplicações em PHP de maneira ágil e relativamente descomplicada. O objetivo do CodeIgniter é disponibilizar um framework de máxima performance e capacidade, que seja flexível e o mais leve possível.”

Por ser um framework muito flexível quanto a sua estrutura, ele abre um leque de possibilidades bem maior do que outros para o desenvolvimento de aplicações para web.

Atualmente, estou desenvolvendo um CMS baseado no próprio codeigniter, e realmente, a maneira como é fácil manipular elementos de XML, Banco de dados e afins, é muito interessante.

Bom, para saber mais sobre o codeigniter, é bom visitar o site oficial e os blogs fáceis de encontrar no segundo cérebro.

That’s all folks.

Por hoje é somente só isso mesmo nada mais do que eu falei até agora pois é somente isso e tenho dito. Entendeu?! Darei continuidade na segunda parte da série com um post falando sobre como fazer uma autenticação com o codeigniter. Tutorial simples de Login. A intenção deste primeiro tutorial é mostrar no segundo uma biblitoca que desenvolvi de auxílio na captura e verificação de informações dos usuários logados no seu sisteminha.

É isso, até o próximo post.

Djalma Araújo

27
Jan
09

Frameworks.

Um dos assuntos mais comentados na comunidade brasileira, pra não dizer mundial, são os “frameworks”. Durante o post, tentarei explicar de uma forma com que todos possam entender o que são, quais os benefícios e o modelo MVC(Model View Controller), que é a base de tudo isso. Lembrando que estamos falando de frameworks de software e não frameworks conceituais. Tentarei explicar através de alguns tópicos, vamos lá:

O que é um framework (Opinião pessoal e generalizada)

Opinião Generalizada (Wikipedia)

“Framework é um conjunto de classes que colaboram para realizar uma responsabilidade para um domínio de um subsistema da aplicação.”

- FAYAD e SCHMIDT

* Texto completo em: Framework

Opinião pessoal

Um framework é uma gama de funções, rotinas e procedimentos que seguem um padrão de desenvolvimento e dá rumo a uma aplicação, obtendo o máximo de eficiência, menor complexidade, e maior produtividade para os desenvolvedores e lucro para os responsáveis.

Complicou? Dá uma lida na wikipedia ou então dá uma re-lida aqui!

Quais os benefícios do desenvolvimento com um framework

Como dito anteriormente, podemos observar várias vantanges na utilização de um framework. Abaixo um top 10  com algumas:

  1. Maior facilidade no tratamento e detecção de erros
  2. Desenvolvimento mais rápido e eficiente
  3. Biliotecas, Helpers são facilmentes acoplados a aplicação, obtendo maior flexibilidade
  4. Programação orientada a Objeto, provendo maior segurança, eficiência e produtividade
  5. Pode haver um framework rodando várias aplicações, o que proporciona uma atualização e controle maior de todo o sistema
  6. Máximo proveito da linguagem relacionada
  7. Utilização de design patterns, como o MVC ( Model View Controller ) que será explicado no próximo tópico.
  8. Pode ocorrer de 2 frameworks estarem trabalhando em conjunto, como por exemplo: jQuery + Codeigniter que são de linguagens distintas, porém juntos fazem com que a aplicação seja muito mais robusta.
  9. O tempo de desenvolvimento é relativamente menor em relação a outras metodologias
  10. São em 90% Open-source, free, gratis, 0800, 9090!

Se pensarmos mais um pouco, achamos mais benefícios. Mas será que tem alguma desvantagem? Acredito que para desenvolver com framworks, é preciso, antes de tudo, saber muito bem a linguagem abordada e também entender de orientação à objetos. Tendo isso em mente, não encaro como uma desvantagem, uma vez que estudando estes conceitos você estará crescendo muito como profissional.

A utilização vai de acordo com a demanda, então pense qual seria melhor para você. Abaixo falamos mais disso.

MVC (Model View Controller)

Este realmente é o bicho de 7 cabeças quando se está começando a desenvolver com um framework. Na verdade, é muito simples se você entender por partes e não querer abraças tudo de uma vez só

Model

Conceitualmente falando, o model é a parte do conceito que cuida de toda a abstração dos dados, manipulação deles direto no banco, seja em SGBD’S ou em arquivos. De um jeito menos complicado, podemos dizer que o Model é quem vai manipular nossos dados, fazendo nossas consultas SQL, trazendo informações do banco de dados. Ele retorna as informações que queremos chamando-o.

View

Dos 3 o mais simples. A única vez que vi alguém com dúvidas sobre o views foi quando resolveu engolir o MVC sem nem saber a sigla. Bom, o VIEW é simplesmente a camada de apresentação da informação. É onde estará contido o HTML, e os dados a serem mostrados trazidos pelo Controller. Alguma dúvida? Resumindo: VIEW = Os dados que serão mostrados na tela. Pode ser um TEXTO com HTML ou não, isso depende do que você vai querer mostrar.

Controller

Como todo mundo diz, o Controller é uma ‘Ponte’ entre o Model e o VIEW. O controller é diretamente acessado e através dele temos o manejamento de funções e manipulação dos dados vindos do Model, etc. É através do controller que montamos o conteúdo da VIEW, uma vez que é a partir dele e somente dele que chamamos a camada de apresentação.

Entenda o acesso da aplicação através de uma URL, tendo em vista que estamos seguindo o básico do MVC sem nenhuma configuração de rotas ou outras coisas:

http://www.seusite.com.br/noticias/ler/23/
noticias = Controller
ler = Método contido no controller
23 = parâmetro passado para o método LER, no caso você está querendo ler a notícia 23.

Intuitivo, não acha? Lógico que isso é bem básico.. vamos nessa..

Características Comuns dos Frameworks

Praticamente todos eles seguem os mesmos padrões, logo possuem características comuns, vejamos algumas:

  1. Libraries (Bibliotecas) – Bibliotecas são classes que auxiliam por toda a aplicação, dando suporte a banco de dados, templates, tratamento de erros, validações, etc.
  2. Helpers (Ajudantes?) – Funções que auxiliam em rotinas corriqueiras, como tratamento de erros, formatações de datas,
  3. Scaffolding – A melhor arma para o desenvolvedor na hora de inserir, editar e remover dados de suas tabelas do banco de dados. Diga a palavra para acessar, a tabela que quer manipular e você terá um CRUD perfeito.
  4. Active Records – Uma verdadeira ‘mão-na-roda’ dos desenvolvedores. Se a classe active records for bem feita, você dará adeus a querys até mesmos muito complexas. Utilize apenas uma linha de comando para retornas os usuários de uma tabela que são apenas do sexo feminino e tem idade maior que 18 anos e moram em Pernambuco. Que tal ham?

Considerações finais

Como o post já ficou extenso, vou parando por aqui e deixo vocês com o Segundo Cérebro para tirar quaisquer dúvidas que vocês tenham sobre o assunto, ou é claro, se quiserem entrar em contato comigo, pode mandar brasa.

Só deixando claro que abordarei mais sobre Frameworks, mostrando uma lista de alguns dos mais utilizados, exemplos mais específicos do ‘Codeigniter’, pois atualmente estou utilizando-o em minhas aplicações. Abraço a todos e até um próximo post

That’s all Folks.

Djalma Araújo
http://www.djalmaaraujo.com.br/




Twitter

Assinem meu feed

Assine também via e-mail

del.icio.us

My Flickr

Espaço relax

Coisas.

stuart little.

More Photos

Navegue