Pesquisar aqui

quarta-feira, 10 de março de 2021

Por que a linguagem de programação C ainda está em alta?

Nenhuma tecnologia se mantém viva por 50 anos, a não ser que ela faça o seu trabalho muito bem. A linguagem de programação C está na ativa desde 1972, e ainda reina como um dos elementos fundamentais do mundo do software. Em alguns casos, determinada tecnologia sobrevive porque as pessoas simplesmente não conseguem substituí-la. Nas últimas décadas, dezenas de outras linguagens surgiram - algumas projetadas explicitamente para desafiar o C, outras se destacando como um subproduto de sua popularidade.

Não é difícil dizer que o C precisa ser substituído. As práticas de pesquisa de linguagem de programação e desenvolvimento de software sugerem que existem maneiras muito melhores de trabalhar. No entanto, o C persiste da mesma forma, com décadas de pesquisa e desenvolvimento por trás disso. No final das contas, poucas linguagens conseguem superar o seu desempenho. Ainda assim, vale a pena ver como o C se compara à concorrência.

C vs. C++

Naturalmente, o C é comparado com o C++, a linguagem que - como o próprio nome indica - foi criada como uma extensão do C. As diferenças entre C++ e C podem ser caracterizadas como extensas ou excessivas, dependendo de quem for falar sobre o assunto.


Embora ainda seja semelhante ao C em sua sintaxe e abordagem, o C++ fornece muitos recursos genuinamente úteis que não estão disponíveis nativamente no C: espaços para nome, modelos, exceções, gerenciamento automático de memória e assim por diante. Projetos que exigem desempenho de alto nível - bancos de dados, sistemas de aprendizado de máquina - são frequentemente escritos em C++ usando esses recursos para extrair ao máximo o desempenho do sistema.

Além disso, o C++ continua a se expandir muito mais intensamente que o C. O próximo C++ 20 traz ainda mais recursos, incluindo módulos, biblioteca de sincronização e conceitos que facilitam o seu uso. A revisão mais recente do padrão C adicionou poucas novidades e se concentrou apenas em manter a compatibilidade com versões anteriores.

O problema é que todas as vantagens do C++ também podem funcionar como desvantagens. Quanto mais recursos C++ você usa, mais complexidade você apresenta e mais difícil fica domar os resultados. Os desenvolvedores que se limitam a um subconjunto de C++ podem evitar muitas de suas piores armadilhas e excessos. A equipe de desenvolvimento do kernel Linux, por exemplo, evita o C++.

Escolher C em vez de C++ é uma maneira de você evitar ter que lidar com excessos do C++, adotando um minimalismo imposto. Obviamente, o C++ possui um rico conjunto de recursos de alto nível por um bom motivo. Mas se o minimalismo é mais adequado para projetos atuais e futuros, então o C faz mais sentido.


Sem comentários:

Enviar um comentário

Comente de forma construtiva...

Nota: só um membro deste blogue pode publicar um comentário.