Conspiração no desenvolvimento WEB/Desktop

Bom como estou sumido, resolvi colocar alguns artigos mostrando como desenvolver um site muito rapidamente separando os mundos da programação PHP do WebDesign. Ah e no final vou dar uma palhinha sobre tudo isso com acesso a qualquer banco de dados e AJAX com Bando de dados também, já que muitos tem duvidas sobre isso.

Quem for lendo esse artigo e os próximos, vão ver que no final não vão querer mais trabalhar sozinhos, ou melhor vão querer se especializar em uma unica atividade e claro nao vao querer largar do smarty+php+db+ajax hehehehe.

1. Um pouco de teoria
2. Smarty PHP para programadores PHP
3. Smarty PHP para WebDesigner´s
4. Integrando os dois mundos (WebDesigner+Programador)
5. Exemplo de página com acesso ao qualquer banco de dados (usando packages da PEAR.php.net)
6. Exemplo de página com AJAX consultando banco de dados e com o smarty.

1. Um pouco de teoria

O que é Smarty?

Tomando a definição do próprio site oficial (smarty.php.net), temos que Smarty é um sistema de templates para PHP, fornecendo uma maneira fácil de controlar a separação da aplicação lógica e o conteúdo de sua apresentação.
O principal objetivo de se utilizar a arquitetura MVC* é a de separar a lógica da aplicação (as regras de negócio do seu programa), da interface do usuário (as telas do programa) e do fluxo da aplicação (como são enviadas as mensagens dos eventos e para quem).

Mas porque eu teria um trabalho enorme em separar meu sistema nessas três camadas?

Quem vem acompanhando os meus post´s já notaram que sou um viciado em PHP :) e que podemos fazer milhões de coisas com essa ferramenta, entao vamos pensar um pouco mais.
Tenho uma empresa que desenvolve sites para web/intranet e tenho uma equipe de pelo menos duas pessoas, um programador PHP e um webdesigner. Ai pegamos um projeto de um site de pedidos, coisa simples:

a. controle de login de clientes
b. alteracao de cadastro de clientes
c. cadastro de produtos
d. cadastro de pedidos
e. listagem de pedidos
f. manutencao de pedidos

Ok um programador PHP faz tudo isso sozinho na boa sem precisar do webdesigner, mas agora pensem assim vc programador PHP só fazer o php sem se preocupar com o layout e nenhum código HTML, tah até agora nada disso eh muito visivel, com o desenrolar do artigo e seus tópicos vou argumentando algumas idéias de como tudo isso irá facilitar no nosso dia a dia. Voltando para o projetinho, ok foi feito em smarty o site para web; a empresa gostou começou a ter mais agilidade nas vendas dos seus produtos e viu que esse site comecou a ficar lento pois está hospedado fora da empresa e tudo mais, agora quizeram colocar o webserver dentro da propria empresa, contrataram mais funcionarios para atender essas solicitações, então quer dizer que o seu cliente CRESCEU, com sua ajuda. Podemos agora para agilizar fazer uma intranet com menos imagem(aquela coisa toda para web) deixar as telas mais limpas e objetivas, já q será somente os funcionarios da empresa q estaram fazendo a manutencao naqueles pedidos e clientes. Entramos na jogada novamente, ufaaaa ganhar mais uma graninha hehehe.
Oh maravilha, fizemos o site com smarty PHP, entao quer dizer as regras de negócio já estão feitas o programador PHP nao vai ter q refazer todos aquele acesso ao banco de dados, select´s e validacoes, nada... e sim alguns ajustes, e quem vai ter q trabalhar nesse caso eh o WebDesigner isso o programador de TELA(HTML) melhor dizendo tirando os frufrú das páginas e fazendo uma intranet reutilizando as variáveis que o programador PHP já havia feito e bingo a intranet está feita.
Agora vão me perguntar, e o programador PHP nao ganha nada nessa historia? bom pensamos que ele pode estar empenhado já em outro projeto e ganhando bem mais, e claro ele vai trabalhar um pouco nesse pequeno, mas nao vai mais se preocupar em pegar aqueles detalhezinhos do tipo, se o cliente for do SUL dar um desconto de 50% e o restante deixar normal, ah essas pecuinhas, o sistema já vai estar pronto para isso.
Tah e se nao tiver outro trabalho para o programador PHP, tipo ele está precisando ganhar R$, bom cara, vai estudar outra coisa, aperfeicoar para pegar mais mercado, uma dica eh estudar PHP-GTK, pois quem sabe depois esse mesmo projeto não vai cair numa loja e dai web/intranet são lentos para isso, o que melhor se encaixa eh uma aplicação DESKTOP, e o mais legal que no desktop vc vai se preocupar com o visual, pois a regra, lembra? já está feito.

