Executando verificação de segurança...
2

Ainda bem que definiu o termo, porque é algo que ninguém tem conhecimento. Essas linguagens são mais próximas do baixo nível que algumas outras, mas ainda são de alto nível.

Se quer aprender como as coisas funcionam e ter uma noção melhor de como se programa com menos abstrações, que é isso que uma linguagem de alto nível entrega, então a linguagem a escolher é C. Ela é simples, fácil de aprender e expõe tudo o que vai fazer. Junto com um pouco de Assembly, que é baixo nível, pode ter uma noção boa da realidade da programação. C é a verdadeira linguagem universal da computação e está em mais coisas do que imagina.

Se depois sentir que quer um pouco mais de abstração e entender como são feitos os recursos mais poderosos de algumas linguagens pode partir para C++, que é uma linguagem completamente diferente, apesar dela ter uma compatibilidade bem grande com C, e por isso as pessoas acham que uma é continuação da outra, mas isso é um erro, apesar de ser possível.

Rust é uma linguagem difícil de aprender e até de usar (tem alguns pontos mais fáceis), e com conceitos muito diferentes do que as pessoas estão acostumadas. Dependendo do seu objetivo pode ser uma boa, mas não para aprender a base da computação. Eu não a recomendo nem mesmo para quem já tem alguma base, precisa ser muito mais que isso.

Hoje C++ tem mais mercado, e C não está tão longe. Rust está ganhando terreno, mas é mais falada do que usada de fato. C++ é uma das linguagens mais complexas que existem.

A maneira como aprende é mais importante do que aprende.

Faz sentido para você?

Espero ter ajudado.


Farei algo que muitos pedem para aprender a programar corretamente, gratuitamente. Para saber quando, me segue nas suas plataformas preferidas. Quase não as uso, não terá infindas notificações (links aqui).

Carregando publicação patrocinada...
1

Maniero, sempre com as respostas mais bem trabalhadas. Bom, então C++ ainda assim traz uma boa abstração referente ao C, então ela seria o certo. Sobre o exemplo de coisas feitas em C, ainda hoje, conseguiria me dar algum exemplo de alguma área que ela "domina"?

Sobre Rust ser difícil de aprender, wow! A sensação que eu tinha era exatamente o oposto. E sobre a abstração maior, já tive contato. Bom, por que muitas linguagens escolheram C++ ao invés de C para adaptar seus recursos? (Por exemplo Numpy de Python)

2

Todos os sistemas de base principais são feitos em C. Sistemas operacionais mais populares e mais nichados, drivers, servidores diversos, como de banco de dados, HTTP, e outros servios, quase todas as linguagens de script (seus compiladores ou interpretadores ou VMs), em embarcados ainda é mais popular, em bibliotecas que fornecem o mais importante em certos nichos para diversas linguagens, um pouco em jogos, ou qualquer aplicativo que exija bastante eficiência (editor de texto, Git, por exemplo) ou interoperabilidade com qualquer coisa. Você usa o uTorrent que eu sei :P :) Ele é feito em C, dá uma olhada.

Você acha que Rust é fácil de aprender porque muita gente está falando isso. Em geral quem nunca a usou, ou tem pouco conhecimento de programação. A pessoa posta para estar na moda. Até mesmo os maiores fãs da linguagem, que a conhecem bem, que sabem programar bem admitem que ela é mais difícil mesmo. Até fazem a ressalva, que é factível, o que é verdade, claro, mas fazem com mais ênfase nisso, é o viés que "todo mundo" tem, até aceitável, azar de quem não conseguir perceber isso. Dizem que é mais fácil usar depois. Isso é bem subjetivo e relativo. Até é verdade em certo ponto, mas não é uma verdade tão grande. Para explicar isso melhor precisaria de um capítulo de um livro. O que farei uma explicação um dia, em algum lugar.

Python é feito em C. Boa parte das bibliotecas que usam por aí com a linguagem são feitas em C. Algumas são C++ porque o original era C++, ou porque o desenvolvedor tinha mais familiaridade, ou porque realmente atendia melhor naquela situação. Tem que ver caso a caso, pode ter até uma explicação esdrúxula, ou mais convincente do que o normal. Parece que Numpy foi escrita em C.

1

Como eu respondi ao outro rapaz, provavelmente acabei confundindo C++ com C e invertendo os destaque delas. Achava que a maioria dos sistemas operacionais, APIs (de hardwares em geral), etc fossem feitas em C++. Ou seja, C++ é tipo um C com um pouco mais de abstração, mas ainda sem perder o desempenho que outras linguagens perdem ou te dar a possibilidade de fazer tudo na mão, se quiser.

Entrementes, já decidi que quando eu for estudar uma linguagem mais "baixa nível" do que as que eu estou acostumado, será C.

1

por que muitas linguagens escolheram C++ ao invés de C para adaptar seus recursos? (Por exemplo Numpy de Python)

No GitHub podemos ver no código fonte do numpy que somente 1,1% é C++, e C corresponde a mais de 35% (tem também uma boa parte em Python, mas a parte "pesada" que faz o grosso do trabalho por debaixo dos panos é C).


Quanto aos usos atuais de C, temos algumas coisas como o Kernel do Linux (e também do iOS, Android, OSX, Windows, etc), os interpretadores/compiladores de várias linguagens (por exemplo, PHP, Python, etc, e muitas outras tem partes em C ou C++), programas "famosos" como o Git, SQLite e outros bancos de dados (Oracle, MySQL, PostgreSQL, etc) e muito, muito mais.

1
0

E qual área C não "domina"?
Seus drivers, seu kernel linux, seu windows e o kernel dele, seu navegador, seu javascript/Lua/Python...

C++ é um complemento da linguagem C, e o fato dela ser tão mais usada hoje é porque C++ trás muito mais agilidade e flexibilidade, por exemplo com o uso dos ponteiros inteligentes, diminuindo as possibilidades de erro, enquanto C te faz usar a manipulação de ponteiros na mão, e aliás, vejo varios programas usando cabeçalhos .h ao invés do .hpp, '

Se você quer o mais proximo do baixo nivel mas que ainda consiga usar um While() aprenda C! kkk Se o While() não 'for' importante, vai direto no Assembly.