Quando você cria um site, todo
seu conteúdo e imagens, tabelas, botões, formulários, menus, etc. Faz parte do
chamado layout.
Layout, também chamado de
front-end nada mais é do que o visual do seu site, toda aquela beleza que o
usuário vai visualizar.
Antigamente quando não existia
ferramentas tão modernas como as de hoje em dia para desenvolver/desenhar o
front-end do site, os desenvolvedores o faziam com tabela, criando visuais
quadrados e iguais, praticamente.
O que mudava era apenas as cores,
por que as tabelas são quadradas, e esse era o limite do desenvolvimento/desenho
front-end, não passava de tabelas e imagens montadas umas com as outras para
criar o visual final do site.
Como a maioria dos usuários
utilizava o Internet Explorer no desktop (computador de casa), eles não tinham
que se preocupar com padrões e otimização para outros browsers. O que o usuário
criava no IE, não precisava reformular nem melhorar nada para outros browsers,
até por que não existiam.
Depois de algum tempo, surgiu o
Firefox, que deixou o IE no chinelo. O Firefox tinha uma interface bonita, mais
limpa, tinha mais espaço para a tela e não para as barras de favorito, histórico,
etc. (como no IE.).
O Firefox tem sua própria engine
(motor), isso é, tem seu próprio jeito de interpretar e exibir os comandos HTML
e CSS.
Com isso, os desenvolvedores
agora tinham algumas preocupações: nem sempre o que era exibido no IE, era
exibido exatamente no Firefox, ou vice-versa. Algumas colunas mais para
esquerda, outras mais para baixo, etc.
Agora os programadores tinham que
lidar com as diferenças de interpretação de cada navegador, criando assim
blocos de comandos no HTML e CSS, de modo que fique idêntico em ambos os
navegadores.
Depois que o Google Chrome foi
lançado, agora eram 3 navegadores principais diferentes para fazer com que o
site ficasse igual em todos. A partir daí já não era mais tabelas quadradas e
imagens para os sites.
Estávamos quase na ponta do CSS3,
já tínhamos muitas tecnologias de programação web. Muitos utilizaram várias
artimanhas para fazer com que o que fosse exibido em um, fosse exibido em
todos.
É aí que entra as frameworks.
Codeigniter é considerado um dos melhores frameworks.
O CodeIgniter mudou a minha
vida
A partir de uma época em que era
necessário você “formatar” o seu CSS de modo que tudo que você programasse
ficasse idêntico em todos os navegadores, foram surgindo os frameworks.
Framework em programação nada
mais é do que um conjunto de arquivos HTML,CSS,JS, etc. Que servem de auxílio
para nós programadores atribuir um padrão de código, organizar melhor nossos
arquivos de programação, e também economizar muitas linhas de código.
Quando eu comecei a programar PHP
(há muitos anos atrás) eu não tinha muito conhecimento de frameworks. A maioria
dos sites que eu via eram feitos com
tabelas, muitas artimanhas e muitos erros de CSS.
E toda vez que eu ia criar um
site novo, era a mesma coisa, pegava o arquivo de configuração no banco de dados
e copiava pra pasta do projeto, o arquivo de configuração era responsável por conectar
no banco e selecionar o banco correspondente.
E era isso, eu (e mais milhões de
pessoas) tinha(mos) muitas brechas de código, fazendo com que se a gente
criasse um site importante, ficasse fácil a invasão do mesmo.
E foi pensando em melhorar a
segurança, organização de código e agilidade dos códigos que eu procurei
aprender sobre frameworks.
De cara eu encontrei o
CodeIgniter, foi amor a primeira vista, quando comecei a ler o manual (é, eu
sou daqueles que pega a engine, o manual e sai dali sabendo de tudo) eu fiquei
impressionado com as funções que ele tinha.
Tinha URL Amigável (eu quebrava a
cara pra fazer isso)
Url amigável para quem não sabe,
é quando você deixa o endereço atual da página de forma que fique fácil
memorizar, que fique amigável para lembrar depois.
seudominioaqui.com/loja.php?cat=canetas&id=10274
- isso aqui não é amigável.
seudominioaqui.com/loja/canetas/caneta-azul-e-verde
- isso é uma url bem amigável.
O CodeIgniter por padrão já fazia
isso, era uma beleza, meus olhos brilharam quando vi a capacidade dessa
framework e o quanto ela iria agilizar meu processo de desenvolvimento.
Ele tinha uma estrutura de
arquivos que deixava meu site totalmente bem organizado, a estrutura chamada
M.V.C. (Model View Controller).
O conceito MVC faz com que o seu site rode
mais rápido, usando o desempenho apenas com o que realmente é necessário.
Na pasta Model, você colocaria os
arquivos de modelo que iriam ter funções que retornariam dados vindos do banco
de dados. Isso era ótimo, por que você não precisaria ter 1 arquivo, e toda vez
que fosse conectar tivesse que carregar tudo daquele arquivo para pegar 1 dado,
ou ter que fazer a query no próprio índex.php (o que é uma péssima prática).
Na pasta View, você colocaria os
arquivos de front-end (muito mais organizado), arquivos que eram responsáveis
apenas por exibir as informações. Ele capturava os dados do Controller, e fazia com que os arquivos
se tornassem dinâmicos, exibindo apenas o HTML.
Na pasta Controller, basicamente você guardaria todas as “pastas” do site, em formato PHP (o CodeIgniter automaticamente faz a estrutura dos arquivos de modo que os arquivos PHP na pasta Controller se tornem pastas e se comuniquem com as bibliotecas, e por ai vai.) e é responsável por dizer o que vai aonde.
Por exemplo, no Controller “principal”,
tinha uma função “índex”, essa função seria chamada automaticamente caso o usuário
acessasse “seusite.com/principal” ou se esse fosse o Controller principal do
site (que pode ser atribuído um controlador para ser exibido no diretório raiz).
Dentro da função índex, você iria
poder se comunicar com o model, chamando eles e fazendo verificações no banco,
ou chamando views para exibir conteúdo no site, passando parâmetros dinâmicos através
do Controller, como por exemplo o título da página, poderia fazer com que o
arquivo estático de view mudasse o título vindo do Controller.
Entre outras funcionalidades do
CodeIgniter, como biblioteca para gerenciar SESSIONS, biblioteca para auxiliar
no gerenciamento de GETS e POSTS de modo seguro, biblioteca para auxiliar em
upload de imagens e arquivos de modo seguro e bem automatizado (ao mesmo tempo
totalmente personalizável), etc.
Eu percebi que o CodeIgniter era
a melhor ferramenta para eu programar o back-end do meu site.
Back-end para quem não sabe, é
toda a programação que o usuário final não vê. Como as requisições GET e POST,
as validações de formulário, comandos de laço, estruturas condicionais,
verificações de sessão, e etc.
Mas faltava algo para terminar de
completar minha vida, estava faltando uma framework front-end, para casar logo
tudo de uma vez.
O Bootstrap foi o tchan
O Bootstrap era o par perfeito, a
colméia da abelha, o nariz do palhaço, a luva da mão (ta, já chega.) que eu
precisava para poder completar tudo.
O Bootstrap para quem não sabe, é
uma biblioteca (conjunto de arquivos) que auxiliava na programação front-end, já
formatava automaticamente seu CSS, fazendo com que ficasse responsivo (dava pra
visualizar o site no celular de boa), otimizado e compatível com todos os
browsers.
O lado ótimo do Bootstrap é que
ele é feito pela equipe do Twitter (sim, Twitter), o que dava pra confiar e reconhecer
que era uma ferramenta Ó T I M A!
Pensando nisso, resolvi casar os
dois e integrei o Bootstrap no CodeIgniter, fiz um pacote, e eu tinha tudo que
precisava na minha vida, framework para auxiliar o back-end do site, e outra
framework para auxiliar no front-end do site.
Quando for iniciar seu projeto,
coloque os arquivos da pasta BootIgniter no diretório criado no htdocs, ou onde
preferir.
Dentro estão o arquivo índex.php
(você nunca deve mexer aqui), o diretório Application, System e Assets (é aqui
q você vai colocar os arquivos terceiros do site, como CSS, JS, XML e imagens,
etc.)
Após colocar os arquivos na pasta
do FTP ou na pasta do projeto no Htdocs, já pode ir olhar no browser, está
pronto-para-usar.
Caso você ainda não conheça o
CodeIgniter ou o Bootstrap, seja ousado, abra os arquivos (só não altere os
arquivos índex.php na pasta principal nem os arquivos da pasta system), faça
como eu fiz: edite, teste, veja o que acontece, olhe no manual, teste de novo.
Abaixo o endereço das duas
frameworks para você conhecer mais e acessar o manual delas.
Site do CodeIgniter: www.codeigniter.com/user_guide/
Site do Bootstrap: www.getbootstrap.com/getting-started/
0 comentários:
Postar um comentário