Slide 1

Slide 1 text

JavaScript History :VTVLF4IJOP[BLJ !CBE@BU@NBUI

Slide 2

Slide 2 text

ࣗݾ঺հ :VTVLF4IJOP[BLJ !CBE@BU@NBUI IUUQEIBUFOBOFKQCBEBUNBUI

Slide 3

Slide 3 text

͓͸ͳ͢͠Δ͜ͱ +BWB4DSJQUͷྺ࢙ ॳظ தظ ݱ୅ 90-00 01-05 06~

Slide 4

Slide 4 text

+4Ҏલ 1990: Tim Berners-Lee WorldWideWeb ্࢙ॳͷϒϥ΢β͕஀ੜ ’90

Slide 5

Slide 5 text

Knight Commander of the British Empire 2004: Sir Tim Berners-Lee ࠓͰ͸ʮφΠτʯ༷ɻ ͪͳΈʹ

Slide 6

Slide 6 text

ͪͳΈʹ WorldWideWeb 1.0 εϖʔεͳ͠

Slide 7

Slide 7 text

+4Ҏલ 1993: NCSA NCSA Mosaic 1.0 ը૾ͱςΩετΛ̍ϖʔδʹɻ ϓϩτίϧͨ͘͞Μ ➟ Mosaic ’93

Slide 8

Slide 8 text

/FUTDBQF ’94 1994 April 4th ౰ॳ͸ Mosaic Communication Corporation SGI΍NCSA MosaicνʔϜ͔Βٕज़ऀҾ͖ൈ͖ 1994 October 13th Mosaic Netscape 0.9ϦϦʔε Netscape Navigator ʹվশ

Slide 9

Slide 9 text

’94 /FUTDBQF 1994 Dec Netscape Navigator 1.0 ඪ४ʹ४ڌͯ͠ͳ͍෦෼͸େ໨ʹݟͯͶ—

Slide 10

Slide 10 text

/FUTDBQF ’95 1995 May 23rd ˏSun World Conference ϒϥ΢βʹJavaɺࡌ͚ͬ·͢ɻ

Slide 11

Slide 11 text

/FUTDBQF ’95 ͔͠͠ Java Applet ͸ෳࡶ ॳ৺ऀʹ΋޲͍͍ͯͳ͍

Slide 12

Slide 12 text

/FUTDBQF ’95 ΍ͬͺΓ εΫϦϓτݴޠͩΑͶʂ

Slide 13

Slide 13 text

’95 /FUTDBQF Scheme

Slide 14

Slide 14 text

/FUTDBQF ’95

Slide 15

Slide 15 text

/FUTDBQF ’95 Scheme

Slide 16

Slide 16 text

/FUTDBQF ’95 1995 April Brendan Eich টᡈ

Slide 17

Slide 17 text

#SFOEBO&JDI ’95 ʮSchemeͷ࿩͸ʁʯ ΧοίେਿͩΖjk ʮʂʂʂʂʂʂʯ

Slide 18

Slide 18 text

-JWF4DSJQU ’95 ௒୹ظͰ࣮૷ ே࣌̕ग़ۈ ໷̎࣌ୀۈ

Slide 19

Slide 19 text

’95 +BWB4DSJQU ੓࣏తͳཧ༝ʹΑΓ վশ Sunͱͷܖ໿

Slide 20

Slide 20 text

Scheme Self Java +BWB4DSJQUϨγϐ 4NBMMUBML༝དྷͷ ΦϒδΣΫτࢦ޲ݴޠ 4VO͕։ൃͨ͠Ͳ͜Ͱ΋ ಈ͘ΦϒδΣΫτࢦ޲ݴޠ -*41ͷ࣮૷ͷҰͭ

Slide 21

Slide 21 text

+BWB4DSJQUϨγϐ Scheme Self Java 4DIFNFͱ4FMGΛ ͋ΘͤΔɻ τοϐϯάʹ+BWBΛ গʑৼΓ͔͚Δ

Slide 22

Slide 22 text

+BWB4DSJQU Netscape Navigator 2.0 ’96 ՚ʑ͘͠ొ৔ʂ

Slide 23

Slide 23 text

+BWB4DSJQU ’96 ௚ޙ

Slide 24

Slide 24 text

+BWB4DSJQU Netscape Navigator 2.01 ’96 ϦϦʔεʂ

Slide 25

Slide 25 text

+BWB4DSJQU Netscape Navigator 2.01 ’96 ॳظઃఆʹ ʮJavaScriptΛ࢖༻͠ͳ͍ʯ ௥Ճ

Slide 26

Slide 26 text

Ұํͦͷࠒ ϥΠόϧ͸ʁ

Slide 27

Slide 27 text

4QZHMBTT *OD NCSAͷ਺͋Δٕज़Λ ঎༻Խ͢ΔӦۀ෦ୂతاۀ

Slide 28

Slide 28 text

4QZHMBTT *OD NCSA MosaicͷϥΠηϯε΋ ͳͷͰ΋ͪΖΜ

Slide 29

Slide 29 text

4QZHMBTT *OD ϥΠηϯε Microsoft \ ’95 $2,000,000

Slide 30

Slide 30 text

Microsoft Internet Explorer 1.0 ’95 1995 August 24th ςʔϒϧͷදࣔ͑͞Ͱ͖ͳʢ͈́

Slide 31

Slide 31 text

Microsoft ’96 NetscapeΛ௥ܸ

Slide 32

Slide 32 text

’96 Microsoft Internet Explorer 3.0 JScriptͷ஀ੜ ෆ۩߹͍Ζ͍Ζ͚͋ͬͨͲɾɾ

Slide 33

Slide 33 text

’96 Netscape ๷Ӵઓ

Slide 34

Slide 34 text

+4ඪ४Խ΁ͷಓ HTMLΈͨ͘ޓ׵ੑͷ͋Δ΋ͷ΁ʂ ’96 ඪ४ԽͰओಋݖѲΕ͹MS΋ා͘ͳ͍ʂ

Slide 35

Slide 35 text

+4ඪ४Խ΁ͷಓ W3Cʁ Ͳ͜ʹ͓Ͷ͕͍͢Δ͔ ’96 ͖ͬͱɾɾɾɺ ౖͬͯΔΑͶʁ ๻Βͷϒϥ΢βɺ ४ڌͯ͠ͳ͍Ͷɻ

Slide 36

Slide 36 text

ඪ४Խ΁ͷಓ ݁ہϤʔϩού΁ ’96

Slide 37

Slide 37 text

ඪ४Խ΁ͷಓ δϡωʔϒʹຊ෦ ECMA ’96 ࠃࡍඪ४Խػؔ

Slide 38

Slide 38 text

ඪ४Խ΁ͷಓ 1997 June ECMA-262 (ECMAScript) ’97

Slide 39

Slide 39 text

ඪ४Խ΁ͷಓ JavaScript ≒ ECMAScript

Slide 40

Slide 40 text

ඪ४Խ΁ͷಓ JavaScript = ECMAScript + α JavaScript ≒ ECMAScript

Slide 41

Slide 41 text

+BWB4DSJQUͱ͸

Slide 42

Slide 42 text

&$."4DSJQU 1st ϛχϚϜ࢓༷ 2nd υΩϡϝϯτमਖ਼ ’98 ’97

Slide 43

Slide 43 text

&$."4DSJQU 3rd Τϥʔॲཧ΍ਖ਼نදݱɺStringڧԽ ॲཧܥඦՖ៶ཚ ’99 ଟ͘ͷΞϓϦέʔγϣϯʹ

Slide 44

Slide 44 text

ϒϥ΢βઓ૪ Netscape Microsoft vs γΣΞ΢ΣΞ ແঈ OSόϯυϧ Windows Mac

Slide 45

Slide 45 text

ϒϥ΢βઓ૪ Netscape Microsoft vs OSόϯυϧ Windows Mac γΣΞ΢ΣΞ ແঈ W IN! Loose!

Slide 46

Slide 46 text

ॳظͷ͓͸ͳ͠͸ ͜Ε͘Β͍Ͱ͢ɻ

Slide 47

Slide 47 text

தظͷ͓͸ͳ͠͸ ࣮͸ଟ͋͘Γ·ͤΜ

Slide 48

Slide 48 text

*& ϒϥ΢βࢢ৔Λ΄΅ಠ઎ Pax IE! ’01

Slide 49

Slide 49 text

*& W3Cඪ४ʹ४ڌ͍ͯ͠ͳ͍ Ͳ͔ͬͰݟͨ ͩ͘ΓͩΑͶʁ

Slide 50

Slide 50 text

*& ঃʑʹଞϒϥ΢βͷϚʔέοτ֦େ ηΩϡϦςΟϗʔϧ΋࣍ʑͱ W3Cඪ४ʹ४ڌ͍ͯ͠ͳ͍

Slide 51

Slide 51 text

"KBY 2005 Feb, 15 Jesse James Garrett ’05 ࢓૊Έࣗମ͸Ҏલ͔Β Ajax໋໊

Slide 52

Slide 52 text

΄΅*&͕ࢧ഑͠ɺ ੈͷத͸ฏ࿨Ͱͨ͠

Slide 53

Slide 53 text

Ͱ͕͢૪ཚͷ࣌୅ʹ ಥೖ͠·͢

Slide 54

Slide 54 text

ϥΠϒϥϦઓ script.aculo.us prototype.js jQuery

Slide 55

Slide 55 text

ϒϥ΢βઓʢ࠶ʣ Mozilla Google Opera Microsoft Apple

Slide 56

Slide 56 text

ϒϥ΢βઓʢ࠶ʣ ࠓճͷ૪఺ JSΛ͍͔ʹߴ଎ ʹ࣮ߦͰ͖Δ͔

Slide 57

Slide 57 text

ϒϥ΢βઓʢ࠶ʣ ࠓճͷ૪఺ AjaxΞϓϦͷ୆಄ ͔ʹߴ଎ ͖Δ͔

Slide 58

Slide 58 text

ϒϥ΢βઓʢ࠶ʣ WEBඪ४΁ͷ४ڌ ࠓճͷ૪఺

Slide 59

Slide 59 text

Mozilla Google Opera Microsoft Apple ϒϥ΢βઓʢ࠶ʣ

Slide 60

Slide 60 text

ͦ͏͍͑͹ඪ४͸ʁ ES4͸ʁ

Slide 61

Slide 61 text

&4 Class Interface ... ޓ׵ੑɾɾɾ

Slide 62

Slide 62 text

%PVHMBT$SPDLGPSE

Slide 63

Slide 63 text

͋ͱ+40/΍ KTMJOUɺKTNJOͳͲ %PVHMBT$SPDLGPSE l5IF(PPE1BSUTz

Slide 64

Slide 64 text

%PVHMBT$SPDLGPSE &4͸աڈόʔδϣϯͱඇޓ׵ ͜Ε͕ඪ४Խ͞ΕΔͱੈͷத͸ #BE1BSUTʹຒΊਚ͘͞ΕΔʂ

Slide 65

Slide 65 text

%PVHMBT$SPDLGPSE ECMAʹΧνίϛ

Slide 66

Slide 66 text

%PVHMBT$SPDLGPSE ECMAʹΧνίϛ W IN!

Slide 67

Slide 67 text

%PVHMBT$SPDLGPSE ʮεϚϯͳ"EPCFʯ

Slide 68

Slide 68 text

"EPCF w"DUJPO4DSJQU ʮ͋ɾɾ"DUJPO4DSJQUग़ͯ͠ ͨΓ͢Δ͚Ͳɺ΂ɾɾผʹɾɾʯ

Slide 69

Slide 69 text

"EPCF w"DUJPO4DSJQU JSؔ࿈Ͱ͸ϗϯτʹπΩ͕ͳ͍ɻ ES4͔͠Γɺ Τϯδϯ(tamarin)͔͠Γɻ

Slide 70

Slide 70 text

ؾΛऔΓ௚ͯ͠&4 ES3.1ϕʔε JSONαϙʔτ StrictϞʔυͳͲ

Slide 71

Slide 71 text

&4IBSNPOZ ઈࢍٞ࿦த

Slide 72

Slide 72 text

ͯ͞

Slide 73

Slide 73 text

*&͞Μͷੜଉঢ়گ

Slide 74

Slide 74 text

*&$PVOUEPXO http://www.ie6countdown.com/

Slide 75

Slide 75 text

Ruby PHP Apache Browser ΞʔΩςΫνϟͷมભ )5.-

Slide 76

Slide 76 text

4FSWFS4JEF 2009೥ Node.js஀ੜ V8: ϒϥ΢βઓ૪ͷࣀ෺ ’09

Slide 77

Slide 77 text

SSP, SPAϞσϧͷ୆಄ Twitter, Facebook ΞʔΩςΫνϟͷมભ

Slide 78

Slide 78 text

$MJFOU4JEF Client-Side MVC Smartphone

Slide 79

Slide 79 text

APIαʔό CDN Browser ΞʔΩςΫνϟͷมભ +40/ )5.-JNBHF౳ TUBUJDBTTFUT ˞΋ͪΖΜ·ͩओྲྀͰ͸ͳ͍͚Ͳɻ

Slide 80

Slide 80 text

Node Browser Client͔ΒServer·ͰJSͰͰ͖ΔΑʂʂ ΞʔΩςΫνϟͷมભ CDN +40/

Slide 81

Slide 81 text

ͱΓ·ٕ͘ज़΋มભ

Slide 82

Slide 82 text

+BWB4DSJQU &7&3:8)&3&

Slide 83

Slide 83 text

5IBOLT