In Layered Architecture (e.g., Clean Architecture, or Hexagonal architecture), the key idea is to use the dependency inversion principle. This blog post provides the dependency inversion principle in Rust, skipping the details of Layered Architecture. The sample in this blog post is a news app which gets news asynchronously. I will illustrate the dependency inversion principle with three layers: U