-3

Vantagens do PHP 5 frente ao ASP.NET

criado por Sandro J. S. Souza em 25/02/2006 5:44pm
Esse artigo foi criado com o intuito de reunir bons argumentos que fossem suficientes para convencer o diretor comercial e o gerente de desenvolvimento da empresa aonde eu trabalho a trocar o ASP pelo PHP:


  1. Licença gratuita

  2. Plataforma (SO) gratuita para se rodar ele (GNU/Linux)

  3. Velocidade de processamento ótima

  4. Eficiência de processamento ótima

  5. Metódos de segurança ótimos

  6. Plataforma ótima

  7. Roda em qualquer tipo de plataforma (SO)

  8. Código fonte livre

  9. Exceptions (para controle de fluxo) ótimas

  10. Orientação a objetos ótima

  11. É a linguagem Web mais popular e que mais cresce (em ritmo bem acelerado) no mercado

  12. Possibilita a utilização dos maiores e mais utilizados Bancos de dados no mercado (Adabas D, InterBase, PostgreSQL, dBase, FrontBase, SQLite, Empress, mSQL, Solid, FilePro, Direct MS-SQL Sybase, Hyperwave, MySQL, Velocis, IBM DB2, ODBC, Unix dbm, Informix, Oracle (OCI7 e OCI8), Ingres, Ovrimos, Firebird) sem necessitar de configuração externa como no caso do ASP que se tem que configurar o ODBC

  13. Esta sempre em atualização e tendo corrigidas falhas e adicionados novos recursos

  14. É mais estável e exige e consome menos recursos de hardware do servidor

  15. Flexibilidade ótima

  16. Componentes nativos, não dependendo de componentes externos para algumas funcionabilidades básicas (como é o caso do ASP aonde muitos desses componentes são até pagos)

  17. Documentação, controle e reportamento de erros ótimos

  18. Comunidade de desenvolvimento super participativa e prestativa

  19. Planos de hospedagem Web (na grande maioria dos casos) mais baratos e sem nenhum custo extra para a utilização do MySQL em conjunto com o PHP

  20. A programação em PHP é mais eficiente do que em ASP, pois se consegue programar um mesmo sistema com menos código em PHP do que ASP

  21. O Apache (servidor Web utilizado para rodar o PHP) é bem seguro, já o IIS (utilizado para rodar o ASP) tem diversas brechas de segurança.



Texto retirado na integra do Manual do PHP (pode parecer meio suspeito o Manual do PHP querer fazer um comparativo entre o ASP e o PHP mas tudo o que é dito abaixo é comprovado e não é uma mera "puxação de saco para o PHP"):

O ASP não é uma linguagem propriamente dita, é um acrônimo para Active Server Pages, a verdadeira linguagem usada para programar ASP é Visual Basic Script ou JScript. A maior desvantagem de ASP é fato de ser um sistema proprietário que só tem suporte nativo no Microsoft Internet Information Server (IIS). Isso limita a sua disponibilidade a servidores baseados em Win32. Existem alguns projetos em andamento que permitem que ASP seja executado em outros ambientes e webservers: InstantASP da Halcyon (comercial), Chili!Soft ASP da Chili!Soft (comercial). ASP tem a fama de ser mais lento, menos estável e incomoda que o PHP. Algumas das vantagens do ASP é o fato de usar primeiramente VBScript, é relativamente fácil de aprender se você já souber como programar em Visual Basic. Suporte a ASP também é disponibilizado por padrão no servidor IIS, o que torna fácil de fazer funcionar. Os componentes nativos do ASP são muito limitados, então se você precisar usar capacidades "avançadas", como interagir com servidores FTP, é necessário comprar os componentes adicionais.

Fonte: Manual do PHP

Crescimento do PHP desde 2000:
http://www.php.net/usage.php

Mais informações sobre o futuro do PHP:
http://www.zend.com/zend/future.php

Exemplo prático das novas melhorias na programação orientada a objetos no PHP:
http://www.php.net/zend-engine-2.php

