$30 off During Our Annual Pro Sale. View Details »
Speaker Deck
Features
Speaker Deck
PRO
Sign in
Sign up for free
Search
Search
TypeScriptでライフゲームを作ってみた。
Search
hota1024
November 16, 2019
Technology
0
240
TypeScriptでライフゲームを作ってみた。
hota1024
November 16, 2019
Tweet
Share
More Decks by hota1024
See All by hota1024
大学生がフルリモートの会社で1年バイトしてる話
hota1024
0
110
プログラミング言語 Wasabi の設計と実装
hota1024
0
61
ブロックチェーンと Reactでチャットアプリを作った話
hota1024
0
90
ネコ逃げスライド
hota1024
0
72
Scratchに登録しよう
hota1024
0
51
Scratchでネコ逃げ
hota1024
0
110
MaterialJump Next
hota1024
0
130
🐱Nekochat
hota1024
0
150
静岡YLT企画
hota1024
0
86
Other Decks in Technology
See All in Technology
Lambdaの常識はどう変わる?!re:Invent 2025 before after
iwatatomoya
1
330
最近のLinux普段づかいWaylandデスクトップ元年
penguin2716
1
660
ログ管理の新たな可能性?CloudWatchの新機能をご紹介
ikumi_ono
1
520
AI 駆動開発勉強会 フロントエンド支部 #1 w/あずもば
1ftseabass
PRO
0
210
モダンデータスタック (MDS) の話とデータ分析が起こすビジネス変革
sutotakeshi
0
430
日本Rubyの会の構造と実行とあと何か / hokurikurk01
takahashim
4
940
Karate+Database RiderによるAPI自動テスト導入工数をCline+GitLab MCPを使って2割削減を目指す! / 20251206 Kazuki Takahashi
shift_evolve
PRO
1
540
20251209_WAKECareer_生成AIを活用した設計・開発プロセス
syobochim
5
1.4k
Reinforcement Fine-tuning 基礎〜実践まで
ch6noota
0
160
AWS re:Invent 2025で見たGrafana最新機能の紹介
hamadakoji
0
130
MapKitとオープンデータで実現する地図情報の拡張と可視化
zozotech
PRO
1
120
Challenging Hardware Contests with Zephyr and Lessons Learned
iotengineer22
0
120
Featured
See All Featured
Become a Pro
speakerdeck
PRO
31
5.7k
The Art of Delivering Value - GDevCon NA Keynote
reverentgeek
16
1.8k
Site-Speed That Sticks
csswizardry
13
990
Build The Right Thing And Hit Your Dates
maggiecrowley
38
3k
Easily Structure & Communicate Ideas using Wireframe
afnizarnur
194
17k
Documentation Writing (for coders)
carmenintech
76
5.2k
Keith and Marios Guide to Fast Websites
keithpitt
413
23k
Learning to Love Humans: Emotional Interface Design
aarron
274
41k
Music & Morning Musume
bryan
46
7k
Building Applications with DynamoDB
mza
96
6.8k
The Web Performance Landscape in 2024 [PerfNow 2024]
tammyeverts
12
970
How to Ace a Technical Interview
jacobian
280
24k
Transcript
5ZQF4DSJQUͰ ϥΠϑήʔϜ ࡞ͬͯΈͨɻ
ࣗݾհ @hota1024 ߴߍੜ $PEFS%PKP੩ԬϢʔεϝϯλʔ IPUB
ͳΜͰϥΠϑήʔϜʁ
ϥΠϑήʔϜͱ ϥΠϑήʔϜ (Conway's Game of Life[1] ) 1970ʹΠΪϦεͷֶऀδϣϯɾϗʔτϯɾίϯΣΠ (John Horton
Conway) ͕ ߟҊͨ͠ੜ໋ͷੜɺਐԽɺ౫ଡͳͲͷϓϩηεΛ؆қతͳϞσϧͰ࠶ݱͨ͠γϛϡϨʔγϣϯήʔϜͰ͋Δɻ୯७ͳϧʔϧͰ ͦͷ༷ͷมԽΛָ͠ΊΔͨΊɺύζϧͷཁૉΛ͍࣋ͬͯΔɻ By Wikipedia IUUQTKBXJLJQFEJBPSHXJLJϥΠϑήʔϜ
ϥΠϑήʔϜ ʹ ਓੜͷγϡϛϡϨʔγϣϯήʔϜ
ͳΜͰϥΠϑήʔϜʁ
ڵຯ͕͋Δ͜ͱ wઃܭ wςετ
(MPCBM%BZPG$PEFSFUSFBU JO4IJ[VPLB wʹ։࠵ɻ wςʔϚ͕ʮϥΠϑήʔϜʯ w࠷ޙ·ͰͰ͖ͳ͔ͬͨʜ
ϥΠϑήʔϜͷϥΠϒϥϦΛ ࡞ͬͯΈͨ 8*1 wOQNͰެ։ࡁΈ w։ൃ్த
༻ͨ͠ͷ w 7JTVBM4UVEJP$PEF w 5ZQF4DSJQU w 8FCQBDL w FTMJOU !UZQFTDSJQUFTMJOUQMVHJO
w +FTU
։ൃʹ͋ͨͬͯ wઃܭΛͯ͠ΈΔ wςετΛॻ͍ͯΈΔ wˢʹઓͯ͠ΈΔ͜ͱʹɻ
ઃܭʜ w ΫϦʔϯΞʔΩςΫνϟʁ w υϝΠϯۦಈઃܭʁ w Α͔͘ΒΜঢ়ଶˠͱΓ͋͑ͣײͰ࡞ͬͯΈͨ
ηϧͷཧΛߦ͏ 8PSMEΫϥε const world = new ArrayWorld(10, 10, Cell) ྻͰηϧΛཧ͢ΔYͷੈքΛੜ͢Δྫ
ηϧ͕ੜ͖Δ͔ɺࢮ͵͔Λ੍ޚ͢Δ &OWJSPONFOUΫϥε ϥΠϑήʔϜͷجຊͷͭͷϧʔϧΛఆٛͨ͠ڥΛੜ͢Δྫɻ new BasicEnvironment()
ੈքͱڥΛཧ͠ɺ͍͍͢"1*Λఏڙ͢ Δ -JGF(BNFΫϥε ઌఔͷྻͰηϧΛཧ͢ΔΫϥεͱ جຊڥͷΫϥεΛཧ͢ΔϥΠϑήʔϜΛੜ͢Δྫɻ const game = new LifeGame(
new ArrayWorld(10, 10, Cell), new BasicEnvironment() )
ʙσϞʙ
ʙ͜Ε͔Βʙ w #JU#PBSEΛͬͨϥΠϑήʔϜͷߴԽ w #JU#PBSE8PSMEΫϥεΛ࣮ͯ͠ΈΔ w ςετΛॻ͘ w ࣮গ͠ॻ͍ͯͨΓ͢Δ w
ࠓճ࡞ͬͨϥΠϒϥϦͰ7VFKT3FBDU͚ʹϥΠϑήʔ ϜΛ࣮ͯ͠ΈΔ
·ͱΊ w 5ZQF4DSJQU͍͍ͧʂ w ઃܭָ͍͠ʂͬͱษڧ͍ͨ͠ʂ w 5%%Λͬͱษڧͯ͠ΈΔʂ
͝ਗ਼ௌ ͋Γ͕ͱ͏͍͟͝·ͨ͠ɻ
ʙએʙ
2JJUB ੩Ԭ"EWFOU$BMFOEBS IUUQTRJJUBDPNBEWFOUDBMFOEBSTIJ[VPLB