Skip to content

C++: Uma Abordagem a Nível de Hardware

Autora: Gabrielle Cristine de Lima Pereira 

Muitos são os desenvolvedores, incluindo estudantes, que já tiveram problemas com C++, devido sua abstração a nível computacional, para quem iniciou OOP (Object Oriented Programming) em Java percebe a liberdade excessiva que a linguagem C++ oferece ao programador por sua versatilidade. 

Além de seu uso para jogos, também foi vista em sistemas operacionais, como no próprio Darwin da Apple, há quem reclame da falta de segurança, mas a otimização a nível de hardware pode suprir, de uma forma inimaginável, outro uso comum como o Big Data que possui o “baixo nível” de um C e a abstração necessária. 

Na visão de um desenvolvedor, C++ é uma excelente linguagem, mas não deve ser utilizada por quem não entende no mínimo o básico de computação. Quando a testei, percebi que é extremamente rápida e menos verbosa em relação ao Java, no que diz respeito à manipulação de Arrays, Vetores, Bits e também Sistemas Embarcados. 

Java, se comparado a C++, tem toda uma estrutura complexa para rodar seus bytecodes, que são códigos intermediários utilizados para que todo o código funcione.  

No caso do C++, há uma proximidade maior do objeto gerado pela linguagem, facilitando a compilação, não diria que é baixo como o Assembly mas é em tempo real a geração do código-objeto, que termina na linguagem de máquina. Sua compilação é muito rápida, não precisando do código da “VM”, como a maioria das linguagens voltadas a objetos se comportam, facilitando assim o trabalho.  

Porém há casos e casos, programadores e programadores, se não forem bem utilizados os conhecimentos e a liberdade, podem resultar em problemas por vezes desnecessários, tornando a ferramenta inútil.  

Por fim se você utilizar ferramentas como C++ ou mesmo Assembly, poderá expandir sua mente em relação a conceitos de computação devido a facilidades que outras linguagens não apresentam. 

Comments (0)

Deixe um comentário

O seu endereço de e-mail não será publicado. Campos obrigatórios são marcados com *

Back To Top