タグ

関連タグで絞り込む (1)

タグの絞り込みを解除

rustとあとで読むに関するyusuketのブックマーク (12)

  • Rustのメモリ管理機能とその特徴

    初出:技術評論社刊「ソフトウェアデザイン 2021年9月号」 先日、技術評論社よりRustのメモリ管理機能についての特集に寄稿させて頂きました。 この記事は自分が寄稿させていただいた記事をブログ用に一部推敲・加筆を加えたものです。 なお、ソフトウェアデザインでの特集ではより実践的な例でのメモリ管理についての解説もあるので、興味のある方は誌のほうも手にとっていただければと思います。 プログラム言語におけるメモリ管理の課題プログラミングにおける課題の一つとしてどうやってメモリ領域(ヒープ領域)を管理するかというものがあります。 C言語ではmalloc/free関数などを用いて手動でメモリを管理しています。 これらの関数はメモリアドレスを示すポインタを介してメモリ管理を行います。 malloc関数は必要なメモリ領域を確保してその先頭番地のポインタを返し、プログラム内ではその番地のメモリを読み書

  • Introduction - Rust Design Patterns

    Introduction Participation If you are interested in contributing to this book, check out the contribution guidelines. News 2024-03-17: You can now download the book in PDF format from this link. Design patterns In software development, we often come across problems that share similarities regardless of the environment they appear in. Although the implementation details are crucial to solve the tas

  • 2020 年版 Command Line Tool を作ってみる in Rust - Qiita

    2 年前に書いた記事 Command Line Tool を作ってみる in Rust が今でも参照されることがあるようなので、2020 年版にアップデートした内容を書いていきます。 概要 この記事では Rust で Command Line Tool を作るときに、便利なライブラリ、ツール、そしてサービスを紹介します。主に CLI working group が取り組んでいる Command Line Applications in Rust(以後 Book と呼称)のアップデート内容が中心です。その他にプラスアルファして個人的に便利だと思うツールやサービスを紹介していきます。 こちらに完全なサンプルコードを公開しています。 見やすさの都合上、説明と直接関係のないコードや設定は省略して表示します。手元でビルドして確認したい場合はこちらのソースコードをダウンロードしてご確認ください。 エラ

    2020 年版 Command Line Tool を作ってみる in Rust - Qiita
  • Rustで古典的なDisk-Oriented DBMSを実装した話 - Write and Run

    KOBA789 です。みなさん DBMS は好きですか。私は好きです。 最近、自作 DBMS をずっと作っていて、ようやく最低限の機能ができたので公開をしました。 (とはいえコードを書いていたのは正味2日ほど。設計と勉強に2週間かかった) github.com この記事ではこれを作った目的と、そのちょっとした詳細についてご紹介します。 目的 Disk-Oriented DBMS の学習に適している Rust で書かれた実装が欲しかった、というのが理由です。 DBMS の勉強に適している実装というのは意外と多くありません。 MySQL や PostgreSQL といった有名な実装は実用的である一方でコード量は非常に多く、また細かな最適化によって教科書的なアルゴリズムと実際のコードの差が大きくなっているため、初学者にとっては構造を把握しづらくなっています。 教科書的な実装の Disk-Orie

    Rustで古典的なDisk-Oriented DBMSを実装した話 - Write and Run
  • Rustに影響を与えた言語たち - Qiita

    各カラムの意味は次のとおりです。言語の特徴は主にWikipediaを参考にしていますが、正確な分類は困難なため多少の独断と偏見が含まれていることをご了承ください。 登場年代 プログラミング言語が登場した年代です。前後3年の誤差は見逃してください FP(関数型プログラミング) 言語がFPを強くサポートしているかを示しています 程々にサポートしている場合は△を示しています OOP(オブジェクト指向プログラミング) 言語がOOPを強くサポートしているかを示しています 並行計算 アクターや CSP/π計算モデルの特徴を言語が強くサポートしているかを示しています 外部ライブラリを使えばできるよ!みたいなものは除外します 静的型付け 言語の最も主要な処理系が静的型付けをサポートしているかを示しています パラメータ多相 言語がパラメータ多相をサポートしているかを示しています ジェネリクス(Java)、テ

    Rustに影響を与えた言語たち - Qiita
  • 安全なシステムプログラミング言語Rustへの招待 | κeenのHappy Hacκing Blog

    # 安全なシステムプログラミング言語Rustへの招待 ---------------------- [IIJ Labセミナー](https://iijlab-seminars.connpass.com/event/152079/) === # About Me --------- ![κeenのアイコン](/images/kappa.png) * κeen * [@blackenedgold](https://twitter.com/blackenedgold) * Github: [KeenS](https://github.com/KeenS) * GitLab: [blackenedgold](https://gitlab.com/blackenedgold) * [Idein Inc.](https://idein.jp/)のエンジニア + 2年半くらい仕事Rustを書いている

  • Rustの非同期プログラミングをマスターする - OPTiM TECH BLOG

    こんにちは、R&Dチームの齋藤(@aznhe21)です。 さあみなさん、ついにこの時がやってまいりました。 日2019/11/8にリリースされたRust 1.39により、あらゆる環境で最高速な非同期プログラミングが可能になりました。 新たな時代に乗り遅れないよう、今のうちにRustでの非同期プログラミングをマスターしておきましょう。 なお、この記事は、先日開催したOPTiM TECH BLOG Meetupの内容を大幅に加筆修正した上でエントリに仕上げたものです。 まず最初に伝えたいこと 非同期の歴史 Rustの非同期プログラミングの歴史 Rust 1.0以前 Rust 1.0 〜Rust 1.3 Rust 1.2あたり Rust 1.11あたり Rust 1.26あたり Rust 1.36 Rust 1.39 Rustの非同期プログラミングの特徴 ゼロコスト抽象化 プラットフォーム非依

    Rustの非同期プログラミングをマスターする - OPTiM TECH BLOG
  • Rust Language Cheat Sheet

    Rust Language Cheat Sheet 24. September 2024 Contains clickable links to The Book BK, Rust by Example EX, Std Docs STD, Nomicon NOM, Reference REF. Clickable symbols BK The Book. EX Rust by Example. STD Standard Library (API). NOM Nomicon. REF Reference. RFC Official RFC documents. 🔗 The internet. ↑ On this page, above. ↓ On this page, below. Other symbols 🗑️ Largely deprecated. '18 Has minimum

  • Rust初心者が参考になった記事 - Qiita

    はじめに ちょっと年末にかけて、Rustをガッツリ書く機会があったんですが、 Rustを触ったのが久々ということもあり、結構苦戦した部分もありました。 そこでまた忘れないように参考になった記事をここにまとめておこうかなと考えました。 僕のようにまだRust初心者である方にとっても参考になったら幸いです。 参考になった記事紹介 エラーについての記事 Rustでエラーを合成する この記事を書いたきっかけといってもいいかもしれない。 Result<T, E>とResult<T', E'>のEとE'を合成する方法について記述されている。 これについて知らないとJsonのデシリアライズなどで困ることになる。 記事の核となるfailureのリポジトリはここにあるのでよかったら見てね。 RustのOptionとResult Optionの便利メソッドとResultの便利メソッドというのが特にいい。 st

    Rust初心者が参考になった記事 - Qiita
  • 概要 - Rust APIガイドライン

    Rust APIガイドライン (非公式日語訳) これはプログラミング言語RustのためのAPIデザイン上の推奨事項をまとめたものです。 大部分は、Rustエコシステム内の標準・非標準ライブラリを構築してきた経験を元に、 Rustのライブラリーチームによって執筆されました。 これはあくまで指針です。 項目ごとの充実度には差があり、今後の加筆修正が必要となっている曖昧な部分もあります。 Rustのクレート開発者は、ここから使えそうな内容を選び取り、 イディオマティックで相互運用性の高いライブラリを開発する上での重要な検討事項とするべきです。 また、このガイドラインは義務的に従わなければならない基準とされるべきではなく、 あくまで従わない場合に比べエコシステム内の他のクレートとのより良い相互運用が達成できるような 物となっています。 このブックはチェックリストと各項目の説明に分かれています。

  • Rustで高速な標準出力 | κeenのHappy Hacκing Blog

    κeenです。Rustで何も考えずに標準出力に吐いてると遅いよねーって話です。 今回、標準出力に「yes」と1000万回出力するアプリケーションを書いてみたいと思います。 println! まあ、最初に思いつくのはこれでしょうか。

    Rustで高速な標準出力 | κeenのHappy Hacκing Blog
  • 実践的なアプリケーションを書いてみよう! Rustの構造化プログラミング【第二言語としてのRust】 - エンジニアHub|若手Webエンジニアのキャリアを考える!

    実践的なアプリケーションを書いてみよう! Rustの構造化プログラミング【第二言語としてのRustRustを使って、実際にアプリケーションを3つ書いてみましょう! その前に、プログラムの構造化に必要な手法、ジェネリクス、構造体、列挙型、それにトレイトといった概念についても説明します。 前回の記事では、Rustの基的な文法や型を説明し、他のプログラミング言語ではあまり見かけない、Rustならではのメモリ管理の仕組み(所有権・参照・ライフタイム)についても解説しました。 今回は、Rustを使って、実際にアプリケーションを書いてみましょう。 制作するのは、Unix環境ではお馴染みの文字列検索プログラムであるgrep(その機能限定版をRustで書いたrsgrep)、アナグラム(単語の文字を入れ替えた単語)を求めるプログラム、そしてHTTP/0.9サーバです。 しかし、アプリケーション開発に入

    実践的なアプリケーションを書いてみよう! Rustの構造化プログラミング【第二言語としてのRust】 - エンジニアHub|若手Webエンジニアのキャリアを考える!
  • 1