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
linyows
April 27, 2017
Technology
4
500
Looking back on JavaScript
GMO pepabo Tech Meeting/Hosting#3 で話した資料です
linyows
April 27, 2017
Tweet
Share
More Decks by linyows
See All by linyows
研究を支える拡張性の高い ワークフローツールの提案 / Proposal of highly expandable workflow tools to support research
linyows
0
310
非コンテナ環境において宣言的Deploymentを手軽に実現する / Declarative deployment in non-container environments
linyows
0
71
メール送信サーバの集約における透過型SMTP プロキシの定量評価 / Quantitative Evaluation of Transparent SMTP Proxy in Email Sending Server Aggregation
linyows
0
670
透過型SMTPプロキシによる送信メールの可観測性向上: Update Edition / Improved observability of outgoing emails with transparent smtp proxy: Update edition
linyows
2
330
研究の再現性を高める 仕組みをGoでつくる / Creating a system to improve the reproducibility of research using go
linyows
1
170
奥が深いメールのシステム / The depth of Email system
linyows
4
490
IaCにおけるテスト考察 / Tests in IaC
linyows
2
560
リバースエンジニアリングとGoでSlackの認知負荷を下げる / Reducing cognitive load in Slack with Reverse-engineering and Go
linyows
2
340
透過型SMTPプロキシによる送信メールの可観測性向上 / Improved observability of outgoing emails with transparent smtp proxy
linyows
2
1.1k
Other Decks in Technology
See All in Technology
Classmethod AI Talks(CATs) #17 司会進行スライド(2025.02.19) / classmethod-ai-talks-aka-cats_moderator-slides_vol17_2025-02-19
shinyaa31
0
160
【詳説】コンテンツ配信 システムの複数機能 基盤への拡張
hatena
0
130
NFV基盤のOpenStack更新 ~9世代バージョンアップへの挑戦~
vtj
0
290
PHPカンファレンス名古屋-テックリードの経験から学んだ設計の教訓
hayatokudou
2
510
エンジニアが加速させるプロダクトディスカバリー 〜最速で価値ある機能を見つける方法〜 / product discovery accelerated by engineers
rince
4
490
コンテナサプライチェーンセキュリティ
kyohmizu
1
110
2.5Dモデルのすべて
yu4u
2
940
生成 AI プロダクトを育てる技術 〜データ品質向上による継続的な価値創出の実践〜
icoxfog417
PRO
5
1.8k
レビューを増やしつつ 高評価維持するテクニック
tsuzuki817
2
850
2025-02-21 ゆるSRE勉強会 Enhancing SRE Using AI
yoshiiryo1
1
420
深層学習と古典的画像アルゴリズムを組み合わせた類似画像検索内製化
shutotakahashi
1
270
TAMとre:Capセキュリティ編 〜拡張脅威検出デモを添えて〜
fujiihda
2
370
Featured
See All Featured
A better future with KSS
kneath
238
17k
実際に使うSQLの書き方 徹底解説 / pgcon21j-tutorial
soudai
175
52k
Building a Scalable Design System with Sketch
lauravandoore
461
33k
Performance Is Good for Brains [We Love Speed 2024]
tammyeverts
7
630
Navigating Team Friction
lara
183
15k
Refactoring Trust on Your Teams (GOTO; Chicago 2020)
rmw
33
2.8k
4 Signs Your Business is Dying
shpigford
182
22k
Code Review Best Practice
trishagee
67
18k
Git: the NoSQL Database
bkeepers
PRO
427
65k
Learning to Love Humans: Emotional Interface Design
aarron
273
40k
GraphQLの誤解/rethinking-graphql
sonatard
68
10k
How to Think Like a Performance Engineer
csswizardry
22
1.4k
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
͓ΘΓ