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
JavaScript小史
Search
Sponsored
·
Your Podcast. Everywhere. Effortlessly.
Share. Educate. Inspire. Entertain. You do you. We'll handle the rest.
→
badatmath
April 02, 2012
Programming
13
4.8k
JavaScript小史
JavaScriptの歴史、です。
badatmath
April 02, 2012
Tweet
Share
More Decks by badatmath
See All by badatmath
Rickshaw
badatmath
0
390
Node.js入門
badatmath
20
10k
Other Decks in Programming
See All in Programming
朝日新聞のデジタル版を支えるGoバックエンド ー価値ある情報をいち早く確実にお届けするために
junkiishida
1
290
CSC307 Lecture 08
javiergs
PRO
0
690
CSC307 Lecture 11
javiergs
PRO
0
580
株式会社 Sun terras カンパニーデック
sunterras
0
1.9k
AHC061解説
shun_pi
0
270
登壇資料を作る時に意識していること #登壇資料_findy
konifar
4
2k
LangChain4jとは一味違うLangChain4j-CDI
kazumura
1
120
オブザーバビリティ駆動開発って実際どうなの?
yohfee
2
630
nilとは何か 〜interfaceの構造とnil!=nilから理解する〜 / Understanding nil in Go Interface Representation and Why nil != nil
kuro_kurorrr
3
1.5k
JPUG勉強会 OSSデータベースの内部構造を理解しよう
oga5
2
220
今更考える「単一責任原則」 / Thinking about the Single Responsibility Principle
tooppoo
3
1.2k
エージェント開発初心者の僕がエージェントを作った話と今後やりたいこと
thasu0123
0
220
Featured
See All Featured
Accessibility Awareness
sabderemane
0
71
Code Review Best Practice
trishagee
74
20k
XXLCSS - How to scale CSS and keep your sanity
sugarenia
249
1.3M
The untapped power of vector embeddings
frankvandijk
2
1.6k
SERP Conf. Vienna - Web Accessibility: Optimizing for Inclusivity and SEO
sarafernandez
1
1.3k
The Language of Interfaces
destraynor
162
26k
A Modern Web Designer's Workflow
chriscoyier
698
190k
How To Speak Unicorn (iThemes Webinar)
marktimemedia
1
400
Highjacked: Video Game Concept Design
rkendrick25
PRO
1
300
Are puppies a ranking factor?
jonoalderson
1
3k
The Organizational Zoo: Understanding Human Behavior Agility Through Metaphoric Constructive Conversations (based on the works of Arthur Shelley, Ph.D)
kimpetersen
PRO
0
260
What's in a price? How to price your products and services
michaelherold
247
13k
Transcript
JavaScript History :VTVLF4IJOP[BLJ !CBE@BU@NBUI
ࣗݾհ :VTVLF4IJOP[BLJ !CBE@BU@NBUI IUUQEIBUFOBOFKQCBEBUNBUI
͓ͳ͢͠Δ͜ͱ +BWB4DSJQUͷྺ࢙ ॳظ தظ ݱ 90-00 01-05 06~
+4Ҏલ 1990: Tim Berners-Lee WorldWideWeb ্࢙ॳͷϒϥβ͕ੜ ’90
Knight Commander of the British Empire 2004: Sir Tim Berners-Lee
ࠓͰʮφΠτʯ༷ɻ ͪͳΈʹ
ͪͳΈʹ WorldWideWeb 1.0 εϖʔεͳ͠
+4Ҏલ 1993: NCSA NCSA Mosaic 1.0 ը૾ͱςΩετΛ̍ϖʔδʹɻ ϓϩτίϧͨ͘͞Μ ➟ Mosaic
’93
/FUTDBQF ’94 1994 April 4th ॳ Mosaic Communication Corporation SGINCSA
MosaicνʔϜ͔Βٕज़ऀҾ͖ൈ͖ 1994 October 13th Mosaic Netscape 0.9ϦϦʔε Netscape Navigator ʹվশ
’94 /FUTDBQF 1994 Dec Netscape Navigator 1.0 ඪ४ʹ४ڌͯ͠ͳ͍෦େʹݟͯͶ—
/FUTDBQF ’95 1995 May 23rd ˏSun World Conference ϒϥβʹJavaɺࡌ͚ͬ·͢ɻ
/FUTDBQF ’95 ͔͠͠ Java Applet ෳࡶ ॳ৺ऀʹ͍͍ͯͳ͍
/FUTDBQF ’95 ͬͺΓ εΫϦϓτݴޠͩΑͶʂ
’95 /FUTDBQF Scheme
/FUTDBQF ’95
/FUTDBQF ’95 Scheme
/FUTDBQF ’95 1995 April Brendan Eich টᡈ
#SFOEBO&JDI ’95 ʮSchemeͷʁʯ ΧοίେਿͩΖjk ʮʂʂʂʂʂʂʯ
-JWF4DSJQU ’95 ظͰ࣮ ே࣌̕ग़ۈ ̎࣌ୀۈ
’95 +BWB4DSJQU ࣏తͳཧ༝ʹΑΓ վশ Sunͱͷܖ
Scheme Self Java +BWB4DSJQUϨγϐ 4NBMMUBML༝དྷͷ ΦϒδΣΫτࢦݴޠ 4VO͕։ൃͨ͠Ͳ͜Ͱ ಈ͘ΦϒδΣΫτࢦݴޠ -*41ͷ࣮ͷҰͭ
+BWB4DSJQUϨγϐ Scheme Self Java 4DIFNFͱ4FMGΛ ͋ΘͤΔɻ τοϐϯάʹ+BWBΛ গʑৼΓ͔͚Δ
+BWB4DSJQU Netscape Navigator 2.0 ’96 ՚ʑ͘͠ొʂ
+BWB4DSJQU ’96 ޙ
+BWB4DSJQU Netscape Navigator 2.01 ’96 ϦϦʔεʂ
+BWB4DSJQU Netscape Navigator 2.01 ’96 ॳظઃఆʹ ʮJavaScriptΛ༻͠ͳ͍ʯ Ճ
Ұํͦͷࠒ ϥΠόϧʁ
4QZHMBTT *OD NCSAͷ͋Δٕज़Λ ༻Խ͢ΔӦۀ෦ୂతاۀ
4QZHMBTT *OD NCSA MosaicͷϥΠηϯε ͳͷͰͪΖΜ
4QZHMBTT *OD ϥΠηϯε Microsoft \ ’95 $2,000,000
Microsoft Internet Explorer 1.0 ’95 1995 August 24th ςʔϒϧͷදࣔ͑͞Ͱ͖ͳʢ͈́
Microsoft ’96 NetscapeΛܸ
’96 Microsoft Internet Explorer 3.0 JScriptͷੜ ෆ۩߹͍Ζ͍Ζ͚͋ͬͨͲɾɾ
’96 Netscape Ӵઓ
+4ඪ४Խͷಓ HTMLΈͨ͘ޓੑͷ͋Δͷʂ ’96 ඪ४ԽͰओಋݖѲΕMSා͘ͳ͍ʂ
+4ඪ४Խͷಓ W3Cʁ Ͳ͜ʹ͓Ͷ͕͍͢Δ͔ ’96 ͖ͬͱɾɾɾɺ ౖͬͯΔΑͶʁ Βͷϒϥβɺ ४ڌͯ͠ͳ͍Ͷɻ
ඪ४Խͷಓ ݁ہϤʔϩού ’96
ඪ४Խͷಓ δϡωʔϒʹຊ෦ ECMA ’96 ࠃࡍඪ४Խػؔ
ඪ४Խͷಓ 1997 June ECMA-262 (ECMAScript) ’97
ඪ४Խͷಓ JavaScript ≒ ECMAScript
ඪ४Խͷಓ JavaScript = ECMAScript + α JavaScript ≒ ECMAScript
+BWB4DSJQUͱ
&$."4DSJQU 1st ϛχϚϜ༷ 2nd υΩϡϝϯτमਖ਼ ’98 ’97
&$."4DSJQU 3rd Τϥʔॲཧਖ਼نදݱɺStringڧԽ ॲཧܥඦՖ៶ཚ ’99 ଟ͘ͷΞϓϦέʔγϣϯʹ
ϒϥβઓ૪ Netscape Microsoft vs γΣΞΣΞ ແঈ OSόϯυϧ Windows Mac
ϒϥβઓ૪ Netscape Microsoft vs OSόϯυϧ Windows Mac γΣΞΣΞ ແঈ W
IN! Loose!
ॳظͷ͓ͳ͠ ͜Ε͘Β͍Ͱ͢ɻ
தظͷ͓ͳ͠ ࣮ଟ͋͘Γ·ͤΜ
*& ϒϥβࢢΛ΄΅ಠ Pax IE! ’01
*& W3Cඪ४ʹ४ڌ͍ͯ͠ͳ͍ Ͳ͔ͬͰݟͨ ͩ͘ΓͩΑͶʁ
*& ঃʑʹଞϒϥβͷϚʔέοτ֦େ ηΩϡϦςΟϗʔϧ࣍ʑͱ W3Cඪ४ʹ४ڌ͍ͯ͠ͳ͍
"KBY 2005 Feb, 15 Jesse James Garrett ’05 ΈࣗମҎલ͔Β Ajax໋໊
΄΅*&͕ࢧ͠ɺ ੈͷதฏͰͨ͠
Ͱ͕͢૪ཚͷ࣌ʹ ಥೖ͠·͢
ϥΠϒϥϦઓ script.aculo.us prototype.js jQuery
ϒϥβઓʢ࠶ʣ Mozilla Google Opera Microsoft Apple
ϒϥβઓʢ࠶ʣ ࠓճͷ૪ JSΛ͍͔ʹߴ ʹ࣮ߦͰ͖Δ͔
ϒϥβઓʢ࠶ʣ ࠓճͷ૪ AjaxΞϓϦͷ಄ ͔ʹߴ ͖Δ͔
ϒϥβઓʢ࠶ʣ WEBඪ४ͷ४ڌ ࠓճͷ૪
Mozilla Google Opera Microsoft Apple ϒϥβઓʢ࠶ʣ
ͦ͏͍͑ඪ४ʁ ES4ʁ
&4 Class Interface ... ޓੑɾɾɾ
%PVHMBT$SPDLGPSE
͋ͱ+40/ KTMJOUɺKTNJOͳͲ %PVHMBT$SPDLGPSE l5IF(PPE1BSUTz
%PVHMBT$SPDLGPSE &4աڈόʔδϣϯͱඇޓ ͜Ε͕ඪ४Խ͞ΕΔͱੈͷத #BE1BSUTʹຒΊਚ͘͞ΕΔʂ
%PVHMBT$SPDLGPSE ECMAʹΧνίϛ
%PVHMBT$SPDLGPSE ECMAʹΧνίϛ W IN!
%PVHMBT$SPDLGPSE ʮεϚϯͳ"EPCFʯ
"EPCF w"DUJPO4DSJQU ʮ͋ɾɾ"DUJPO4DSJQUग़ͯ͠ ͨΓ͢Δ͚Ͳɺɾɾผʹɾɾʯ
"EPCF w"DUJPO4DSJQU JSؔ࿈ͰϗϯτʹπΩ͕ͳ͍ɻ ES4͔͠Γɺ Τϯδϯ(tamarin)͔͠Γɻ
ؾΛऔΓͯ͠&4 ES3.1ϕʔε JSONαϙʔτ StrictϞʔυͳͲ
&4IBSNPOZ ઈࢍٞத
ͯ͞
*&͞Μͷੜଉঢ়گ
*&$PVOUEPXO http://www.ie6countdown.com/
Ruby PHP Apache Browser ΞʔΩςΫνϟͷมભ )5.-
4FSWFS4JEF 2009 Node.jsੜ V8: ϒϥβઓ૪ͷࣀ ’09
SSP, SPAϞσϧͷ಄ Twitter, Facebook ΞʔΩςΫνϟͷมભ
$MJFOU4JEF Client-Side MVC Smartphone
APIαʔό CDN Browser ΞʔΩςΫνϟͷมભ +40/ )5.-JNBHF TUBUJDBTTFUT ˞ͪΖΜ·ͩओྲྀͰͳ͍͚Ͳɻ
Node Browser Client͔ΒServer·ͰJSͰͰ͖ΔΑʂʂ ΞʔΩςΫνϟͷมભ CDN +40/
ͱΓ·ٕ͘ज़มભ
+BWB4DSJQU &7&3:8)&3&
5IBOLT