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
Ruby2.7の機能を使いたくてruby-next使ってみた/try-using-ruby-next
Search
Masatoshi Moritsuka
July 25, 2020
Programming
0
110
Ruby2.7の機能を使いたくてruby-next使ってみた/try-using-ruby-next
Masatoshi Moritsuka
July 25, 2020
Tweet
Share
More Decks by Masatoshi Moritsuka
See All by Masatoshi Moritsuka
Rails と人魚の話/rails-and-mermaid
sanfrecce_osaka
0
110
パターンマッチ使ってるかい?(kyobashi.rb)/use-ruby-s-pattern-matching-on-kyobashi-rb
sanfrecce_osaka
0
34
ApplicationController の継承を分割してエラーを減らした話/dividing-application-controller
sanfrecce_osaka
1
140
Input object ではじめる入力値検証/input-value-validation-using-input-object
sanfrecce_osaka
0
300
実例で学ぶRailsアプリケーションデバッグ入門 〜ログインできちゃってました編〜/rails-application-debug-introduction
sanfrecce_osaka
2
610
String#split何もわかっていなかった/didn_t_know_anything_about_string_split
sanfrecce_osaka
0
110
String#split何もわかっていなかった/didn-t-know-anything-about-string-split
sanfrecce_osaka
0
48
パターンマッチ使ってるかい?/use-ruby-s-pattern-matching?
sanfrecce_osaka
0
640
新しいコミュニティを立ち上げるぞい/launch-new-community
sanfrecce_osaka
0
120
Other Decks in Programming
See All in Programming
Timeline エディター拡張入門
yucchiy
0
460
Upgrading Legacy to the Latest PHP Version
afilina
PRO
0
110
How to implement a RubyVM with PHP?
memory1994
PRO
2
1.2k
TypeScriptとGraphQLで実現する 型安全なAPI実装 / TSKaigi 2024
hokaccha
5
2.9k
TypeScriptで使いやすいOpenAPIの書き方
yukimochi_dwango
1
990
Improved REXML XML parsing performance using StringScanner
naitoh
0
110
Powerfully Typed TypeScript
euxn23
4
1.8k
TypeScriptから始める VR生活
tamagokakeg
2
140
Prepare for Jakarta EE 11 - Performance and Developer Productivity
ivargrimstad
0
420
SaaSを作るという仕事について
fujimura
2
150
欠陥を早期に発見するための Software Engineer in Test とその重要性 / What is Software Engineer in Test and How they works
orgachem
PRO
19
2.6k
JavaScript Closure
asoluka
0
2k
Featured
See All Featured
Designing on Purpose - Digital PM Summit 2013
jponch
111
6.5k
Being A Developer After 40
akosma
67
580k
Sharpening the Axe: The Primacy of Toolmaking
bcantrill
22
1.4k
Save Time (by Creating Custom Rails Generators)
garrettdimon
PRO
1
140
How To Stay Up To Date on Web Technology
chriscoyier
782
250k
Git: the NoSQL Database
bkeepers
PRO
423
63k
What’s in a name? Adding method to the madness
productmarketing
PRO
17
2.7k
How to Create Impact in a Changing Tech Landscape [PerfNow 2023]
tammyeverts
22
1.6k
Cheating the UX When There Is Nothing More to Optimize - PixelPioneers
stephaniewalter
275
13k
ParisWeb 2013: Learning to Love: Crash Course in Emotional UX Design
dotmariusz
104
6.7k
Keith and Marios Guide to Fast Websites
keithpitt
408
22k
I Don’t Have Time: Getting Over the Fear to Launch Your Podcast
jcasabona
23
1.7k
Transcript
Ruby2.7 ͷػೳΛ͍ͨͯ͘ ruby-next ͬͯΈͨ ௩ ਅ(@sanfrecce_osaka) 2020/07/25 Kaigi on Rails
new #kaigionrails
ࣗݾհ ➤ ௩ ਅ ➤ GitHub: @sanfrecce-osaka ➤ Twitter: @sanfrecce_osaka
➤ Qiita: @sanfrecce_osaka ➤ 20199݄: େࡕ → ொా ➤ גࣜձࣾϥάβΠΞ ➤ ruby-jpͷॅਓ ➤ ίϛϡχςΟɾษڧձΦλΫ
ʲએʳຖ݄ୈҰ༵ۚʹ Machida.rb ͬͯ·͢
࠷ۙͷࣄͷ
Rails API + TypeScript + React
େྔͷ any
@typescript-eslint/no-explicit-any=>8544
rspec-openapi
request spec ↓ Open APIܗࣜ ͷ υΩϡϝϯτ
͜Εָ
But
ੜ͞ΕΔ yaml͔Β TSͷܕΛॻ͘ͷਓྗ
Let's making a gem!!
Gem Λ࡞Δʹ ͋ͨͬͯ
yaml Λ ύʔε͢Δ ඞཁ͕͋Δ
ύλʔϯϚονϯά ͍͍ͨ
φϯύϥ ͍͍ͨ
But
ϓϩδΣΫτͷRuby 2.5.0
ͦ͜Ͱ ruby-next
ruby-next ➤ Ruby ΛτϥϯεύΠϧͯ͘͠ΕΔ Gem ➤ ΞϓϦέʔγϣϯଆ => ϥϯλΠϜϞʔυ ➤
ϥΠϒϥϦଆ => CLI ͔ΒτϥϯεύΠϧ(ࠓճͬͪ͜) ➤ Refinements Λར༻͍ͯ͠Δ ➤ αϙʔτൣғ͕͍ ➤ https://github.com/ruby-next/ruby-next/blob/master/ SUPPORTED_FEATURES.md
ҙ ➤ require_relative Ͱͳ͘ require Ͱͳ͍ͱͩΊ ➤ τϥϯεύΠϥ rewirteϞʔυ ͱ
ASTϞʔυ ͷ 2छ ➤ σϑΥϧτ ASTϞʔυ ➤ 2.7ܥ Ͱ rewriteϞʔυ ͷΈ ➤ ಛఆͷػೳ໌ࣔతʹΦϓγϣϯΛࢦఆ͢Δඞཁ͕͋Δ
σϞ
࠷ޙʹ
ruby-next Ͱ 2.7 2.8 ʹ৮ΕΔਓ͕ ૿͑ͯ΄͍͠ʙ
͝ਗ਼ௌ ͋Γ͕ͱ͏ ͍͟͝·ͨ͠ʂ