De Objective Caml para C e C++/Introdução: diferenças entre revisões

[edição não verificada][edição não verificada]
Conteúdo apagado Conteúdo adicionado
Sem resumo de edição
mSem resumo de edição
Linha 1:
A linguagem C é uma linguagem bastante simples, criada na década de 70 e pouco atualizada desde então. A linguagem C provê uma camada de abstração em cima do nível de linguagem de assemblagem compostas. Essa camada é composta por tipos básicos (basicamente tipos numéricos), construtores de tipos simples, construções algorítmicas clássicas, e modularização funcional. Os principais pontos fortes da linguagem C são uma ampla difusão, a rapidez de execução dos programas compilados, e a possibilidade de interação com recursos de hardware. A principal desvantagem é que não possui conceitos de linguagens de programação mais avançados, o que pode penalizar a produtividade dos programadores naquela linguagem. A facilidade de acesso aos recursos de hardware, como a memória principal, é uma faca de dois gumes: permite programas muito rápidos, e falhas extremamente súteis (do tipo que se manifesta só em um determinado ambiente, em condições de uso muito específicas e que podem levar semanas a serem identificadas e corrigidas).
 
A linguagem C++ é uma linguagem derivada de C, e inclui novos paradigmas de programação como a orientação a objetos, tipos referências, polimorfismo paramétrico. C++ oferece muito mais recursos que C e é uma linguagem significativamente mais complexa e difícil de se dominar. Uma propriedade interessante é a sua compatibilidade quase total com a linguagem C, fazendo com que código C possa ser compilado por um compilador C++. Essa compatibilidade se estende até o código objeto: código C++ pode fazer uso de código desenvolvido em C. Embora a linguagem C++ seja bastante complexa, felizmente, não é necessário entender e dominar todos os recursos providos por essa linguagem para poder utilizá-la nos seus projetos de programação.