[duvidas] Sobre Async Rust
Olá!
Sou novo na área da programação, estou trabalhando na área a apenas 3 anos, atualmente com a linguagem C++
.
Recentemente, conheci Rust que é uma linguagem muito interessante, gostei de estudar e criar algumas ferramentas simples.
Porém estava pensando em começar algo mais elaborado, um projeto backend, uma API Rest. Não que o projeto seja grande, mas algo mais bem estruturado.
Então me deparei com uma grande dificuldade, Async Rust
e Async Traits
, acho que essa é a parte mais complicada da linguagem que vi até agora.
Tentando aplicar uma arquitetura hexagonal, na parte dos repositories por exemplo, não consegui encontrar uma outra opção a não ser usar async-trait, ou seja, uma crate externa onde não deveria ter, o que se propaga para as outras camadas.
Outro problema é que mesmo utilizando essa crate, o código simplesmente não compila quando utilizo workspace, como se essa crate estivesse impedindo a trait de ser vista por outros membros (libs) do projeto.
Então uma abordagem que funcionou foi deixar tudo mais acoplado, no mesmo pacote, mas estruturado em pastas diferentes dentro da src
.
Pode ser que eu esteja fazendo algo muito errado e não era para ter essa dificuldade toda, por isso estou pedindo um auxílio aqui.
Queria entender qual a melhor forma de usar essa funcionalidade da linguagem e como estruturar o código, talvez sugestões de projetos open-source bons para utilizar como base.