Rustに関するtokbのブックマーク (4)

  • RustのDI | κeenのHappy Hacκing Blog

    κeenです。Rustその2 Advent Calendar 2017が空いてたので小ネタをば。1日目の記事です。 Dependency Injectionの話。 例えば3層アーキテクチャで組む時には以下のような依存関係が発生します。 [user interface(web)] | V [logic(service)] | V [database access(dao)] これを他の実装に依存せずにそれぞれの層を書きたい、どうしようという問題設定です。 ナイーブな実装 簡単に考えたらRustならトレイトで抽象化してあげればよさそうです。 コードにするなら共通インターフェイスにトレイトを定義してあげて pub trait UserDao { fn find_user(&self, id: i32) -> Result<Option<User>>; }

    RustのDI | κeenのHappy Hacκing Blog
    tokb
    tokb 2017/12/03
  • サービス終了のお知らせ

    サービス終了のお知らせ いつもYahoo! JAPANのサービスをご利用いただき誠にありがとうございます。 お客様がアクセスされたサービスは日までにサービスを終了いたしました。 今後ともYahoo! JAPANのサービスをご愛顧くださいますよう、よろしくお願いいたします。

    tokb
    tokb 2017/07/29
  • Rustは何が新しいのか(基本的な言語機能の紹介) - いもす研

    Rust は、Firefox を開発する Mozilla が開発し、次世代ブラウザの開発に使っているプログラミング言語です。借用検査という概念を導入することによりメモリ安全およびデータ競合安全をコンパイラが保証する言語であり、2015年中頃の安定版のリリースあたりから次第に注目を集めるようになりました。 メモリ安全とは、メモリの範囲外アクセスや二重解放、ヌル参照、未初期化領域へのアクセスがない状態を表します。ただし、Rust の言うメモリ安全とは、メモリリークをしないことを保証するものではありません。 データ競合安全とは、あるひとつのオブジェクトに対しての読み込みおよび書き込みのが同時に起き結果が不定になる状態にならないことを表します。競合状態とは異なります。 無名関数という概念を様々な言語が次々と導入したように、プログラミング言語は相互に影響を及ぼし徐々に変化しています。Rust は「寿

    tokb
    tokb 2017/07/25
  • The Rust Programming Language

    A language empowering everyone to build reliable and efficient software. Performance Rust is blazingly fast and memory-efficient: with no runtime or garbage collector, it can power performance-critical services, run on embedded devices, and easily integrate with other languages. Reliability Rust’s rich type system and ownership model guarantee memory-safety and thread-safety — enabling you to elim

    The Rust Programming Language
    tokb
    tokb 2014/08/10
  • 1