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

Ah, essa parte me pegou: "Já toquei em Rust para entender mais sobre owernership, um conceito único de Rust."

Com todo o respeito, jovem, isso é quase uma piada.

Você vai aprender de verdade o que é ownership, tempo de vida de variável e gerenciamento de memória quando estiver lutando contra um segmentation fault em C, sem a menor ideia de qual ponteiro inválido causou o problema.

Ownership não é um conceito que você "entende" porque uma linguagem te contou sobre ele; é uma disciplina que você aprende praticando.

Você está colocando o carro na frente dos bois. O compilador de Rust te dá bronca e te impede de fazer besteira. O compilador de C te dá os parabéns e deixa seu programa explodir na sua cara. A segunda opção ensina muito mais.

Na verdade, para aprender Ciência da Computação na essência, a resposta nem é C. É Assembly. E sabe por que o C é a porta de entrada perfeita? Porque a tradução de C para Assembly é praticamente direta. Você escreve um *ptr = ++val; e consegue, com pouco de esforço rastrear exatamente quais instruções aquilo gerou.

Agora, tenta fazer isso com as abstrações de alto nível, macros e a "mágica" do compilador de Rust ou do C++ moderno. É quase impossível em muitos casos.

Se seu objetivo é realmente entender o computador sem superficialidades, o caminho é C. Ele te força a ser o "borrow checker". Ele te força a pensar em cada byte.

Um abraço e bons estudos!

Carregando publicação patrocinada...
2

Talvez eu tenha sido muito inocente mesmo. Bom, ainda tenho muito para explorar, e ownership é um deles. De fato não me aprofundei muito. É algo que se entende verdadeiramente praticando e praticando e praticando.

Gosto muito dos seus comentários. Foi um deles que me motivou a estudar mais sobre SQL e parar de usar ORMs como uma dependência para tudo.

Sobre C, já deixei prontinho o meu ambiente. Agora estou começando a ler um livro chamado: Computer Systems A Programmer's Perspective, Global Edition para me aprofundar em conceitos usando C.