Changelog completo da versão 5:
http://www.php.net/ChangeLog-5.php

Tamanhos das comunidades ASP e PHP para comparação das mesmas:
http://www.hotscripts.com
http://sourceforge.net/softwaremap/trove_list.php?form_cat=160

Série de artigos do Sean Hull comparando o PHP 5 e o ASP.NET e explicando o porque grandes empresas como a Oracle e tantas outras estão optando pelo PHP 5:
http://www.oracle.com/technology/pub/articles/hull_asp.html
http://www.oracle.com/technology/pub/columns/hull_php2.html

Agradeço a todos os amigos que colaboraram com idéias que me foram dadas e que com as quais eu fui montando tal artigo! Muito obrigado a todos!


Comentários:

Mostrando 1 - 10 de 45 comentários
Pessoal,

Seguinte eu não sei por que vocês perdem tempo com artigos, comentários ou qualquer outra coisa sobre comparação de linguagens, linguagens não são para ser comparadas pois isto é impossivel, cada uma tem suas próprias caracteristicas...

E na minha opinião se o cara escreveu um artigo comparando linguagens é por que ele não sabe uma delas ou nenhuma delas... Mero novato na programação.

Falow
07/10/2006 5:11pm (~17 anos atrás)

Não vou falar que o PHP é uma bosta pq é dele que tiro meu sustento... mas sou analista .NET e JAVA .. e as duas plataformas são as mais bem pagas no mercado tanto fazendo em ASp.NET e JSP... agora com o php fica um pouco a desejar no quesito salarial.. =(
05/10/2006 11:28am (~17 anos atrás)

Ramon Durães disse:
Correção:
MSDN BRASIL
http://www.msdnbrasil.com.br
22/07/2006 7:06am (~18 anos atrás)

Ramon Durães disse:
Caros Amigos,

Acabei chegando nesse thread pesquisando por outro assunto. Eu pessoalmente não gosto de fazer comparações e prefiro apresentar para a comunidade o que realmente se faz. Gostaria de pedir permissão a vocês para tecer meus comentários.

É difícil realmente fazer uma comparação de PHP com ASP.NET porque são plataformas
diferentes e confesso que eu estarei até mais confortável se fosse comparar com JAVA. Uma aplicação .NET é compilada com velocidade de processamento muito superior a qualquer script interpretado, inclusive os sites feitos em “asp 3.0 (antigo)” tradicional.

Com a plataforma .NET a Microsoft reconstruiu sua plataforma de desenvolvimento de software. O desenvolvedor ganhou um framework para o desenvolvimento de suas soluções com uma grande infra estrutura para atender os mais diversos dispositivos. O .NET Framework é baseado em maquina virtual o que mudou o conceito de desenvolvimento pois você passa a desenvolver para plataforma .NET e não para o sistema operacional. Podendo porta sua aplicação para qualquer sistema operacional que tenha .NET framework instalado. Com cerca de mais de 7000 classes o .NET permite que o desenvolvedor escolha qual linguagem trabalhar desde que ela atenda os requisitos da plataforma como 100% orientada a objetos e outros recursos. Caso você opte pelo C#
a linguagem já foi submetida ao http://www.ecma.ch e aprovada. Como .NET é totalmente
baseado em OO você pode “herdar” qualquer classe e expandir o .net Framework criando suas novas implementações que podem ser distribuídas. Toda aplicação na plataforma .net é “Compilada” para plataforma .net e na maquina virtual de destino é automaticamente recompilada conforme as características daquele ambiente. Com exclusividade o .NET oferecer acesso nativo a banco de dados SQLServer e Oracle, sendo que você já encontra pela internet outras classes nativas para banco de dados como MySQL. Com acesso nativo você fala com banco de dados sem intermediários. Ou seja elimina mais um gargalo da sua aplicação. Caso não tenha acesso nativo terá classes como System.Datal.OleDb ou System.Data.ODBC para acesso as mais diversas fontes de dados.

Observe que até esse ponto nesse rápido resumo estou falando de um mundo completamente diferente e ainda não cheguei no ASP.NET.

Quanto custa:
- .NET Framework e SDK – Gratuito
- Visual Studio 2005 Web Developer Express [Gratuito]
- SqlServer 2005 Express [Gratuito] – Sucessor do MSDE

Para o desenvolvedor web na plataforma .NET “ASP.NET” você vai ganhar um arsenal de produtividade que coloca em suas mãos as ferramentas mais produtivas do mercado, seja você um freelance ou funcionário de alguma empresa sua necessidade hoje em dia é produtividade e fazer produto de qualidade coisa que você vai atingir facilmente com ASP.NET. Não existe ainda no mercado nenhuma outra plataforma pra se comparar. Basta você ver uma demonstração, chega a ser engraçado dizer que se escreve menos código em PHP, existe cenários no ASP.NET 2.0 que você não faz nenhum código.

Com o ASP.NET você passara a ser desenvolvedor de aplicação, pois terá uma ferramenta de desenvolvimento com amplo intelisense, amplo suporte a depuração. Seu código final é compilado, ou seja não existe mandar script para servidor (“Host”). O modelo de implementação é muito similar ao que o usuário espera, pois você clica no botão e faz sua codificação. Se você está acostumado ao padrão “Spagetti Code” com o código html da camada de apresentação você vai se surpreender com asp.net cnde sua camada de apresentação fica em um arquivo e a codificação em outro.

Com amplo suporte a WebServices você pode integrar com qualquer plataforma do planeta interagindo com os serviços e trocando informações. Se você pesquisar sobre AJAX, vai encontrar o ATLAS Framework
que é a implementação gratuita para que você utilize AJAX sem fazer uma linha de codificação. Totalmente integrado ao seu modelo de aplicação no ASP.NET 2.0

Com amplo suporte a mobilidade os controles do ASP.NET 2.0 já reconhecem mais de 250 dispositivos adaptando a apresentação para melhor visualização em mobile devices.

Desde MasterPages (Paginas padrões) para herança visual para camada de apresentação, themes e skins para troca de todos css de uma só vez e até WebParts (exemplo www.start.com) para criar um portal personalizável de forma que o usuário configure sua disposição das informações você vai ter um leque de funcionalidades a sua disposição.

Com apenas 5 anos no mercado a plataforma .NET já ocupa destaque diferenciado deixando pra traz os concorrentes justamente pela qualidade oferecida e o resultado alcançado pelo time de desenvolvimento. Confira que a maioria das ofertas de emprego você vai encontrar algo sobre .NET

A porta de entrada das comunidades no Brasil é http://www.msdbBrasil.com.br e http://www.inetabr.org nós temos grupos de usuários físicos em todo Brasil. Estamos hoje entre uma das comunidades que mais se organiza e cresce oferecendo seminários em todo Brasil favorecendo o crescimento profissional de toda comunidade.

Se você busca o crescimento profissional com a construção de aplicações voltadas a todos tipos de usuários. Dos básicos aos grandes clientes esse é o caminho para sua profissionalização e projeção no mercado.

Falar da parte de infra estrutura não é minha especialidade mas você terá um back altamente escalavel com suporte a clusteres e grandes web farms.

Em atenção a comentários anteriores o sugarcrm é um bom produto e já foi portado para C# (http://www.splendidcrm.com )

Enfim,

Existe muita informação que eu procurei resumir, meu objetivo não foi lhe convencer a usar asp.net mas apenas oferecer para você mais informações para desvincular as informações desencontradas. E gostaria de aumentar minha contribuição me oferecendo para fazer uma palestra para vocês mais detalhada para que tenham um embasamento maior.


16/07/2006 5:33am (~18 anos atrás)

eliel limeira disse:
Sou iniciante em programação, mas não preciso saber muito para saber que asp.net tem algumas vantagens sobre o php, por exemplo a lingugen asp.net é feita pela micrsoft e interage mais com o servidor windows por que conhece mais a plataforma em que roda, do que o php com o servidor windows ou servidor linux
mas eu não troco php por asp.net
06/07/2006 7:10am (~18 anos atrás)

E pra quem quiser tirar mais dúvidas, segue abaixo o link oficial do que é a licença GNU:

http://www.gnu.org/philosophy/free-sw.pt.html

Att,

Wescley Costa - Narixx
16/05/2006 4:29pm (~18 anos atrás)

Onde está Software Livre lê-se Freeware!

Obrigado.
16/05/2006 4:27pm (~18 anos atrás)

Caro SysDeveloper, percebi que seus conceitos estão sendo mais hipócrita do que os do Gabriel, e detalhe, se vc não é hipócrita não precisa dizer, basta não ser.

Agora, falando de Open Source(Código Aberto) não devemos confundir com Software Livre, são parecidos porém com propósitos diferentes, uma ferramente Open Source nada mais é que algo disponibilizado inteiramente com todos os códigos para que vc mesmo possa baixar, alterar como precisar e quiser e usar conforme suas necessidades, isso não significa que tem que ser de graça e nem proibe a empresa de fazer uma versão Open Source e outra versão comercial afinal todos temos que almoçar e jantar. Quer um exemplo?? O MySql, um ótimo e respeitado banco de dados é Open Source e não Free, oq indica que vc pode baixar os códigos dele e "melhorar" conforme achar melhor ou souber fazer, mas também se não quiser se preocupar com isso, adiquira a versão paga com suporte e tudo mais. É assim que funciona o Open Source, hipocrisia é falar algo e ter tanta certeza sendo que não sabe do que está falando, o Google está aí pra isso! Pesquise antes de falar!

Um abraço.

Wescley Costa - Narixx
16/05/2006 4:22pm (~18 anos atrás)

Bom, estamos em uma guerra de cabecas mas para mim a razao esta no pensar que...
passar o software é apostar na renda atraves do treinamento ou suporte que devem ser dados a quem o recebe, esse é o modo de ganhar o $$ em cima do que foi desenvolvido...
Vamos pensar que temos liberdades para o nosso software - livre (Open - Source) ---
* A liberdade de executar o programa para qualquer disponbilidade...
* A liberdade de estudar como o programa funciona, e adaptá-lo como quizer... Codigo - fonte liberado é um exemplo.
* A liberdade de redistribuir cópias, podendo ajudar alguem...
* A liberdade de aperfeicoamento do programa e depois libera-lo a todos da comunidade ... como acesso ao codigo-fonte

-BOM... No meu entender seria isso
ATE MAIS ESPERO QUE AJUDE ALGUEM ESTAS INFORACOES...
25/04/2006 7:27am (~18 anos atrás)

Ricardo Maia disse:
O termo free não se refere ao valor monetário, mas sim que ele é livre para distribuição e modificação, ou seja, software-livre NÃO QUER DIZER SEM CUSTO!! Muitas vezes podem ocorrer custos principalmente em treinamento.

Para quem quer ganhar dinheiro com software livre deve pensar no ganho não pela venda do produto e sim de serviços agregados a ele. Ex: treinamento, implementação, customização, suporte técnico, só pra citar alguns.

Inúmeras empresas se beneficiam deste modelo: Google, IBM, RedHat...

Pesquisando no Br-Linux ví que eles citavam duas fontes onde são enumerados 07 (sete) modelos de negócio baseados em software-livre (otimização, licença dual, consultoria, assinaturas, sistemas embarcados, sistemas hospedados e adoção/patrocínio).

Não tenha medo e pesquise mais a respeito!

Parafraseando um sujeito chamado Cadu: "Grandes empresas já foram pequenas empresas algum dia."
04/04/2006 5:51pm (~18 anos atrás)

Novo Comentário:

(Você pode usar tags como <b>, <i> ou <code>. URLs serão convertidas para links automaticamente.)