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
初心者PHPerがRuby(+Rails)キメて思うこと
Search
Kyosuke Takenaka
November 03, 2019
Programming
0
1.3k
初心者PHPerがRuby(+Rails)キメて思うこと
富山Ruby会議での発表内容。初心者に向けて、Rubyやろうぜ。というはなし
Kyosuke Takenaka
November 03, 2019
Tweet
Share
More Decks by Kyosuke Takenaka
See All by Kyosuke Takenaka
タガヤスでプログラマ職を得た中学校音楽科教員の話 〜勉強会のすゝめ〜
oratake
0
240
暗黒Shellからエンジニアを守る党 -bashをぶっ壊す-
oratake
0
640
Other Decks in Programming
See All in Programming
楽して成果を出すためのセルフリソース管理
clipnote
0
190
プロパティベーステストによるUIテスト: LLMによるプロパティ定義生成でエッジケースを捉える
tetta_pdnt
0
3.3k
MCPでVibe Working。そして、結局はContext Eng(略)/ Working with Vibe on MCP And Context Eng
rkaga
5
2.3k
さようなら Date。 ようこそTemporal! 3年間先行利用して得られた知見の共有
8beeeaaat
3
1.5k
個人軟體時代
ethanhuang13
0
330
Amazon RDS 向けに提供されている MCP Server と仕組みを調べてみた/jawsug-okayama-2025-aurora-mcp
takahashiikki
1
110
MCPとデザインシステムに立脚したデザインと実装の融合
yukukotani
4
1.5k
testingを眺める
matumoto
1
140
rage against annotate_predecessor
junk0612
0
170
はじめてのMaterial3 Expressive
ym223
2
900
基礎から学ぶ大画面対応(Learning Large-Screen Support from the Ground Up)
tomoya0x00
0
3.3k
「待たせ上手」なスケルトンスクリーン、 そのUXの裏側
teamlab
PRO
0
570
Featured
See All Featured
Measuring & Analyzing Core Web Vitals
bluesmoon
9
580
Cheating the UX When There Is Nothing More to Optimize - PixelPioneers
stephaniewalter
285
14k
I Don’t Have Time: Getting Over the Fear to Launch Your Podcast
jcasabona
33
2.4k
Optimising Largest Contentful Paint
csswizardry
37
3.4k
The Cult of Friendly URLs
andyhume
79
6.6k
Documentation Writing (for coders)
carmenintech
74
5k
Context Engineering - Making Every Token Count
addyosmani
3
58
Fantastic passwords and where to find them - at NoRuKo
philnash
52
3.4k
A designer walks into a library…
pauljervisheath
207
24k
CSS Pre-Processors: Stylus, Less & Sass
bermonpainter
358
30k
Agile that works and the tools we love
rasmusluckow
330
21k
Fashionably flexible responsive web design (full day workshop)
malarkey
407
66k
Transcript
ॳ৺ऀ PHPer ͕ Ruby (+ Rails) Ωϝͯ ࢥ͏͜ͱ @oratake @kyosuketakenaka
Powered by Azusa Colors 2.0
@oratake (Kyosuke, TAKENAKA) • ٶݝ ग़ɾࡏॅ • ٶݝͰதֶߍԻָɾٕज़Պڭһʢ2017.04ʙ 1ؒʣ •
ϗʔϜϖʔδ Ͱ PHPίϐϖ৬ਓʢࢁࢢʣʢ2018.11ʙ 8ϲ݄ʣ - ↑͜ͷ࣌ɺToyama.rbࢀՃ ʢ2019.02ʙʣ • ઋͷWebܥاۀͰΞϧόΠτʢ2019.11.01ʙʣ
͓͢͠Δ͜ͱ (͓͠ͳ͕͖) • ํॅΈͷॳ৺ऀ͕WebΛࢦ͢ྲྀΕ (oratakeͷྫ) • PHP ॳ৺ऀ (8ϲ݄) ͕৮Εͨ
Ruby, Rails ͷॴײ
͓͠Ͱ͖ͳ͍͜ͱ (͔͋͠Βͣ) • Ruby ৗशऀͷ͓؟ڸʹద͏ɺਮͳϕετϓϥΫςΟε • ඞͣ Ruby ΤϯδχΞʹͳΕΔʂඞউઓུʂ •
҉ࠇ Shell ͔ΒΤϯδχΞΛकΔౘɹݟ์ૹ ※ ͖Ε͍ͳϓϩϯϓτɺΧϥʔεΩʔϜඋ͕झຯ
Web ʹͳΖ͏
WebܥΤϯδχΞࢦ͢·Ͱ • υοτΠϯετʔϧ Progate Ͱ͔ͬͨؾʹͳΔ • N༧උߍ (υϫϯΰ)ɹScalaͰαʔϏεͭ͘Δ →
࠳ં • εΫʔϧɺαʔϏε৭ (গ͠՝ۚ) • উຢ݈ଠ@ςοΫܥYouTuber ͓͓·͔ʹWebܥ (͓ʹόοΫΤϯυ) ʹ͍ͭͯ֓ཁΛΔ cf. https://twitter.com/poly_soft • Toyama.rb ͘͘ձͷࢀՃ ࣮ࡍͷΤϯδχΞ͞ΜͱͷؔΘΓ • ઋͷษڧձͰͷLTొஃ cf. https://speakerdeck.com/oratake
Toyama.rb ͘͘ձ • पΓʹٕज़ͷΛͰ͖Δਓ͕͍Δ • ٧·ͬͨͱ͖ʹ૬ஊͰ͖Δ • ूதͯ͘͘͠Ͱ͖Δ • ࣮ࡍʹ
Ruby Λѻ͏ΤϯδχΞͷΛ㘤͚Δ • ϦϞʔτϫʔΫʹ͍ͭͯ㘤͚Δ
͘͘ձʹࢀՃ͠Α͏ (ఏҊ) ຖ݄ ୈ2༵ ৄࡉ connpass Ͱʂ
Ruby ( + Rails )
໔ • PHPͱൺֱͯ͠·͕͢ɺPHPΛdisΔҙਤͳ͍Ͱ͢ɻ • ࠓͷࣄ (Laravel͔͍ͭ·͢) ͨͷͦ͠͏ɻ(·ͩग़ۈ1)
ΧϧνϟʔγϣοΫ • [PHP] ࣗ༝ͳखஈͰॻ͘ɹ[Ruby] ͋ΔఔηΦϦʔ͋Γ • [Ruby] ܕΛڧ͘ҙࣝ͢Δ • ࡉʑͱ͕͍ͨͪ͠
Don’t Repeat YourselfɺcaseʹbrakeཁΒͳ͍ɺreturnॻ͍ͨهԱ͕ͳ͍ if($keigenTax == true) // PHPでよくみる暗黙の型変換
Ruby, Rails • ཕ͕গͳ͍ PHPͷใۄੴࠞަɻRubyք۾όʔδϣϯͷҧ͍ʹҙ͢Δ͙Β͍ʁ cf. ʰPHP ϝʔϧϑΥʔϜʱͷ্Ґ10͕݅উ10% - Qiita
https://qiita.com/rana_kualu/items/7adb59d3f5734789fe31 • ྻૢ࡞ͷϝιου͕όϥΤςΟ๛ (ίʔυهड़ྔ͕গͳ͍) • ք۾ͷΤϯδχΞ͕͍͞͠
Ruby, Rails • ུه͕ଟ͍ ֮͑Εॻ͖͘͢ͳΔͣɻηϛίϩϯΧοίͷྨ͕૬গͳ͘ͳΔɻ • शಘͷૣ͍ஈ֊Ͱ Shell Λ֮͑Δඞཁ͋Γ Δ͜ͱݶΒΕ͍ͯΔͷͰɺ৺ཧతෛ୲ΛΓӽ͑Ε…
ࠇը໘͜Θ͘ͳ͍ɻ • ٻਓ͕݅গͳ͍ Ϟμϯʹ͍ͬͯΔاۀ͞Μͷ͔ͳΓଟ͍ײ͕ͨ͡͠
ͦ͏ͩ Rails νϡʔτϦΞϧɺΖ͏
Rails νϡʔτϦΞϧ • ʘແྉʗ • Ruby Ҏ֎ͷ Web جૅࣝͭ͘ •
Twitter্Ͱ͍ͬͯΔಉࢤ͕ଟ͍ #RailsνϡʔτϦΞϧ • ٧·ͬͯࣅͨΑ͏ͳ࣭͕ggΕ͋Δ
Rails ͨͷ͍͠ʂ • ୈ4ষɹRails ෩ຯͷ Ruby Ruby ͷॳาͱͯ͠ɺΘ͔Γ͍͢ɻจࣈྻૢ࡞ɺྻૢ࡞ɺͳͲ Ruby ͷ͕ղ͖ͨ͘ͳΓɺPaiza
atCoder ͷΛղ͖ʹΔɻ ࣮ࡍɺॳาͷղ͚ΔΑ͏ʹͳͬͨɻ͏Ε͍͠ɻ
ॳֶऀ͚ͩ͜͜Γӽ͍͑ͨ • Shell ͷ߅ײ νʔτγʔτͭͬͯ͘ɺͻͨ͢Β͏ɻ ΩʔϘʔυ͔ΒΕͳ͍ੜ׆ʹ͍ͯ͘͠ɻ ͍͍͢λʔϛφϧɻWin ͳΒ Git bash,
wsltty ͱ͔ cf. λʔϛφϧΛ୳ͯ͠ࡾઍཬ (oratake) - Qiita https://qiita.com/oratake/items/475564f96c562bab2953 • ڥͷߏங ͳΔ͘લྫɺใͷ͋ΔڥͰɹΘ͔Βͳ͘ͳͬͨΒ…→
͘͘ձʹࢀՃ͠Α͏ (ఏҊ) ຖ݄ ୈ2༵ ৄࡉ connpass Ͱʂ
·ͱΊ • Ruby, Rails ք۾ͨͷ͍͠Ͱ͢ɻ͍ͬ͠ΐʹॻ͖·͠ΐ͏ɻ • Rails νϡʔτϦΞϧɺಕ͑͜Δͱͨͷ͘͠ͳ͖ͬͯ·͢ɻ • Toyama.rb
ͨͷ͍͠Ͱ͢ɻ • ࢁ؍ޫɺͨͷ͠ΜͰ͍ͩ͘͞ɻ
͝ਗ਼ௌ͋Γ͕ͱ͏͍͟͝·ͨ͠ʂ தౡᮙ ਫΤϨϕʔλ ༗໊ίϯϏχɹཱࢁαϯμʔόʔυ ொେت ϒϥοΫϥʔϝϯ ࢁమɹϨτϩࢢి