Upgrade to Pro
— share decks privately, control downloads, hide ads and more …
Speaker Deck
Features
Speaker Deck
PRO
Sign in
Sign up for free
Search
Search
LLM を駆使して 1時間だけ Rust を学んでみた
Search
Kazuki Bandai
November 28, 2024
0
88
LLM を駆使して 1時間だけ Rust を学んでみた
Zennのスクラップ:
https://zenn.dev/scarlet/scraps/6b992052becac1
Kazuki Bandai
November 28, 2024
Tweet
Share
Featured
See All Featured
CSS Pre-Processors: Stylus, Less & Sass
bermonpainter
358
30k
Done Done
chrislema
185
16k
Designing for humans not robots
tammielis
253
25k
Building Adaptive Systems
keathley
43
2.7k
4 Signs Your Business is Dying
shpigford
184
22k
Fantastic passwords and where to find them - at NoRuKo
philnash
52
3.4k
Being A Developer After 40
akosma
90
590k
Understanding Cognitive Biases in Performance Measurement
bluesmoon
29
1.9k
The Language of Interfaces
destraynor
161
25k
Templates, Plugins, & Blocks: Oh My! Creating the theme that thinks of everything
marktimemedia
31
2.5k
Design and Strategy: How to Deal with People Who Don’t "Get" Design
morganepeng
131
19k
Sharpening the Axe: The Primacy of Toolmaking
bcantrill
44
2.5k
Transcript
LLM を駆使して 1時間だけ Rust を学んでみた 2024/11 nagoya.ts #3 Kazuki Bandai
自己紹介 • Kazuki Bandai / 萬代 一樹 • 経歴 ◦
メルカリ(2016〜2021) ◦ キカガク(2022〜現在) ▪ eラーニングサービスの開発・提供 • TypeScript (Next.js, NestJS, Prisma), Google Cloud
背景 • テーマ「Rust 特集」 • Rust ってよく聞くけど全くわかっていない 🤔 ◦ 1時間学んでみよう!
• ChatGPT フリープラン ◦ もし間違っていたらあとでツッコミください 🫣
Rust を1時間学んでみる • 1時間しかない 😱 • しっかり練ったプロンプトを 5つ用意してそれを元に学んだ • 順番にプロンプトについて話します
1, 2番目のプロンプト • 「プログラミング言語 Rust を macOS で学びたいです。 Hello World
を表示するため最低限のセットアップの手順と最小のコー ドと実行コマンドを教えて下さい。」 • 「Rust で FizzBuzz のコードを実装してください。」 • 生成したコードをコピペして手元で実行 ◦ ここまでほんの 5分程度
3, 4番目のプロンプト • 「Rust はどんな時に、何を実装するために使われることに向いて いますか?具体的に 3つ教えて下さい。」 • 「Rust に特徴的な言語仕様を実行可能なコードと共に
3つに絞っ て教えて下さい。」 ◦ Rust にまつわる色々な情報が生成された ◦ 話している時間がないのでスキップします 💦
5番目のプロンプト • 「Rust と TypeScript の関係性を TypeScript 経験者に向けて教 えて下さい。」
Rust と TypeScript の用途と目的の違い • Rust ◦ システムプログラミング言語であり、高速性、安全性(特にメモ リ安全性)、並行性を重視して設計されている。 ◦
主な用途はバックエンド、低レベルプログラミング( OS、ゲー ムエンジン、ネットワークライブラリなど) • TypeScript ◦ JavaScript に型付けを追加するための言語。主にフロントエ ンドやサーバーサイド( Node.js)で使われる。 ◦ ウェブアプリケーションやスクリプトを安全かつ効率的に開発 するために設計されている。
Rust と TypeScript の共通点 • 型システムの重要性 ◦ 両方とも強い型システムを持ち、安全性を重視しています。 ◦ Rust
は静的型付けで、実行時のエラーを事前に排除する設計。 ◦ TypeScript は JavaScript を補完する型付けシステムを提供。 • 開発者体験の重視 ◦ 両言語とも開発者の生産性を向上させるため、優れたツールを提供 します。 • WebAssembly サポート ◦ 両方とも WebAssemblyをターゲットにできるため、ブラウザで動作 する高性能なアプリケーションを開発可能です。
ここまでで40分くらい経過 • 20分余っている • もう1プロンプトいける 🤔
追加のプロンプト • 「Hello World を表示する WebAssembly を Rust で実装するコー ドを教えて下さい。また、実装可能ファイルにコンパイルする方法
とブラウザでその Hello World を表示する方法を教えて下さい。」
WebAssembly • 生成されたコードを順番にコピペして動かした
• "Hello, nagoya.ts #3" に書き換えた Rust を WebAssembly にコ ンパイルしブラウザで呼び出した
まとめ • LLM を駆使して 1時間だけ Rust を学んでみた 😀 • Rust
や WebAssembly のコードの実行ができた 💪 • 「Rust なんか面白そう!もっと学びたい!」と思えた 🎉
ありがとうございました Zenn のスクラップ https://zenn.dev/scarlet/scraps/6b992052becac1 ChatGPTのログも置いてあります