タグ

ブックマーク / zenn.dev/j5ik2o (2)

  • Rustでドメイン固有型を作る際のコツ

    ドメイン固有型である、ドメインオブジェクトをRustで実装する際のコツみたいなものを簡単にまとめました。まぁ「ドメイン固有型」というと大袈裟なので、「独自に型を作る」を想定してもらえばよいと思います。OOPに慣れている人がハマりやすい点も簡単に言及しています。ご参考までに。 アドレス帳型を作る アドレス帳型を例にします。 先にコードを以下に示します。コード全体はGitHubリポジトリを参照してください。 #[derive(Debug, Clone)] pub struct AddressBook { name: String, entries: Vec<AddressEntry>, } impl Default for AddressBook { fn default() -> Self { Self { name: String::default(), entries: Vec::def

    Rustでドメイン固有型を作る際のコツ
    efcl
    efcl 2021/09/08
    Rustでドメインオブジェクト。structを使う
  • ID生成方法についてあれこれ

    ID生成について聞かれることが多いので、独自の観点でまとめてみます。タイトルは適当です…。 DBMySQL(InnoDB)を想定しています。あしからず。 ID生成を知りたいなら ID生成に関しては以下の記事がよくまとまっているので参考にしてみてください。値形式など詳しく書かれています。 ID生成大全 Facebook, Twitter, Instagram等がどうやってIDを生成しているのか まとめ ID生成方法 以下のID生成方法は、お手軽に採用しやすいもの順で列挙します。 DB採番/連番型 AUTO_INCREMENT DBのAUTO_INCREMENTで採番する方法。 Pros 数値型で扱える 普通は64ビットの整数型を採用することが多い 単調増加する連番ですので、ソート可能でかつインデックスの空間効率がよい 単調増加するので、キャパシティを予測しやすい 64ビットあればあまり気に

    ID生成方法についてあれこれ
    efcl
    efcl 2020/10/22
    ID生成について。 UUID、ULID、snowslake
  • 1