Nesta aula estudaremos as principais características da linguagem C++ e também, aprenderemos vários conceitos relacionados com a linguagem. |
A LINGUAGEM C++
A linguagem C++ possui um conjunto de características e definições que fazem da mesma a segunda linguagem mais utilizada no mundo, perdendo somente para a linguagem C. A seguir, listamos o que entendemos ser os principais recursos da linguagem e discutimos um pouco sobre cada item.
Não temos como objetivo esgotar o debate de cada característica ou mesmo, sobre a linguagem C++ propriamente dita. O objetivo é descrever para fazer com que o aluno venha a conhecer e ir se acostumando com as terminologias.
- Superset de C
- A linguagem C++ possui todos os recursos e funcionalidades do C, logo, dizemos que C++ é um superset de C, isto é, é um conjunto que possui todos os elementos de outro. Um programa em C pode ser facilmente migrado para C++, até porque, o seu código é compatível pela grande maioria dos compiladores.
- Estaticamente tipada
- Da mesma forma que a linguagem C, em C++ temos tipos que são pré-definidos pela linguagem e que, abarcam os tipos fundamentais das informações que utilizamos no dia-a-dia. Assim, não precisamos criar um objeto para representar os números inteiros, até porque, já existe o tipo primitivo
int
. - Compilada
Todo código C++ é compilado para o que chamamos de Linguagem de Máquina, isto é, a linguagem universal dos computadores. Logo, nosso programas são executados o mais rapido possível, até porque, estão escritos na linguagem do compilador.
Obviamente existem interpretadores de código C++, porém, não é de conhecimento do autor um interpretador C++ que seja utilizado em larga escala ou mesmo, em projetos grandes.
- Multi-paradigma
- A linguagem C contempla o paradigma de programação procedural, o que foi, para a sua época, uma grande evolução na forma em que as linguagens possibilitavam a criação de programas.
- A linguagem C++ foi além do paradigma procedural e adicionou a capacidade de desenvolvimento Orientado a Objetos. Mesmo que o paradigma Orientado a Objetos tenha sido um grande sucesso a programação procedural é suportada pelo C++ até os dias atuais. Inclusive, atualmente, é possível trabalhar com o paradigma funcional, o que ainda não está muito difundido entre os desenvolvedores C++.
- Alto e Baixo nível
- Compiladores C e C++ comumente geram códigos em Assembler e, em seguida, são convertidos para código de máquina. Por essa característica, foi disponibilizado um meio para a escrita de código em Assembler junto ao código C e C++. Assim, conseguimos escrever trechos de código em alto-nível que contenham trechos em linguagens de baixo-nível.
- Orientação a Objetos
A Orientação a Objetos é, sem nenhuma dúvida, um divisor de águas para as linguagens de programação. Porém, o conceito não é novo e só foi adicionado às linguagens depois de muitos, mas muitos anos de debate.
A principal ideia por detrás da orientação a objetos é o de definir novos tipos de dados e assim, agrupar as função para a sua manipulação criando uma entidade representativa. Então, ainda que muito se discuta sobre OO, o principal conceito e, que sozinho, já representa uma grande evolução, é a junção das características (propriedades) e funcionalidade (funções) num mesmo lugar. Obviamente que, se você possui algum conhecimento de C++, dirás que essa característica foi incluída quando a estrutura struct foi disponibilizada. Porém, a estrutura struct só foi capaz de aglutinar todas essas informações com o advento das classes. É importante lembrar que atualmente, conseguimos criar instâncias através de estruturas definidas tanto com struct como também com classes.
Por fim, a discussão sobre os recursos do C++ não possuem fim e sempre que possível, devemos participar dessas discussões. Até porque, no final, como rapidamente percebemos, ambas partes estão corretas e o que diferencia-os é o ponto de vista utilizado em suas analises!
Tags curso, cpp, visão geral, superset, linguagem c, blog
Comentários
comments powered by Disqus