Ode ao C++
Wanderley Caloni, 2008-04-21: c++
_Strauss: lembra quando nós conversávamos sobre o assunto "Por que C++?", há muitas décadas atrás, e seu blogue era um dos primeiros no Brasil que não ficava relatando o que o autor comia no café da manhã, além de falar sobre programação? Pois é, eu estava reorganizando meus g-mails e reencontrei nossa conversa e, pior, seu artigo "derivado" dela, que irei republicar aqui pois, assim como antes, acredito em tudo que escrevi naquela época._

(direto do “Contato do Site”)

Cristiano – Olá! Sou programador em basic (Vbasic/Qbasic), fico indignado, com pessoas que sabem enteder a linguagem C++, assembler… Como podem? Eu acho isto coisa de outro mundo! Será que eu tenho chances de aprender a linguagem?

**Strauss **– A resposta é simples: estudando. Eu tb comecei com QBasic e VB. Arrume um livro de C++ e estude. Treine bastante. E hoje em dia é mais fácil do que quando eu comecei, pq eu não tinha acesso à Internet. É simples assim… :-)

**Caloni **– Você pode ir tão longe quanto queira, mas pra isso a primeira coisa que vc tem que fazer é querer =).

**Strauss **– Acho que vou fazer um post sobre isso. “Por que C++” :-) Vc podia me ajudar…

**Caloni **– Escrevi um textículo sobre o assunto da escolha, mas não visando o mercado:

/**

  • @title Por que C++

  • @author Wanderley Caloni Jr

  • @date 31.01.2005

*/

É natural que um programador tenha preferência por uma linguagem. Geralmente por motivos pessoais que se refletem nas características da linguagem. Eu, por exemplo, tenho vários motivos para amar essa linguagem:

Linguagem C. Todas as vantagens da linguagem C estão embutidas em C++. E sem aquele papo erudito que deve-se programar em OO para ser C++. Por ser multiparadigma, a linguagem também suporta o melhor da programação procedural e estruturada.

**Popularidade. **C++ é o que há. Linguagem unânime e reconhecida no mundo todo como de uso geral. Dificilmente você vai encontrar um algoritmo que não tenha representação em C++.

**Economia e Expressividade. **Pode parecer bobagem, mas coisas como operador de incremento e valor em todas expressões permite que se faça muita coisa com poucas linhas. Isso a torna muito expressiva. Isso, em outras palavras, quer dizer que você pode juntar várias expressões numa só, e esse conjunto será também uma expressão.

**Liberdade. **Em C++ você é o culpado de virtualmente qualquer coisa de bom e ruim que aconteça no seu programa, pois você tem que seguir poucas regras e tem que ser responsável no que faz. C++ não te ajuda a seguir um bom modelo de programação com restrições embutidas. Isso a torna difícil para iniciantes, mas conforme aumenta a experiência, maior o prazer em programar.

**Portabilidade. **A possibilidade de compilar e rodar o seu código em vários ambientes - de compilação e execução - é uma característica útil e agradável. No meu caso é só agradável, pois dificilmente faço código portável, apesar das boas noções que tenho sobre o assunto. E são essas boas noções que me permitem afirmar que C++ suporta muito bem essa possibilidade.

**Rapidez. **Pode não ser importante em muitos casos, mas já é do instinto do programador o desejo de eficiência no código. E nada como programar numa linguagem extremamente eficiente em tempo de execução para se sentir feliz de ver o código rodando.

FIM

[]s

**Strauss **– Legal. Vou colocar minha água mercadológica no feijão e colocar no site.

Nos dias de hoje…

Não quis alterar o texto original, mas colocaria, além de rapidez, o título economia de recursos. É incrível o quanto progredimos no quesito hardware todos esses anos, e mesmo assim, existem linguagens e ambientes que parecem ter fome suficiente para consumir tudo e deixar um computador de última geração parecer um micro “meio lerdinho”. Felizmente não preciso dar nome aos bois, pois todos sabem ou conhecem pelo menos uma linguagem com essa característica.

_Também não quis generalizar. C e C++ não são as duas únicas opções quando se fala em bom desempenho. Existe também assembly e [linguagens de script](http://www.python.org/), que chegam inclusive a ser mais flexíveis e rápidas (além de mais produtivas)._

Ainda acredito em tudo isso que C++ proporciona e irá continuar proporcionando por muto tempo. Para os que não seguiram o linque do artigo do Strauss, existe uma modesta lista de programas escritos nessa linguagem ao redor do planeta. Muitos são conhecidíssimos e usados nos quatro cantos do mundo, muitas vezes em mais de um sistema operacional. C++ está morto? Longe disso… talvez pareça assim em território nacional, mas esse é o motivo de meus votos de sucesso no início de nosso grupo C++.