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
Rubyらしさとは?
Search
Sponsored
·
SiteGround - Reliable hosting with speed, security, and support you can count on.
→
Aki Nakahara
May 22, 2025
Programming
26
0
Share
Embed
Copy iframe code
Copy JS code
Copy link
Start on current slide
Rubyらしさとは?
Aki Nakahara
May 22, 2025
More Decks by Aki Nakahara
See All by Aki Nakahara
SidekiqでAIに商品説明を生成させてみた
akinko_0915
0
200
はじめてのWeb API体験 ー 飲食店検索アプリを作ろうー
akinko_0915
0
300
ワイガヤLT会 #2:gitの「めんどくさい」を解決
akinko_0915
0
22
Other Decks in Programming
See All in Programming
Welcome to the "Parametricity" 🏙️ − Generic だけど Specific な世界 −
guvalif
PRO
1
180
SREの積み重ねがAI駆動開発のガードレールになった ― 7つの実践/SRE Guardrails The 7
tomoyakitaura
8
5.5k
型も通る、synthも通る、それでも危ない 〜AIのCDKの権限とコストを機械で検証する〜 / It Passes Type Checks, It Passes Synth Checks, but It’s Still Risky — Automatically Verifying Permissions and Costs in AI’s CDK —
seike460
PRO
1
440
変わらないものが、変わるものを決める — 意図駆動開発 × イベントソーシング × イミュータブル | What Doesn't Change Decides What Can — IDD × Event Sourcing × Immutability
tomohisa
0
410
FDEが実現するAI駆動経営の現在地
gonta
2
220
『コードを書く以外の』エンジニアリング〜課金基盤移行プロジェクト推進のためのTips4選
yuriko1211
0
540
ITヒヤリハットを整理してみた ~ライフサイクルと原因から考える再発防止策~
koukimiura
1
110
【SRE NEXT 2026 Lunch Session】一人目専任SREの立ち上げを加速する ― AIと進めたオンボーディングで2分を0.04秒にした話
pkshadeck
PRO
0
3.1k
【やさしく解説 設計編 #1】「ドメイン駆動」と「実装駆動」ってなに? 〜設計の考え方を、たとえ話で学ぼう〜
panda728
PRO
1
130
AIが無かった頃の素敵な出会いの話
codmoninc
1
230
Generative UI & AI-Assistants for Your Angular Solutions
manfredsteyer
PRO
1
230
AIエージェントで 変わるAndroid開発環境
takahirom
2
720
Featured
See All Featured
Art, The Web, and Tiny UX
lynnandtonic
304
22k
svc-hook: hooking system calls on ARM64 by binary rewriting
retrage
2
390
The B2B funnel & how to create a winning content strategy
katarinadahlin
PRO
1
420
The Straight Up "How To Draw Better" Workshop
denniskardys
239
140k
Design in an AI World
tapps
1
270
A Guide to Academic Writing Using Generative AI - A Workshop
ks91
PRO
1
360
Bioeconomy Workshop: Dr. Julius Ecuru, Opportunities for a Bioeconomy in West Africa
akademiya2063
PRO
1
180
End of SEO as We Know It (SMX Advanced Version)
ipullrank
3
4.3k
We Have a Design System, Now What?
morganepeng
55
8.2k
The State of eCommerce SEO: How to Win in Today's Products SERPs - #SEOweek
aleyda
2
11k
The #1 spot is gone: here's how to win anyway
tamaranovitovic
3
1.1k
Between Models and Reality
mayunak
4
380
Transcript
Rubyらしさとは akinko0915 (あきんこ)
自己紹介 akinko0915 (あきんこ) 中原 暁 (なかはら あき) Classi株式会社 25卒 JavaScriptと非同期処理を極めるために特訓中
Zennで学習記録投稿中!(@akinko0915) Podcast配信中 (前向くラジオ)
カレンダーアプリのプラクティスで受けた指摘 発表テーマの背景
Rubyらしいコードとは・・・?
Rubyist Magazineにも「Rubyらしさ」について語られている 多くのライブラリが別途インストールする必要なく使えるよう になり、利便性は非常に高まったのだが、いくつかのライブラ リに関しては「Ruby らしくない」 という評価を聞いた。具 体的には、メソッドの名前付けや挙動が Ruby の標準的なクラ
スのそれとずれがある、といった指摘である。 こうなると、 Ruby を使う上での直感が効きにくくなるため、 プログラミン グにも影響を及ぼす。 しかしこのような「Ruby らしさ」は 明文化されていないため、 共有がしづらい 「Rubyらしさ」について Rubyist Magazine 0003号 巻頭言 るびま編集長 高橋征義
自分なりに「Rubyらしさ」を 定義してみたい
Rubyならでは! と思った書き方3つ
❶ 繰り返し処理 Array や Hash は Enumerable モジュールを include しているため、each,
map, select, each_with_index などの 繰り返しメソッドが使える
each_with_index
メソッドをうまく活用することができれば 繰り返し分の中でより幅広い処理を 簡潔に実装できるようになる
❷ 条件分岐の書き方 否定条件の書き方 後置でunlessを使用する
❷ 条件分岐の書き方 後置if 後置でifを使用する
endがなく1行で処理を完結させることができる 後置if やunlessにすることで 英語の表現のように書くことができ 人間が読みやすいコードになっている
❸ timesを使う 3.timesとすることで 「3回繰り返す」ことが わかりやすく表現されている
直感的に意図を 読み取ることができるコード
Rubyのメソッドを使い、様々な処理を簡潔 に表現できるコード 人間が話すような言葉で書くこと まとめ:Rubyらしさとは
つまり、Rubyらしさとは 「人間が読みやすい言語」
追記 ChatGPTに、Rubyらしさがみられるコードの書き方を 聞いたところ以下のような回答がありました。
Thank you