Executando verificação de segurança...
Respondendo a [Não disponível] dentro da publicação [Não disponível]
1
  • Rust complica coisas simples, por exemplo herança de herança

a questão especifica de herança nos traits ja acho um ponto positivo do rust, afinal não é herança e sim interface (contrato) que entra naquela coisa de "composição sobre herança"

acho melhor a maneira explicita que go e rust lida com isso, tem muitas situações que o rust complica coisas simples, mas se tratando do sistema de tipos acho que foi feito da melhor maneira possivel

sem contar que sim pode usar implementações padrões nos traits

trait Animal {
  fn som(&self){
    println!("teste som");
  }
  fn respira(&self);
  fn comida(&self){
    println!("teste comida");
  }
}

struct Mamifero ;

impl Animal for Mamifero {
  fn respira(&self) {
    println!("Ar");
  }
}

fn main(){
    let tmp = Mamifero{};
    tmp.som();
    tmp.respira();
    tmp.comida();
}

isso com compila sem erros e gera o resultado esperado

teste som
Ar
teste comida

esse codigo pode ser testado no rust_playground

Carregando publicação patrocinada...