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
s2s
Search
akameco
December 14, 2017
Technology
2
880
s2s
12/14 Nihonbashi.js #3 100star以下限定!細かすぎて伝わらない自作ライブラリ選手権。
akameco
December 14, 2017
Tweet
Share
More Decks by akameco
See All by akameco
KILL ALL HUMANS (動画なし版)
akameco
3
1.4k
Other Decks in Technology
See All in Technology
JAWS AI/ML #30 AI コーディング IDE "Kiro" を触ってみよう
inariku
3
360
Findy Freelance 利用シーン別AI活用例
ness
0
480
LLMで構造化出力の成功率をグンと上げる方法
keisuketakiguchi
0
800
金融サービスにおける高速な価値提供とAIの役割 #BetAIDay
layerx
PRO
1
830
Claude Codeから我々が学ぶべきこと
oikon48
10
2.8k
オブザーバビリティプラットフォーム開発におけるオブザーバビリティとの向き合い / Hatena Engineer Seminar #34 オブザーバビリティの実現と運用編
arthur1
0
380
AIのグローバルトレンド 2025 / ai global trend 2025
kyonmm
PRO
1
140
2025新卒研修・HTML/CSS #弁護士ドットコム
bengo4com
3
13k
2時間で300+テーブルをデータ基盤に連携するためのAI活用 / FukuokaDataEngineer
sansan_randd
0
150
いかにして命令の入れ替わりについて心配するのをやめ、メモリモデルを愛するようになったか(改)
nullpo_head
7
2.6k
OPENLOGI Company Profile for engineer
hr01
1
38k
Bet "Bet AI" - Accelerating Our AI Journey #BetAIDay
layerx
PRO
4
1.7k
Featured
See All Featured
The Web Performance Landscape in 2024 [PerfNow 2024]
tammyeverts
8
760
Build your cross-platform service in a week with App Engine
jlugia
231
18k
Refactoring Trust on Your Teams (GOTO; Chicago 2020)
rmw
34
3.1k
Measuring & Analyzing Core Web Vitals
bluesmoon
8
550
Put a Button on it: Removing Barriers to Going Fast.
kastner
60
4k
GraphQLとの向き合い方2022年版
quramy
49
14k
Being A Developer After 40
akosma
90
590k
Distributed Sagas: A Protocol for Coordinating Microservices
caitiem20
332
22k
The Cult of Friendly URLs
andyhume
79
6.5k
The Straight Up "How To Draw Better" Workshop
denniskardys
235
140k
The Power of CSS Pseudo Elements
geoffreycrofte
77
5.9k
Testing 201, or: Great Expectations
jmmastey
45
7.6k
Transcript
s2s Source to Source
GitHubͰs2sͱ ݕࡧ͢Δͱग़͖ͯ·͢ https://github.com/ akameco/s2s
͡Ίʹ
Atomͱ teletypeΛ͍·͢ɻ ڥ͕͋Δਓ ४උΛ͍ͯͩ͘͠͞
ߏ • ࣗݾհ • σϞ 3 • എܠ • Έ
• ͦͷଞ • ϑΟʔυόοΫ 1
ࣗݾհ • ͔͋Ί( @akameco ) • ઌ݄༑ਓୡͱϨόχϥΛ৯ ʹߦͬͨΒશһΠϧεੑң ԌͰ2िؒμϯ͠·ͨ͠ •
ਐḿΛग़͢ʹԿΑΓ݈߁ ͕ඞཁͩͱΘ͔Γ·ͨ͠
ޱ಄Ͱઆ໌͢ΔΑΓ ݟͯΒ͏ํ͕ ͍ͱࢥ͍·͢ͷͰɺ ·ͣσϞ(3ఔ)Λ͠·͢
AtomͷteletypeΛ࣮ͬͯ ࡍʹίʔσΟϯά͠·͢ Atomڥ͕ͳ͍ํը໘ͷํͰ ·ͨɺಈ࡞͕ͬ͞Γͨ͠Β࿈ܞΛΓ·͢
https://youtu.be/ hPR0SCaz-Wg
എܠ • reduxϘΠϥʔϓϨʔτ͕ଟ͍ɻ • ͔͠͠อकతͳ؍ͰϚΫϩతͳղܾΛͨ͠ ͘ͳ͍(Ϗϧυ࣌babelplugin) • ͘ॻͨ͘Ί͚ͩʹ͍ͭෆཁʹͳΔ͔Θ͔Β ͳ͍ϥΠϒϥϦΛಋೖͨ͘͠ͳ͍
ͰɺͲ͏͢Δ͔ʁ • ࠓ͋Δ࣮ͷ··ɺߴʹॻ͘ • ਓؒͰݶք͕͋ΔɺϓϩάϥϜʹΑͬͯϓϩάϥϜ Λॻ͘ • ͜ΕΛίʔσΟϯάλΠϜίϯύΠϧͱ໋໊ͨ͠ • ͜ͷ͋ͨΓ͜ͷεϥΠυ͕͍ͷͰΦεεϝͰ͢
”͜Ε͔Βͷϝλϓ ϩάϥϛϯάJavaScriptͷਖ਼ٛΛޠΖ͏” by erukiti ͞Μ https:// speakerdeck.com/erukiti/meta-programming-javascript-is-justice
ۙͳΠϝʔδͩͱs2sfateͰ͍͏ͱ͜Ζͷ Өຐज़Ͱ͢
ར • ΤσΟλͷϓϥάΠϯͰͳ͍ͨΊڥͷϩοΫΠ ϯ͕ͳ͍ • λΠϙ͕ݮΔ • มߋʹڧ͍ • s2sʹै͏ݶΓ୭͕ॻ͍ͯಉ͡ग़ྗʹͳΔ
• ίʔσΟϯάͷߴԽͰ͔͠ͳ͍ͨΊs2sࣗମΛ͍ͭ ͰࣺͯΒΕΔ
Έ
v0.1~
typescriptʹରԠͯ͠΄͍͠
ϋϯυϥʔ ϑοΫ(ܗ) v0.14~ݱࡏ
ϋϯυϥʔΛಋೖ
ϋϯυϥʔΛಋೖ • ίʔυΛड͚औͬͯίʔυΛฦ͢ͱ͍͏݅Λຬ ͨؔ͢Ͱ͋ΕԿͰ͍͍ • σϑΥϧτͰɺjsͩͬͨΒBabel͕࣮ߦ͞Εɺts ͩͬͨΒBabel7+TypeScriptPlugin͕࣮ߦ͞ΕΔ • ͜ΕʹΑͬͯɺ࣮ࡍͲΜͳϑΝΠϧͰ͋ΕίʔσΟ ϯά࣌ʹॲཧ͕Մೳʹͳͬͨ(md,css,html,...)
Hookʹ͍ͭͯ • ͳͥ͜ͷඞཁ͕͋Δ͔ͱ͍͏ͱBabelͷग़ྗσ ϑΥϧτͰμϒϧίʔςʔγϣϯͩͬͨΓɺηϛί ϩϯ͕͍ͯͨΓ͢Δ͔Β • ओʹίʔυΛग़ྗͨ͠ޙͷܗΛߦ͏ • σϑΥϧτͰprettierɻϓϩδΣΫτͷrcʹै͏ •
ઌtslintʹରԠ by kamijin-fanta ͞Μ
ϓϩδΣΫτʹͲ͏ಋೖ͢Δ͔ʁ • ࣗͷϓϩδΣΫτʹಠࣗͷϓϥάΠϯΛಋೖ͍ͨ͠߹ɺ৽ͨʹ ϓϥάΠϯΛެ։͢Δඞཁͳ͘ɺs2s.config.js͔Β૬ରతʹ requireͰ͖Δ • ྫ͑ erukiti͞Μͷ https://github.com/erukiti/spike-react-redux- using-s2s
ͰscriptsσΟϨΫτϦҎԼʹϓϥάΠϯΛஔͯ͠ར ༻͍ͯ͠Δ
ͪΐ͏Ͳ͍͍νϡʔτϦΞϧʁ • cndlhvn ͞Μͷhttps://github.com/cndlhvn/s2s-redux-actions- sample ͕Φεεϝ (redux-saga + redux-actions) •
ਖ਼ެࣜͷ100ഒ͙Β͍ஸೡͳreadme͕༻ҙͯ͋͠Γެࣜͷα ϯϓϧΑΓΦεεϝ • ͦͯ͠ؾ͍ͮͨͱ͖ʹࣗΑΓcndlhvn͞Μͷํ͕s2s-plugin Λެ։ͯͨ͠ • ৽͘͠ManagerPluginͱݺΕΔ֓೦Λಋೖ͍ͯͯ͠໘ന͍
·ͱΊ
࣭ͱ͍ ϑΟʔυόοΫλΠϜ
ࠓճͷΦν teletypeΛͬͯσϞ͢Δ͜ͱͰɺAtom ʹϩοΫΠϯ͢Δ͜ͱͰڥʹϩοΫΠ ϯ͞ΕΔ͜ͱͲ͏͍͏͜ͱ͔Λ࣮ԋ͠ ͯΈ·ͨ͠ s2sʹϩοΫΠϯ͋Γ·ͤΜΑʁ Ͳ͏͋Γ͕ͱ͏͍͟͝·ͨ͠ʂ