大家都怎麼啦!

過去幾個月我一直在研究 Rust,並且總是試圖接近 Laravel 環境中的實際堆疊。

對於我來說,作為一名 PHP 開發人員,跳入 Rust 確實是一項艱鉅的任務,因為我以前從未接觸過函數式編程,但是我找到了一種方法讓這變得「更容易」。

銹據我所知

整個生態系統由不同的套件組成,您應該根據需要加入它,這與 Laravel 不同,Laravel 圍繞框架有一個非常強大的環境。

所以我的第一印像是我必須學習如何使用基礎包:

  • 多滕維

  • 時空

  • 時間

  • Uuid

  • 等等。

但是當涉及到 Web 開發(主要是 API)時,您必須從眾多現有框架中選擇一個。喜歡:

  • Actix(目前使用)

  • 阿克蘇姆(評估中)

  • Rocket(人們總是告訴我不要使用它,仍然不知道為什麼)

而且它們都沒有 Laravel 那種固執己見的“結構”,所以我決定建立我的。

Rust 中的 Laravel

我為什麼要談 Laravel?因為它為我們提供的“MVC”結構對於使用 Rust Web 的小型專案來說足夠優雅。

當我使用固定的 Laravel 框架編寫 Rust 程式碼時,事情開始變得有意義。這是我正在談論的內容的結構:

./src
├── app.rs
├── config.rs
├── http
│   ├── controllers
│   │   ├── leaderboard_controller.rs
│   │   ├── mod.rs
│   │   └── submissions_controller.rs
│   ├── mod.rs
│   └── requests
│       ├── leaderboard_request.rs
│       ├── mod.rs
│       └── submission_request.rs
├── main.rs
├── models
│   ├── leaderboard.rs
│   ├── mod.rs
│   └── submission.rs
└── repositories
    ├── leaderboard_repository.rs
    ├── mod.rs
    └── submission_repository.rs

該專案目前正在使用中:

你可以在這個Pull Request中檢查我的混亂情況

問題是:在使用 Rust 時遵循這個想法會是一件好事嗎?簡單性和良好的維護結構是我在專案中一直追求的目標。

另外,我正在考慮寫一些關於我的流程如何從 PHP 遷移到 Rust 的系列文章,您有興趣閱讀類似的內容嗎?

希望在這裡看到您的想法,謝謝!


原文出處:https://dev.to/danielhe4rt/laravel-inside-rust-i-have-a-reason-for-that-ke3


共有 0 則留言