

<div id="comment_title"><!--acac-->Revol (<font color=#FF9966>usu&aacute;rio n&atilde;o registrado</font>) em <a href="#comment-144682" title="">23/01/2012 &agrave;s 3:37 pm</a> </div>
<p>Parabéns! Continue.</p>


<div id="comment_title"><!--acac--><a href='http://irmaodamara.wordpress.com' rel='external nofollow' class='url'>Allan Taborda dos Santos</a> (<font color=#FF9966>usu&aacute;rio n&atilde;o registrado</font>) em <a href="#comment-144686" title="">23/01/2012 &agrave;s 5:01 pm</a> </div>
<p>Não sabia que existia desenvolvimento web com C++.</p>


<div id="comment_title"><!--acac-->IanLiu (<font color=#FF9966>usu&aacute;rio n&atilde;o registrado</font>) em <a href="#comment-144689" title="">23/01/2012 &agrave;s 5:30 pm</a> </div>
<p>Allan Taborda dos Santos, o Apache é escrito em C, :P</p>


<div id="comment_title"><!--acac--><a href='http://www.nodiaperfeito.blogspot.com' rel='external nofollow' class='url'>Dielson Sales</a> (<font color=#FF9966>usu&aacute;rio n&atilde;o registrado</font>) em <a href="#comment-144695" title="">23/01/2012 &agrave;s 7:28 pm</a> </div>
<p>Ótimo trabalho!</p>


<div id="comment_title"><!--acac--><a href='http://irmaodamara.wordpress.com' rel='external nofollow' class='url'>Allan Taborda dos Santos</a> (<font color=#FF9966>usu&aacute;rio n&atilde;o registrado</font>) em <a href="#comment-144697" title="">23/01/2012 &agrave;s 8:06 pm</a> </div>
<p>O Apache é escrito em C, mas não é uma aplicação web.</p>


<div id="comment_title"><!--acac--><a href='http://mandrivabrasil.org' rel='external nofollow' class='url'>Manoel Pinho</a> (<font color=#FF9966>usu&aacute;rio n&atilde;o registrado</font>) em <a href="#comment-144700" title="">23/01/2012 &agrave;s 8:45 pm</a> </div>
<p>É possível fazer aplicações web com C++ usando FastCGI, como neste pequeno exemplo</p>
<p><a href="http://imasters.com.br/artigo/16167/programacao/c_na_web_com_fastcgi_e_nginx/" rel="nofollow">http://imasters.com.br/artigo/16167/programacao/c_na_web_com_fastcgi_e_nginx/</a></p>
<p>mas existem até alguns toolkits C++ para desenvolmento web de forma mais prática, como o Wt</p>
<p><a href="http://www.webtoolkit.eu/wt" rel="nofollow">http://www.webtoolkit.eu/wt</a></p>
<p>(vejam os exemplos para ter uma idéia do que esse toolkit pode fazer&#8230;)</p>


<div id="comment_title"><!--acac-->Hell (<font color=#FF9966>usu&aacute;rio n&atilde;o registrado</font>) em <a href="#comment-144703" title="">23/01/2012 &agrave;s 9:16 pm</a> </div>
<p>Legal, interessante, mas fora a performance qual a vantagem de escrever uma aplicação web em c++? Só por dúvida mesmo.</p>


<div id="comment_title"><!--acac-->Weber Jr. (<font color=#FF9966>usu&aacute;rio n&atilde;o registrado</font>) em <a href="#comment-144704" title="">23/01/2012 &agrave;s 9:20 pm</a> </div>
<p>Manoel Pinho </p>
<p>Bem legal esse projeto. Bom pra saber que existe vida na web além das linguagens de script e java.</p>
<p>Desenvolvimento web para freepascal também anda recebendo atenção dos desenvolvedores da linguagem. Apesar de ter muito para melhorar, já é bem rápido de criar algo como (fast)cgi e até módulos do apache.</p>


<div id="comment_title"><!--acac--><a href='http://vinipsmaker.wordpress.com/' rel='external nofollow' class='url'>vinipsmaker</a> (<font color=#FF9966>usu&aacute;rio n&atilde;o registrado</font>) em <a href="#comment-144705" title="">23/01/2012 &agrave;s 10:44 pm</a> </div>
<p>@Hell:<br />
Primeiramente, _desempenho_ não é *apenas* uma vantagem, pois é uma necessidade crescente perante a aplicações inovadores, que enfrentam o desafio de servir cada vez mais requisições por segundo/cliente. E C++ se destaca muito bem nesse cenário, visto que sua linguagem-base tem 2 objetivos principais (portabilidade e desempenho) e C++ adiciona poder de abstração sem gargalo desnecessário em cima disso. Qualquer linguagem nova que tente objetivar desempenho e poder de abstração vai tender a C++ ou algo muito próximo. E com o padrão de C++ do ano passado, C++ torna-se ainda melhor.</p>
<p>Mas, deixando de lado minha visão e respondendo a sua pergunta, uma das vantagens de escrever aplicações web em C++ seria sua integração com bibliotecas já existentes para a linguagem.</p>
<p>Há linguagens, por exemplo, que são ditas &#8220;adequadas a web&#8221;, mas que na verdade não passam de linguagens que &#8220;só servem para web&#8221;. C++ é uma linguagem que possui suporte a muitos paradigmas de programação e a pergunta seria &#8220;por que não&#8221;. Seu único problema era a falta de uma boa framework para desenvolvimento web e é justamente esse buraco que eu estou tentando corrigir.</p>
<p>Pense em aplicações web inovadoras que sejam *um pouco* diferentes do convencional, aplicações da nova geração da web. Como um exemplo, pensemos em uma aplicação multimídia. O principal ponto de uma aplicação multimídia é seu suporte a uma vasta quantidade de codecs, que é justamente o que não falta em C e C++. E com os recentes padrões da web (que está perdendo cada vez mais a dependência de ferramentas extras, como o Flash Player, por exemplo), embutir o processamento dessas tarefas no servidor torna-se algo natural.</p>
<p>O caso anterior foi somente um exemplo e cada caso necessitaria de uma nova discussão que apenas tornaria minha respota confusa.</p>


<div id="comment_title"><!--acac-->Ian Liu (<font color=#FF9966>usu&aacute;rio n&atilde;o registrado</font>) em <a href="#comment-144710" title="">24/01/2012 &agrave;s 5:07 am</a> </div>
<p>Eu não sei se entendi, e não sei se o pessoal entendeu também. O que vocês entendem por &#8220;Aplicação Web&#8221;? Pelo que eu vi, esse Node.js e o Tufão são servidores Web, isto é, eles esperam por requisições HTTP e retornam alguma coisa. O Apache faz exatamente isso.</p>


<div id="comment_title"><!--acac-->zer0c00l (<font color=#FF9966>usu&aacute;rio n&atilde;o registrado</font>) em <a href="#comment-144719" title="">24/01/2012 &agrave;s 9:41 am</a> </div>
<p>Ian, o Apache é só um servidor Web, sem nenhum módulo extra, tu não consegue desenvolver em Javascript (do lado do servidor) com ele. O NodeJS é um servidor web (HTTP) e contém um engine Javascript grudado, que te permite escrever aplicações (do lado servidor) em javascript.</p>


<div id="comment_title"><!--acac--><a href='http://leandro.setefaces.org' rel='external nofollow' class='url'>Leandro Santiago (tenchi)</a> (<font color=#FF9966>usu&aacute;rio n&atilde;o registrado</font>) em <a href="#comment-144720" title="">24/01/2012 &agrave;s 9:45 am</a> </div>
<p>Ian Liu, vc é que não entendeu. O apache &#8220;retorna alguma coisa&#8221; por meio de uma aplicaão ou móduloexterno, um interpretaqdor de linguagem via cgi ou fcgi. O node é um interpretador javascript q permite q vc implemente um servidor, que, além de receber e responder requisições, interpreta-as com alguma linguagem.</p>
<p>Webtoolkit, tntnet, thefrogframework, etc. são frameworks para desenvolvimento de aplicações web que implementam um servidor também, mas processam as requisições por meio de uma linguagem de programação (c++, no caso). O apache httpd pode ser usado como servidor de aplicações (odeio aquelas parafernalhas do java, glassfish, etc.), mas ele é burro e não consegue, por si próprio, interpretar as requisições com uma linguagem de programação, somente com coisas externas (perl, php, cgi, etc.).</p>
<p>Ou seja, um framework como descrito no texto permite criar aplicações que instanciam servidores web, e não somente criar servidores web que rodam aplicações, como no caso do apache.</p>
<p>E quem disse que não dá pra desenvolver pra web com c++? O difícil é achar um host compartilhado onde hospedar a aplicação. Mas é algo extremamente viável. Quem conhece mais ou menos sabe que qualquer coisa capaz de manipular socket e que implemente o protocolo http pode ser usado para criar aplicações web.</p>
<p>Inclusive o netcat!</p>


<div id="comment_title"><!--acac-->Weber Jr. (<font color=#FF9966>usu&aacute;rio n&atilde;o registrado</font>) em <a href="#comment-144725" title="">24/01/2012 &agrave;s 10:59 am</a> </div>
<p>Tenchi</p>
<p>&#8220;O difícil é achar um host compartilhado onde hospedar a aplicação.&#8221;</p>
<p>Nem tanto, tem bastante que aceita fastcgi. Mesmo em planos bem fuleiros.</p>
<p>&#8220;Quem conhece mais ou menos sabe que qualquer coisa capaz de manipular socket e que implemente o protocolo http pode ser usado para criar aplicações web.&#8221;</p>
<p>Isso é efeito de estudar frameworks sem entender o funcionamento. A pessoa se perde em tantos objetos, xmls e serviços de um JBoss da vida.</p>


<div id="comment_title"><!--acac-->José Fernando (<font color=#FF9966>usu&aacute;rio n&atilde;o registrado</font>) em <a href="#comment-144734" title="">24/01/2012 &agrave;s 1:58 pm</a> </div>
<p>Gostei muito da sua ideia, vinipsmaker. Quando se desenvolve aplicações web usando FastCGI, o gargalo acaba sendo justamente o I/O e não a CPU (que é justamente o ponto no qual o C++ beneficia). Com o seu framework, não existe mais gargalo de I/O (aproveitando as ideias do node) nem de CPU.</p>