Nossa entao vamos agora para a prática, já que um breve da teoria do nosso cotidiano já foi +/- explicado.

Não desanimem, estou escrevendo o próximo artigo, mais técnico.
2. Smarty PHP para programadores PHP ....

*MVC: Model View Controler


Imprimindo certo com CSS

Por padrão, quando um usuário imprime uma página web que não é projetada com a impressão em mente, a folha de estilo é suprimida e a página é imprimida sem qualquer estilo. Ela tende a parecer uma longa linha de informação iniciando com seu cabeçalho, o conteúdo, uma longa lista de sua barra lateral e então o rodapé.

Para ver a como seu site aparece para a impressão, imprima uma página ou, do menu do seu browser, escolha a Impressão> Pré-visualização. Pouco atraente, não é? E desperdiça bastante papel tendo aquela longa lista da barra lateral dos links do blogroll que imprimem mais de duas páginas.

Para fazer o seu site adequado para imprimir, temos de concentrar-nos na arquitetura do site, a estrutura que mantém o conteúdo dentro de cada seção.

Para entender um pouco mais e continuar a ler esse pequeno tutorial que lhe ajuda a fazer a impressao de suas páginas bem feitas clique aqui.

Fonte: Estilos para Impressao CSS
Tutorial CSS
WikiPediaCSS
CSS Garden
CSS para WebDesign (Maujor)


CSS/tableless a era da WEB 2.0

"CSS é a sigla em inglês para Cascading Style Sheet que em português foi traduzido para folha de estilo em cascata e é definida como:
Folha de estilo em cascata é um mecanismo simples para adicionar estilos (p.ex., fontes, cores, espaçamentos) aos documentos Web.
Web Standards pode ser traduzido como Normas para Web, tem por objetivo a criação de uma Web universal e define-se:
Web Standards é um conjunto de normas, diretrizes, recomendações, notas, artigos, tutoriais e afins de caráter técnico, produzidos pelo W3C e destinados a orientar fabricantes, desenvolvedores e projetistas para o uso de práticas que possibilitem a criação de uma Web acessível a todos, independentemente dos dispositivos usados ou de suas necessidades especiais."

Bom o por que deste artigo sobre web 2.0 ? simples pois estou ajudando um parceiro meu a aprender CSS e indiquei um site que utilizo muito, este site é que peguei o texto acima e como há muito sobre web2.0 na net entao façam uma googlesada e procurem sobre o assunto. Mas o que quero mostrar é este site totalmente em português e que ajuda muito a alguém entender CSS.

Tutorial CSS - Tableless - Web Standards: site oficial com todos os tutoriais

E o tutorial mais interessante que eu achei é sobre o zen garden do maujor: que pode ser visto aqui.

Obs.: Para quem está começando a usar CSS, é muito simples saber o porque que isto é mto bom. No momento que vc faz um HTML é simplesmente um HTML, mas quando vc atribui propriedades a uma tag do HTML dai sim estamos falando de CSS.

ex.:

Rafael Stoever

O que veriamos seria somente um Rafael Stoever em negrito e nada mais, mas se quizessemos que todos os negritos fossem com um fundo de outra cor ?
Ai poderiamos usar o nosso amigo CSS.

b {
background-color:#6495ED;
}

Rafael Stoever
Maria Josefina
Lara Maria José
Sofia Clementina

E o resultado seria

Rafael Stoever
Maria Josefina
Lara Maria José
Sofia Clementina

E quem brinca com CSS tem que ter uma lista de cores, RGB e tals... e uma listagem de cores que achei na net e gostei mto é essa que estou disponibilizando aqui.


Exemplos no IE

Estava aqui em outro micro testando as minhas aplicações AJAX e tals e percebi que o CSS não está funcionando perfeitamente, sendo que no firefox vai que é uma maravilha, digo as mensagens em vermelho dizendo que o campo esta inválido.
:(
e detalhe os campos acentuados do ajax ainda nao consegui arrumar, procurei na net fiz um monte de coisas e nada ainda, será que alguém sabe como arrumar isto ?


Curso PHP

É galera... agora quem quizer um curso de PHP estou fazendooooo uhuuu

HTML - Básico

PHP - Básico

PHP - Avançado

depois eu coloco o cronograma...


WordPress

O caramba... estou aqui tentando descobrir o que está acontecendo com esse meu css no FireFox e no IE.
No Firefox o menu não aparece ali no lado e no IE aparece.. o que será q estou fazendo de errado ?
Oh sacoooo.
Vou tentar até o fim.