serdeはRcやArcのようなコンテナを標準サポートしていない
Feature flags · Serde https://serde.rs/feature-flags.html#rc
Feature flags · Serde https://serde.rs/feature-flags.html#rc
#Rust
名前空間を限定することによる衝突回避、型チェック
const _: () =
feat: put parts of the generated code in a private namespace (const _… · audunhalland/unimock@6d95bd4 https://github.com/audunhalland/unimock/commit/6d95bd467a0aeb0b1356d47d1988d1daa9f23752
The ability to ensure that code type checks while discarding the result is useful, especially in custom derives. For example, the following code will not compile if the type MyType doesn’t implement t
プログラミング言語やフレームワークにおいて、事前に決められているコードを書く上での指針がある。
例えば、Rustにおける「所有権の問題を回避するために無闇にcloneするのを避けるべき」、Go言語における「変数名を短くするべき」が挙げられる。これについて、盲目的に従うことが良いことだと言わんばかりに、厳密にそれを守ろうとして悩むことに異を唱えたい。一応、読む上での注意点を下部に記載している。
以下では、「良しとされていること」を「ルール」と短縮する。実際はルールというほどの強制力はなく、ただのガイドラインだったりするが、盲目的に従われることが多いことから「ルール」と呼ぶ。
前述のRustの例だと、無闇にcloneするとどういうことが起きるのか、変数名が長くなるとどう良くないのかなど、ルールに従うことのメリットとデメリットを理解していれば、そのルールに従わなくてもよい場合、従わないほうが良い場合があることはわかるはずだ。もしルールに従うことに迷いが生じているのであれば、それはルールによってもたらされる便益を本当は理解していないのだ。理解していないし理解しようともしない
一方で、ルールのありがたみを理解し、そのうえでルールに従わない方が良いと判断したのであれば、自らの責任でルールを破ってよいのだ。成果物をツール(言語)に左右されるのではなく、お前が舵を取れ。
#Rust #wip
静的型検査が厳しいコンパイル型言語になっている
人間が気にしなければいけない領域が少なくて済む
外部との境界も、コンパイルできている状態かつserdeのようなserialization用のライブラリを信用さえできれば、煩わしい「境界のテスト」を最小限に済ませられる。
O'Reilly Japan - 脳に収まるコードの書き方 https://www.oreilly.co.jp/books/9784814400799/
#Rust
「属人性」と「属スキル性」は区別したほうが良い。
まずはじめに、属人性と属スキル性について解説しておく。
属人性
特定の個人に依存する性質
#Rust
.env から読んだ環境変数つきでアプリケーションを起動するスクリプトを作る
envconfig - Rust
code: run.sh
#!/bin/bash
前までVimでメモっていたものをScrapboxに移行
https://rust-lang-jp.zulipchat.com
Top topics - The Rust Programming Language Forum
Tokio チュートリアル (日本語訳)
Rustで簡易ウェブクローラを作る
#Rust
Diesel is a Safe, Extensible ORM and Query Builder for Rust
仕事で使っている。だいたい良い。
同期処理。ただ、それで性能の問題は起きていない。
メソッド名とそのインターフェースが直感的でない