Este blog está com novo endereço. Visite www.brasilphp.net

Pesquisar

quarta-feira, 11 de março de 2009

Diferenças básicas entre servidores Linux e Windows


Esta briga é antiga. E acredito ainda perdure por longos e longos anos. Na verdade, o quê vou escrever aqui não será nada com muita profundidade técnica. Meu objetivo com este artigo é esclarecer possíveis dúvidas de pessoas iniciantes no PHP no momento de escolher o servidor para hospedar seus projetos.


Bom, para começar, se você já está conseguindo realizar testes com o PHP, provavelmente já possui um entendimento básico de como funciona um servidor (ao menos um localhost da vida!).

Para a grande maioria dos programadores PHP iniciantes ou apenas curiosos da linguagem, as primeiras experiências ocorrem no micro pessoal (geralmente Windows) usando algum pacote que automatiza a configuração e instalação (
Xampp e EasyPHP) do PHP, Apache e Mysql.

Diferenças

Sempre levando em conta que temos em mente objetivos para programadores iniciantes e, portanto, como projetos pequenos e pouca complexidade, não existem diferenças siginificativas ao optar por um ou outro servidor.

Vários hosts no Brasil já oferecem planos de hospedagem em que é possível escolher qual o sistema operacional do servidor para seu site. Saiba que se você só pretende utilizar o PHP em seu projeto, um servidor Linux atende perfeitamente sua necessidade.

O que preciso deixar bem claro neste momento é que você pode usar um servidor Windows ou Linux, não faz diferença. Mas aprenda o seguinte:

  1. Servidor Linux: somente linguagens de livre distribuição (caso do PHP);
  2. Servidor Windows: liguagens de livre distribuição (PHP e outros) e tecnologias Microsoft (ASP, .NET).
Há uma complexidade maior neste assunto, apenas não estou abordando neste artigo por julgar desnecessário no momento.

terça-feira, 10 de março de 2009

Conceitos gerais sobre client-side e server-side


Ao iniciar sua vida de desenvolvedor web, você precisará conhecer claramente estes dois conceitos sem nenhuma dúvida ou questionamento.

Client-side

Significa "lado do cliente", ou seja, aplicações que rodam no computador do usuário sem necessidade de viajar, por vezes, milhares de quilômetros até seu servidor (ou host) para efetuar determinada tarefa.

Basicamente, ao se falar de aplicações clint-side na web, estamos falando de javascript, e mais recentemente, de AJAX (
Asynchronous Javascript And XML).

Existem vantagens e desvantagens ao utilizar o javascript e por conseqüência, o AJAX.

A principal vantagem está na possibilidade de você economizar
bandwidth (largura de banda), que é o tráfego mensal contratado em seu plano de hospedagem, e dar ao usuário uma resposta mais rápida de sua aplicação por não haver processamento externo.

Outra vantagem ao utilizar, agora o AJAX, seria o apelo visual de sua aplicação e rapidez de resposta. O quê o AJAX faz é processamento externo (
server-side) parecendo ser interno (client-side). O usuário não percebe que houve um novo carregamento de página, pois ele busca informações no servidor e mostra rapidamente em um local específico da página através do javascript. Bom, o foco aqui não é o AJAX, que será abordado futuramente de forma mais detalhada.

A principal desvantagem do javascript atualmente é que o usuário pode desativá-lo em seu navegador. Se a sua aplicação basear-se exclusivamente em javascript, nesse caso, ela simplesmente não vai funcionar. É claro que você pode colocar em seu código-fonte um artifício para o site nem mesmo abrir se o javascript estiver desabilitado, mas, convenhamos, é algo feio e imperdoável frente a seu visitante.

Server-side

Significa "lado do servidor", ou seja, aplicações que rodam no servidor (geralmente no host, caso você não possua um próprio).

Há algumas linguagens de programação que dominam o mercado atualmente:
  • PHP
  • ASP
  • Ruby (em ascensão)
  • .NET
  • Python
  • JAVA
Dizer qual é melhor em detrimento de outra é algo complexo e quase impossível, visto que depende muito do gosto pessoal do programador.

Como estamos falando sob o ponto de vista do conceito de
server-side, todas elas funcionam igual:
O usuário entra no site e clica em algum link, faz algum cadastro ou simplesmente quer ver uma imagem em tamanho maior. Nesse momento, o
browser manda uma solicitação que viaja até o servidor e este envia de volta ao usuário a resposta.

Conclusão

Recomendo para todos utilizarem tanto o PHP quanto o javascript ao desenvolverem seus projetos web. Validações em javascript garantem que o PHP só receba os dados corretos, economizando sua largura de banda e deixando seu site com carregamento de páginas mais rápido.


Requerimentos para iniciar no PHP

Para iniciar seus estudos no PHP, você precisará conhecer algumas coisas:
  1. Conceitos de liguagens server-side e client-side;
  2. Diferenças básicas entre servidores Linux e Windows;
  3. Pacotes de programas para começar (servidor, banco de dados, PHP);
  4. Conceitos básicos da linguagem PHP.
Após este pequeno artigo, seguirão mais 4, onde detalho melhor cada um dos tópicos acima.

Seja bem-vindo ao Brasil PHP

Acredito que um pouco mais de conhecimento gratuito e de qualidade nunca é demais para ninguém. Sobretudo neste momento em que vivemos e a internet está a cada dia mais presente em nossas vidas.
No entanto, fornecer um conteúdo relevante parece estar muito difícil atualmente. Mas eu me pergunto... Será que toda esta informação disponível na internet é confiável o suficiente? Eu responderia tranqüilamente que nem sempre podemos confiar ou mesmo compreender.
Todas as pessoas parecem ter pressa em publicar algo, mesmo que insignificante. Talvez esta seja também minha motivação ao iniciar este blog.

Neste espaço irei publicar conteúdos feitos por mim abordando tópicos que considero importantes sobre o PHP. Tutoriais, dicas, scripts, história, perspectivas futuras, opiniões, etc.
O público alvo do blog serão predominantemente pessoas que estão iniciando no PHP e, por isso, não dominam técnicas avançadas da linguagem.

Bom, espero que gostem e que contribuam também, pois não pretendo ser dono de verdades absolutas.