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
Looking back on JavaScript
Search
Sponsored
·
Ship Features Fearlessly
Turn features on and off without deploys. Used by thousands of Ruby developers.
→
linyows
April 27, 2017
Technology
4
530
Looking back on JavaScript
GMO pepabo Tech Meeting/Hosting#3 で話した資料です
linyows
April 27, 2017
Tweet
Share
More Decks by linyows
See All by linyows
Protocol Buffersの型を超えて拡張性を得る / Beyond Protocol Buffers Types Achieving Extensibility
linyows
0
190
研究開発と実装OSSと プロダクトの好循環 / A virtuous cycle of research and development implementation OSS and products
linyows
1
800
コードジェネレーターで 効率的な開発をする / Efficient development with code generators
linyows
0
410
研究を支える拡張性の高い ワークフローツールの提案 / Proposal of highly expandable workflow tools to support research
linyows
0
590
非コンテナ環境において宣言的Deploymentを手軽に実現する / Declarative deployment in non-container environments
linyows
1
470
メール送信サーバの集約における透過型SMTP プロキシの定量評価 / Quantitative Evaluation of Transparent SMTP Proxy in Email Sending Server Aggregation
linyows
0
1.1k
透過型SMTPプロキシによる送信メールの可観測性向上: Update Edition / Improved observability of outgoing emails with transparent smtp proxy: Update edition
linyows
2
590
研究の再現性を高める 仕組みをGoでつくる / Creating a system to improve the reproducibility of research using go
linyows
1
320
奥が深いメールのシステム / The depth of Email system
linyows
4
750
Other Decks in Technology
See All in Technology
MCPでつなぐElasticsearchとLLM - 深夜の障害対応を楽にしたい / Bridging Elasticsearch and LLMs with MCP
sashimimochi
0
140
Meshy Proプラン課金した
henjin0
0
250
セキュリティについて学ぶ会 / 2026 01 25 Takamatsu WordPress Meetup
rocketmartue
1
290
M&A 後の統合をどう進めるか ─ ナレッジワーク × Poetics が実践した組織とシステムの融合
kworkdev
PRO
1
410
生成AI時代にこそ求められるSRE / SRE for Gen AI era
ymotongpoo
5
2.7k
CDK対応したAWS DevOps Agentを試そう_20260201
masakiokuda
1
200
Digitization部 紹介資料
sansan33
PRO
1
6.8k
20260204_Midosuji_Tech
takuyay0ne
0
110
We Built for Predictability; The Workloads Didn’t Care
stahnma
0
130
Contract One Engineering Unit 紹介資料
sansan33
PRO
0
13k
プロダクト成長を支える開発基盤とスケールに伴う課題
yuu26
4
1.3k
GitLab Duo Agent Platform × AGENTS.md で実現するSpec-Driven Development / GitLab Duo Agent Platform × AGENTS.md
n11sh1
0
120
Featured
See All Featured
We Have a Design System, Now What?
morganepeng
54
8k
From π to Pie charts
rasagy
0
120
The SEO Collaboration Effect
kristinabergwall1
0
350
Let's Do A Bunch of Simple Stuff to Make Websites Faster
chriscoyier
508
140k
AI in Enterprises - Java and Open Source to the Rescue
ivargrimstad
0
1.1k
The Cost Of JavaScript in 2023
addyosmani
55
9.5k
How to audit for AI Accessibility on your Front & Back End
davetheseo
0
180
Lightning talk: Run Django tests with GitHub Actions
sabderemane
0
110
Side Projects
sachag
455
43k
Test your architecture with Archunit
thirion
1
2.1k
Data-driven link building: lessons from a $708K investment (BrightonSEO talk)
szymonslowik
1
910
Ten Tips & Tricks for a 🌱 transition
stuffmc
0
64
Transcript
ͳΜͱͳ͘+4ॻ͍ͯΔਓ 5PNPIJTB0EB(.01FQBCP *OD 5FDI.FFUJOH)PTUJOH +BWB4DSJQUͷ;Γ͔͑Γձ
ϓϦϯγύϧΤϯδχΞ 5PNPIJTB0EB!MJOZPXT ٕज़෦ٕज़ج൫νʔϜ
͓΅͍͑ͯ·͔͢ʁ
'BOJDઑͬͯ·ͨ͠ʢ࣌ wϦΞϧλΠϜը૾มʢࠓͱͳͬͯී௨ w''NQFHϥούʔͰNQɺBBD૬ޓมKPC wTͷϦιʔεΰϛߴআKPC ʑɺ/PEFKTΛ༻͍ͯΠϕϯτϧʔϓ ϊϯϒϩοΩ ϯάΛ׆༻͍ͯͨ͠
͜Μͳํ͕ରͰ͢ wK2VFSZΛͱΓ͋͑ͣͬͯ·͢Α wQSPUPUZQFͬͯԿɺK2VFSZͷલʹྲྀߦͬͨͭʁ w&$."4DSJQUʁॳΊͯฉ͖·ͨ͠
XFCΞϓϦέʔγϣϯ։ൃͯ͠Δ ͕ɺKT͕ϝΠϯ͡Όͳ͍
ͳΜͱͳ͘+4ॻ͍ͯ·͢ʂ
+BWB4DSJQUͷ͜Ε·ͰམͪͿΕ wॳ಄ϒϥβͱͱʹੜ w&$."ઃཱʢ+TDSJQUͱ+BWB4DSJQUޓͷಈ͖ʣ wͱ͜Ζ͕ҙݟ͕·ͱ·Βͳ͍ wͦͷؒʹ"DUJPO4DSJQUͷ'MBTI͕·Δ w/BUJWF+4ͳΜͯཁΒΜͷ͡Όͱ͍͏งғؾʜաڈͷͷ
+BWB4DSJQUͷ͜Ε·Ͱ࠶ͼ w(PPHMF.BQͰ"KBY͕ར༻͞Ε+4͕࠶ͼΛ͋ͼ࢝ΊΔ w$ISPNFͱͱʹWNܕͰߴͳ+4Τϯδϯ7͕ެ։͞ΕΔ w7ΛͬͨαʔόαΠυͷSVOUJNF/PEFKT͕ੜ͢Δ wࠒ͔Β#BDLCPOFKTච಄ʹ"OHVMBS+43FBDU7VFKTͳͲ ͷํόΠϯσΟϯάϑϨʔϜϫʔΫ͕ొ͍ͯ͘͠ w&$."4DSJQUUIFEJUJPO͕ެ։͞ΕΔ
ํσʔλόΠϯσΟϯάͱ w6*ͱσʔλͷํͰใʢมԽʣΛڞ༗͢Δ w6*ʢJOQVUʣΛมߋͨ͠Βσʔλʹө͠ɺσʔλ͕ߋ৽͞ΕͨΒ6* ͕มԽ w۩ମతʹWJFXNPEFMํͰΓͱΓ͢Δ
&$."4DSJQUUIFEJUJPO w͍ΘΏΔ&4&4 wݴޠ༷Λ࠶ఆٛ wࠓޙԿόάमਖ਼ͱখ͞ͳػೳՃͰຖϦϦʔε w͜Εʹ߹Θͤɺαʔόͱϒϥβͷ+4͕౷߹ʹ ͔͍ͬͯΔʁͣ
&4ͬͯ͑Δͷ w&4͕͏͙͢ʜ w֤αʔϏεͷޓදIUUQLBOHBYHJUIVCJP DPNQBUUBCMFFT wओཁϒϥβɺ࠷৽/PEFKTͰ΄΅ରԠࡁΈͳͷͰେ ମ͑Δͱݴ͑Δ wେମͳͷͰτϥϯεύΠϧΔͷ͕ແ
5SBOTQJMF τϥϯεύΠϥ w#BCFM w#VCMF τϥϯεύΠϧ͕ඞཁͳݴޠ w5ZQF4DSJQU w$P⒎FF4DSJQU
Ͱɺ&4Կ͕͏Ε͍͠ͷʁ
&4Ͱ͏Ε͍͜͠ͱ wQSPUPUZQFϕʔεͰઃܭ͠ͳͯ͘ྑ͘ͳΔDMBTTͱ FYUFOET w͖Ε͍ͳTZOUBYʢBSSPXGVODUJPOQSPNJTFʜ ʣ w4ZNCPMΒ.BQͳͲศརػೳ ৄ͘͠IUUQQPTUEDDFTDIFBUTIFFU
ʘͦͦ Α͘Θ͔Βͳ͍Ͱ͢ ϓϩτλΠϓϕʔε ʢͪͳΈʹ͖Ͱ͢ʣ
Ͱ͢ΑͶ ??
ܧঝͷྫ function Employee() { this.name = ""; this.dept = "general";
} function Manager() { Employee.call(this); this.reports = []; } Manager.prototype = Object.create(Employee.prototype); function Worker() { Employee.call(this); this.projects = []; } Worker.prototype = Object.create(Employee.prototype); function Engineer() { Partner.call(this); this.dept = "engineering"; } Engineer.prototype = Object.create(Worker.prototype); var opo = new Engineer(); opo.dept; // => "enginneering"
֦ுͷྫ function Point(x, y) { this.x = x; this.y =
y; } var p = new Point(3, 4); p.x // => 3 p.y // => 4 Point.prototype.r = function() { return Math.sqrt((this.x * this.x) + (this.y * this.y)); }; p.r();
ײ wܧঝͱ͍͏ΑΓίϐʔʹ͍ۙ wநԽ͞Εͨͷͱ࣮ଶͷ͕ؔͳ͍શ࣮ͯଶ wͳͷͰΑΓૄ݁߹ͳΦϒδΣΫτ
·ͱΊ w͍ྺ࢙ΛܦͯͬͱҰ؏ੑ͕ग़͖ͯͭͭ͋Δ wͨͩ͠ɺաظͳͷͰ༷ʑͳπʔϧपลϥΠϒϥϦ ͕ࢁग़ݱͯ͠ফ͍͍͑ͯͬͯΔ wࠓͳ͓৽͍͠ϓϩϙʔαϧ͕HJUIVCʹ্͕͍ͬͯͯ มԽ͍ͯ͠Δதɺϒϥβ͔ΒαʔόαΠυͨ·ͨ ϞόΠϧΧόʔ͢ΔݴޠແࢹͰ͖ͳ͍ͷͰ͋Δ
߈Ί͍ͯ͜͏+BWB4DSJQU
܅αϩϯʹ͓͍Ͱʁ ࠷৽ใΛνΣοΫˠ !MJOZPXT
͓ΘΓ