Upgrade to Pro
— share decks privately, control downloads, hide ads and more …
Speaker Deck
Speaker Deck
PRO
Sign in
Sign up for free
s2s
akameco
December 14, 2017
Technology
2
630
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.1k
Other Decks in Technology
See All in Technology
220428event_overview
caddi_eng
2
200
開発者のための GitHub Organization の安全な運用と 継続的なモニタリング
flatt_security
2
2.2k
AWS CLI入門_20220513
suzakiyoshito
0
3.4k
ITエンジニアを取り巻く環境とキャリアパス / A career path for Japanese IT engineers
takatama
0
560
AWS全体のセキュリティ管理と快適なセキュリティ運用
cmusudakeisuke
2
10k
Power Query 日時の変換でちょっと焦ったケース +1 / Power Query Some cases
ishiayaya
0
140
THETA Xの登場はジオ業界を変えるか?
furuhashilab
0
160
Adopting Kafka for the #1 job site in the world
ymyzk
1
250
Babylon.js v5 新機能の紹介
limes2018
0
750
如何使用 Argo Event& Workflow 快速建置自定義的工作流程 @ #CNTUG #47
line_developers_tw
PRO
0
370
暗号資産ウォレット入門(MetaMaskの入門~NFTの購入~詐欺の注意事項など)
kayato
2
150
New Features in C# 10/11
chack411
0
610
Featured
See All Featured
Put a Button on it: Removing Barriers to Going Fast.
kastner
56
2.3k
Designing Dashboards & Data Visualisations in Web Apps
destraynor
224
49k
How New CSS Is Changing Everything About Graphic Design on the Web
jensimmons
212
11k
The Web Native Designer (August 2011)
paulrobertlloyd
74
1.9k
実際に使うSQLの書き方 徹底解説 / pgcon21j-tutorial
soudai
38
12k
CoffeeScript is Beautiful & I Never Want to Write Plain JavaScript Again
sstephenson
151
12k
Faster Mobile Websites
deanohume
294
28k
XXLCSS - How to scale CSS and keep your sanity
sugarenia
236
1M
A Philosophy of Restraint
colly
192
14k
The Cult of Friendly URLs
andyhume
68
4.7k
Streamline your AJAX requests with AmplifyJS and jQuery
dougneiner
125
8.5k
The Mythical Team-Month
searls
208
39k
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ʹϩοΫΠϯ͋Γ·ͤΜΑʁ Ͳ͏͋Γ͕ͱ͏͍͟͝·ͨ͠ʂ