Para a o desenvolvimento das aplicações utilizamos alguma ferramenta CGI
capaz de interpretar nossos scripts no servidor e retornar uma saída
padrão para o usuário (HTML), para que este interaja e poste informações
para serem processadas no servidor, etc.
Existem várias disponíveis no mercado, assim como em banco de dados temos
as pagas e as de uso livre. Ainda é muito grande o número de servidores
utilizando ASP que é proprietário da Microsoft, o qual só pode ser
instalado em um servidor com Windows.
Em contra partida temos soluções que são multiplataforma como JSP (Java
Server Pages), PHP e ColdFusion, que apesar de ser pago, possui suporte
a instalação em várias distribuições
Linux.
Inicialmente em resposta à utilização de ASP surgiu o PHP, que
difundiu-se muito e ganhou um grande número de adeptos. Uma linguagem
clara para programação que oferece suporte ao desenvolvimento com o
paradigma de orientação a objetos. Por ter se difundido tanto, possui
diversos pacotes disponíveis e documentação disponível na Internet.
Uma outra ferramenta que vem crescendo muito equivalendo-se ou até mesmo
ultrapassando sua utilização é o JSP, pois sendo originado a partir da
tecnologia Java da Sun, apresenta-se como uma solução muito consistente
devido ao grande suporte que oferece a linguagem Java e como grande
oponente ao grupo .NET da Microsoft. Também oferece suporte à implantação
em um servidor Linux.
Uma solução proprietária que muitos desconhecem que também oferece suporte
a Linux é o ColdFusion da Macromedia, atualmente na versão MX 6.1, o qual
será discutido brevemente os parágrafos abaixo.
Nessa última versão oferece suporte à vários bancos de dados, tanto
proprietários como os de uso livre. Oferece a possibilidade de ser
executado em um servidor Linux, com o Apache e consultar uma base num
MS SQL Server num servidor Windows. É uma linguagem simples e clara,
tendo vantagens e desvantagens sobre as demais.
Como grande vantagem é a possibilidade de desenvolver rapidamente, pois
a linguagem possui tags diferenciadas, como por exemplo CFINPUTs, que além
de possuírem os mesmos atributos das INPUTs definidas no HTML, permitem na
própria tag definir a validação do campo no cliente, mensagens, etc, sem a
necessidade de escrever códigos em Javascript para isso, como seria nas
linguagens citadas acima. O ColdFusion gera automaticamente esses códigos.
Permite a integração com a tecnologia Java, pois seus códigos são compilados
e essas classes geradas em Java são utilizadas para o envio da saída para o
usuário.
As desvantagens são o custo que para sua implantação é necessário
adquirir-se a licença para poder-se instalar no servidor e a comunidade
de desenvolvedores CF ser muito pequena em relação as demais. Por exemplo,
para a geração de um documento em PDF que no caso de PHP e JSP tem-se
suporte nativo ou com o uso de pacotes e bibliotecas, em CF só com soluções
proprietárias.
Constata-se em um estudo de caso que apesar de consumir uma quantidade
considerável de memória RAM e demais recursos, tem-se uma boa performance
com microprocessador Pentium IV 2.4 MHz, 1GB de memória RAM e com
barramento local a 800MHz, sem a necessidade de um servidor dual server.
Tudo isto com o webserver Apache com suporte a SSL e Conectiva 8.
Um detalhe que cabe ressaltar que nesse estudo de caso que pude observar
por abrir uma série de portas os serviços do CF, seria mais interessante
a colocação de um Firewall antes do mesmo para evitar o acesso externo
direto.