Upgrade to Pro
— share decks privately, control downloads, hide ads and more …
Speaker Deck
Sign up for free
Menu
Search
Features
All features
Private URLs
Password Protection
Custom URLS
Scheduled publishing
Remove Branding
Restrict embedding
Deck Collections
Notes
Features
All features
Private URLs
Password Protection
Custom URLS
Scheduled publishing
Remove Branding
Restrict embedding
Deck Collections
Notes
Explore
Featured decks
Featured speakers
Programming
Technology
Storyboards
Explore
Featured decks
Featured speakers
Programming
Technology
Storyboards
Pricing
Search
Sign in
Sign up for free
meguro.es.pdf
Search
Sponsored
·
Your Podcast. Everywhere. Effortlessly.
Share. Educate. Inspire. Entertain. You do you. We'll handle the rest.
→
takf
May 22, 2018
160
0
Share
Embed
Copy iframe code
Copy JS code
Copy link
Start on current slide
meguro.es.pdf
takf
May 22, 2018
More Decks by takf
See All by takf
Go未経験・MVC脳のエンジニアが オニオンアーキテクチャを学ぶまで
takfjp
0
40
見やすい PRを作るために取り組んでいること
takfjp
0
58
Denoに入門していきなりAleph.jsを触ってみた
takfjp
0
550
Atomic Design とテストの○○な話
takfjp
2
2k
Node.jsのアップグレードで気をつけたこと
takfjp
1
3k
FARM スタックに触れてみる
takfjp
0
1.7k
React Testing Library の Query について整理してみた
takfjp
0
560
React.js 消えるライフサイクルメソッドについて
takfjp
0
170
Laravel 初めての業務で遭遇したハマりポイント×2
takfjp
2
3.2k
Featured
See All Featured
For a Future-Friendly Web
brad_frost
183
10k
Leading Effective Engineering Teams in the AI Era
addyosmani
9
2.6k
Improving Core Web Vitals using Speculation Rules API
sergeychernyshev
21
1.6k
Six Lessons from altMBA
skipperchong
29
4.5k
SEO for Brand Visibility & Recognition
aleyda
0
4.7k
Raft: Consensus for Rubyists
vanstee
141
7.7k
Winning Ecommerce Organic Search in an AI Era - #searchnstuff2025
aleyda
1
2.1k
How to Grow Your eCommerce with AI & Automation
katarinadahlin
PRO
1
270
End of SEO as We Know It (SMX Advanced Version)
ipullrank
3
4.4k
The Art of Delivering Value - GDevCon NA Keynote
reverentgeek
16
2.2k
The Illustrated Guide to Node.js - THAT Conference 2024
reverentgeek
1
480
Code Review Best Practice
trishagee
74
20k
Transcript
ToDo List 千本ノック 2018.05.22 Meguro.es
古市武尊 (Twitter:@takfjp) インフォ・ラウンジ合同会社 (横浜市都筑区) 所属 地方自治体向けのWEBアプリ開発・オープンデータ活用の仕事 をしています 発表者について
今日発表する事 JS歴約1年の私がいかにして Redux を学んだか ・公式のドキュメントを読んだ ・Udemy の React + Redux
コースを受講した ・でも分からないことはわからないまま ・ネット上の ToDo List をいっぱい写経した -> その結果色々な気づきを得た -> 人による実装方法の違い、共通する処理の考え方、アンチパターン、 公式のドキュメントを理解する足がかりに何本も写経するのが役立った
業務で Redux が必要となった ・SPA内のコンポーネントの受け渡しが複雑になり、親子関係を逸脱して状態を管理する 必要が生まれた ・バケツリレーは辛い・・・ ・dispatch? Reducer? 何のことかワカラン・・・ ・JS
歴約1年で React の基礎もあやしい ・そこで、地道に習得する方法を考えた
第一に、公式のドキュメントがある ・信頼できる情報が全て揃っている ・が、ドキュメントは(大抵)英語 ・ネイティブスピーカーではないので、読むだけでも体力を必要とする ・結果、一項目を読むたびにHPが減少・・・ 気づき:書かれている順序 ≠ 自分が必要としている順序
Udemyで講座を受講した ・だいたい2000円。安い!!! ・外部APIを叩いてホテル検索SPAを作ることができた! ・が、講義の進むスピードがめちゃめちゃ早い・・・ ・先生のタイプスピードも速い ・IDEやエディタの設定が違うと講義とラグが発生しがち ・終了させるまでに1ヶ月かかった・・・ 気づき:講義レベルが高い->理解しやすいとは限らない
そこでToDo List ですよ
ToDo Listの良い点 ・日本語でサンプルがたくさん転がっている (Qiitaとかはてなブログ) ・他のライブラリをほとんど必要としない (開発環境の簡略化) ・コード量が少なく、基本を抑えられる ・写経がメインなので、疲れた頭でも学習をある程度進めることができる ・仕組みは単純だが、動くと何となく達成感が生まれる 「ToDo
Listには人生の大切な全てのことが詰まってるんだよ(ポロロン)」
なぜ何本も作る必要があるのか?( 1 / 2 ) ・同じ ToDo List でも、人によって実装方法はさまざま ・特に
Redux は ActionCreator や Dispatcher の書き方が人によって違う ・JSの熟練者が作ったもの、初級者が作ったものが入り乱れている ・それ故に中には綺麗に実装されたものも、アンチパターンになってしまって いるも のもある -> だが初心者にはその違いがわからない -> 故に差異に気づけるように何本も写経する必要があった
なぜ何本も作る必要があるのか?( 2 / 2) ・似通ったものをいくつも作ることで書き方を覚える ・ステートレス or ステートフル、Reducer の分割方法など、使い分けどころに対する嗅覚 が次第に身につくようになる
・何本も書いてれば飽きる。そこから、人によってなぜ実装方法が違うのか、考 える力 がつく -> 「なんとなく分かる」ことが「より詳しく理解する」ことへの足掛けになる -> 公式ドキュメントも頭に入ってくるようになる
学習サイクル 何本も作る 飽きる 違いに気がつく ドキュメント(公式)が読める 「何が分からないか」 「何がよくない実装なのか」 理解できる
「勘が悪いなあ」と思う前に ・いきなりホームランは打てない ・だから素振りが何回も必要 (ドキュメントを読むなどのインプット) ・実際に球を打つ体験も必要 ≒ 頭で理解する前に体で(コードを写経して)感覚を掴む ・退屈かもしれないけど、泥臭い基礎の繰り返しも必要 打った球がゴロだとしても、「打った」という経験が大事なものになる (なお、わたくしは野球未経験者です)
ToDo List ノックにおすすめの環境 CodeSandbox (https://codesandbox.io/) create-react-appを標準で選択できるのでローカルを圧迫しなくて済む