Muito bom esse conteúdo, hoje em dia com linguagem que não usam tipagem de dados, ninguém tem noção desses escopos de memória, simplesmente vão e fazem. Eu venho do java e posso dizer que para se ter performance você tem que entender essas partes e até um fine tunning com flags pro garbage collector é um assunto extenso. Na minha opinião a evolução do Hardware, as linguagens começaram abstrair muito esse assunto, e dai surgiram a escalabilidade pra contornar esse tipo de problema. Acredito muito que se tivessemos melhores programadores desse nível, não precisariamos ter tanto de escalibidade etc. Da uma olhada em rust tbm, é uma filosofia legal mas também tem uns conceitos estranhos kkk. Obrigado por compartilhar, vou acompanhar.
Os computadores foram evoluindo e junto com essa evolução se foram várias dificuldades. Com essas dificuldades foram também vários conceitos que eram estudados para resolve-las. Ou seja, com o tempo, a necessidade de um programador ter que realmente saber programar foi meio que se "diluindo".
Mesmo eu sendo novo e ainda no início da minha carreira, hoje qualquer um consegue escrever um código e fazer ele funcionar - não importando se é útil.
As pessoas sempre estão criando algo para que a vida delas fique mais fácil. Mas isso acaba destruindo várias coisas que são essenciais. O conforto faz com que elas não queiram aprender mais a fundo algo - já que elas conseguem usar este algo sem ir mais a fundo - porque é chato.
Enfim, me alongei nessa parte 😆
Eu ando dando voltas em linguagens. Acho que isso se dá pelas ideias que vem na minha mente e eu passa-las pro código em alguma linguagem.
Eu já dei uma olhada, bem por cima, no Rust. Achei uma linguagem bem legal e com a melhor documentação que eu já vi até hoje. Mas voltei pro C depois que eu li que "Rust só é um C/C++ maquiado", algo desse tipo.
Então eu tô tentando estudar os conceitos básicos para ter noção do que eu quero.
Estendi o pouco. risos.
Todas as linguagens usam tipagem. Algumas fazem isso dinamicamente e costumam ter só um tipo, por isso fica escondido.
O gerenciamente de memória é ortogonal à tipagam (no geral, tem uns casos que é mais relacionado). Linguagens de tipagem estática pode esconder isso que ele falou também. E existem algumas de tipagem dinâmica que você precisa lidar com isso, mas é bem raro e inpopular.
Não é só dominar o GC que ajuda. É dominar a tipagem e outras coisa. E a linguagem ajudar. C# ajuda muito mais que Java. Java está prometendo uma revolução nisso para começar ficar próximo de C# nisso, mas era para ter saído na 10, até agora naa, mas não desistiram oficialmente. É difícil mudar com o carro andando, C# nasceu assim e só melhorou depois.
Hardware tem límite e custa caro. E tem casos que você pode deixar milagres de vezes mais rápido com pequenos tdetalhes, haja hardware para compensar isso.
Precisar escalabilidade precisamos, mas seria mais vertical e menos horizontal que é mais cara e mais difícil, ironicamente :D
Esses dias saiu esa que a Microsoft vai substituir um tiquinho de C# por Rust, justamente porque é um caso que faz sentido ter ganhos que nem C# deu para entregar.