äœããèµ·ãã£ãŠããŸãã 人ã
ã¯äžå¹žã§ãã åžæ°äžå®ã®å¹œéã¯ç§ãã¡ã®ããã°ã©ãã³ã°ã³ãã¥ããã£ã«åºæ²¡ããŸãã
åããŠãããªãã®æ°ã®Webéçºè
ãWebãã©ãããã©ãŒã ã«å
¬ç¶ãšçåãåããŠããŸãã ããã«å
žåçãª
èšäºãš
è°è«ããããŸãã ããã«
å¥ã®èšäºããããŸãã ãããŠ
ããäžã€ ã ãã£ãšãªã¹ãããããšãã§ããŸããããã®èšäºãèªãã®ã«ååãªããã°ã©ãã³ã°ã«èå³ããããªããããããä»å¹Žã®Webéçºã®çŸç¶ã«ã€ããŠå°ãªããšã1åã®æèªãæ¢ã«èªãã§ããã§ãããã ãã®èšäºã¯ãããã®1ã€ã§ã¯ãããŸããã ç§ã¯ãæ¯æ¥Webéçºãããªããã°ãªããªã人ã
ãšæ¢åã®çŸç¶ãããããããšã§ç«¶äºããããšã¯ã§ããŸããã ããã¯å¥ã®èšäºã§ãã
ããã³ããšã³ãããã«ãŒã§ãå°ãªããšãã¢ããªã±ãŒã·ã§ã³ãäœæããããã«ãæçµçã«Webã«åã£ãŠä»£ããWebã®ãããªåªããç«¶åä»ç€Ÿãäœæã§ãããã©ãããæ€èšããããšæããŸãã ãŠã§ãã«ã¯ãŸã ããã¥ã¡ã³ãé
åžã·ã¹ãã ã®ãããªåé¡ããããŸãããå¿é
ããã»ã©æ·±å»ã§ã¯ãããŸããã
ããã¯2ã€ã®èšäºã®æåã®èšäºã§ãã æåã®éšåã§ã¯ãWebãã©ãããã©ãŒã ã®æ·±ããŠäžæº¶æ§ã®åé¡ãæ€èšããŸãããããæŸæ£ããããšãå¯äžã®éžæè¢ã§ããããšãçŽåŸãããããšæããŸãã æçµçã«ãæåã«åæããªãéããåé¡ã解決ããããšã¯äžå¯èœã§ãã ãŸãããããã®åé¡ãè°è«ããããšãæ¿æ²»çã«åãå
¥ããããããã«ãªã£ãçç±ãç°¡åã«æ€èšããŸããããããã¯æ°ãããã®ã§ã¯ãããŸããã
第2éšã§ã¯ãå°æ°ã®éçºè
ã°ã«ãŒãã劥åœãªæéå
ã«äœæã§ããã¢ããªã±ãŒã·ã§ã³çšã®æ°ãããã©ãããã©ãŒã ãææ¡ããŸããã©ã®ãã©ãããã©ãŒã ïŒIMHOïŒãçŸåšã®ãã®ãããã¯ããã«åªããŠããã¯ãã§ãã ãã¡ããã誰ããåŸè
ã«åæããããã§ã¯ãããŸããã åé¡ã«åæããããšã¯ã解決çã«åæããããšãããåžžã«ç°¡åã§ãã
ããŒã1ãè¡ããŸãããã
ãªããŠã§ãã¯æ»ãªãªããã°ãªããªãã®ã
Webã¢ããªã±ãŒã·ã§ã³ã 圌ãã¯ã©ã®ããã«èŠããŸããïŒ ããããã®åé¡ããªã¹ãã§ããŸããã2ã€ã«çŠç¹ãåœãŠãŸãããã
- Webéçºã¯1990幎代ããã£ãããšç¹°ãè¿ããŠããŸãã
- Webã¢ããªã±ãŒã·ã§ã³ã¯ä¿è·ã§ããŸããã
Facebookã®ææ°ã®ãã¬ã³ãã£ãªWebãã¬ãŒã ã¯ãŒã¯
ã§ããFluxã®çŽ æŽãããæçš¿ã§ã ã èè
ã¯ãFluxã1985幎ã«ãªãªãŒã¹ãããWindows 1.0ã§äœ¿çšãããŠããããã°ã©ãã³ã°ã¢ãã«ãåçŸããŠããããšãææããŠããŸãã ãã€ã¯ããœããã¯ãäœéã®ã³ã³ãã¥ãŒã¿ãŒã«é©ããŠãããããã®ã¢ãã«ã䜿çšããŸããããããã°ã©ãã³ã°ããã®ã¯éåžžã«äžäŸ¿ã§ããããã®ãããåºç€ãšãªãWndProcã¡ãã»ãŒãžã³ã°ã·ã¹ãã ãæœè±¡åã§ãã補åãšã³ã·ã¹ãã ïŒOWLãªã©ïŒå
šäœãæé·ãããŸã§10幎ãããããŸããã§ããã
React / Fluxããã®ããã«æ©èœããçç±ã®1ã€ã¯ãWebã¬ã³ããªã³ã°ãšã³ãžã³ãéåžžã«é
ãããã§ãã ããã¯äºå®ã§ããããŠãŒã¶ãŒã«è¡šç€ºãããæçµçµæã¯ãWindowsãŠãŒã¶ãŒã20幎åã«èŠãããšãã§ãããããå°ãè€éã§ãã
Windows 98ãã¡ãããç»é¢ã®è§£å床ã¯å€§ãããªããŸããã 奜ããªã°ã¬ãŒã®è²åããå€ãããŸããã ãã ããäžã«è¡šç€ºãããUIã¯ãäžã«è¡šç€ºãããUIãšè€éããéåžžã«äŒŒãŠããŸãã

ã¢ã€ã³ã³ã®ãã¡ãã·ã§ã³ãå€ãã£ãŠããŸããïŒ Windows 98ã¯ã°ã¬ãŒã¹ã±ãŒã«ã®ãã©ããã¢ã€ã³ã³ã®æ°ãããã¬ã³ããå°å
¥ããŸãããã以åã®ã¢ã€ã³ã³ã¯ã«ã©ãŒã§ãå¯éãããã¯ã»ã«åãããç»åã§ããã
ããããOffice 2000ã¯75 MHzã®CPUãš32 MBã®ã¡ã¢ãªã§ããªãæºè¶³ã§ããããã¹ã¯ãªãŒã³ã·ã§ããã®Googleããã¥ã¡ã³ãã¯2.5 GHzã®CPUãšã»ãŒ10åã®ã¡ã¢ãªã䜿çšããŸãã
ããã©ãŒãã³ã¹ãšæ©èœã10ååäžããå Žåãããã¯èš±ãããŸãããå®çŸããŸããã§ããã 1995幎ã®éçºãã©ãããã©ãŒã ã«ã¯ãããã©ã«ãã§æ¬¡ã®ãã®ããã¹ãŠå«ãŸããŠããŸããã
- ã¬ã€ã¢ãŠãå¶éãšããŒã¿ãã€ã³ãã£ã³ã°ãåããããžã¥ã¢ã«UIãšãã£ã¿ãŒã
- å€ãã®èšèªã§ã®é«åºŠãªãœãããŠã§ã¢ã³ã³ããŒãã³ãã®ãµããŒãã éçã«åæå®ããããã€ãã£ãã³ãŒããšã¹ã¯ãªããèšèªãæ··åšãããããšãã§ããŸãã
- ãªãªãŒã¹ãããå®è¡å¯èœãã¡ã€ã«ã¯éåžžã«å¹æçã§ãã£ããããæ°ã¡ã¬ãã€ãã®RAMã§åäœããŸããã
- ã°ã©ãäœæãããŒãèšå®ã3Dã°ã©ãã£ãã¯ã¹ããœã±ããããã°ã©ãã³ã°ãã€ã³ã¿ã©ã¯ãã£ããããã°ã®ãµããŒã...
ãããã®æ©èœã®å€ãã¯ãããæ°å¹Žã§Webãã©ãããã©ãŒã ã«ã®ã¿ç»å ŽããŸããã Webã¢ããªã±ãŒã·ã§ã³ã¯å®éã®ãœã±ããã䜿çšã§ããªãããã代ããã«ãWebãœã±ãããããµããŒãããããã«ãµãŒããŒã倿ããå¿
èŠããããŸãã UIã³ã³ããŒãã³ãã®ãããªåºæ¬çãªãã®ã¯
éããªææã§ãã æ¬æ ŒçãªWeb IDEã¯ãããŸããããç°ãªãããã°ã©ãã³ã°èšèªãæ··åšãããããšã«ã€ããŠ...ãŸããJavaScriptã§ãã¹ãŠãã³ã³ãã€ã«ããŠã¿ãããšãã§ããŸãã æã
ã
éçºè
ã¯1ã€ã®çç±ã§Webã¢ããªã±ãŒã·ã§ã³ãäœæããããšã奜ã¿ãŸã-ãã®ãããªã¢ããªã±ãŒã·ã§ã³ããã®ãŠãŒã¶ãŒã®æåŸ
ã¯éåžžã«äœãã§ãã Windows 95ã®ã¢ããªã±ãŒã·ã§ã³ããã¯ãã¢ã€ã³ã³ããã©ãã°ã¢ã³ããããããæäœã®åãæ¶ãããã¡ã€ã«æ¡åŒµåãšã®é¢é£ä»ããéåžžã®ããŒããŒãã·ã§ãŒãã«ãããããã¯ã°ã©ãŠã³ãã§ã®äŸ¿å©ãªã¢ã¯ãã£ããã£ãããã«ã¯
ãªãã©ã€ã³äœæ¥ãŸã§æåŸ
ã§ããŸãã ãããããããã¯æãåçŽãªã¢ããªã±ãŒã·ã§ã³ã§ãã æ¬åœã«ã¯ãŒã«ãªãœãããŠã§ã¢ãOfficeããã¥ã¡ã³ãã«åã蟌ãã ããExplorerã®æ©èœãæ¡åŒµããããããã°ã©ã ã®äœæè
ãå
ã
ç¥ããªãã£ãä»»æã®ãã©ã°ã€ã³ã«ãã£ãŠæ©èœãæ¡åŒµãããããããšãã§ããŸãã Webã¢ããªã±ãŒã·ã§ã³ã¯éåžžãäœãããŸããã
ããã¯ãã¹ãŠèç©ãããŠããŸãã ãã¹ã¯ãããããã°ã©ã ãäœæãããšããã¡ã€ã«ã¿ã€ãã®ã¢ã€ã³ã³ãäœæãããªã©ãæ¯æããªããã°ãªããªãããŸããŸãªãçšéããèæ
®ããŠããçç£æ§ã倧å¹
ã«åäžããŸãã ç§ããããã䜿çšããããšã奜ã¿ãŸãã ãããŠãä»ã®äººãšã®äŒè©±ãããç§ã¯ç§ã ãã§ã¯ãªãããšãç¥ã£ãŠããŸãã
HTMLã¯ããã¥ã¡ã³ãã®ãã©ãããã©ãŒã ãšããŠéåžžã«ããããããèšèšå²åŠãšããŒã«ããããåããŠãããããWebã¯ãã®ããã«ãªã£ããšæããŸãããã¢ããªã±ãŒã·ã§ã³ã®ãã©ãããã©ãŒã ãšããŠã¯HTMLã錻ã«åºå®ããå¿
èŠãããããããŸã§ã®ãšããäœãèµ·ãããŸããã§ããã ãããã£ãŠããã¡ã€ã«ã®é¢é£ä»ãã®ãããªéåžžã«åºæ¬çãªãã®ã¯ãããŸããã ãã ããHTML5ã«ã¯ãã¢ããŒãã¢ã®ãããªã¹ããªãŒãã³ã°ããããŸããGoogleããã³ã°ã¢ãŠããäœæãããã£ãããã§ãããã ããGoogleã®åªå
äºé
ã¯ãæšæºã«è¿œå ããæ©èœã®äž»ãªãã®ã§ãã ãã®ãããªåé¡ãåé¿ããã«ã¯ãã¢ããªã±ãŒã·ã§ã³ã®æŠå¿µã念é ã«çœ®ããŠèšèšããããã©ãããã©ãŒã ãå¿
èŠã§ãããããŠããããããäžããããã¥ã¡ã³ãã远å ããŸãã
Webã¢ããªã±ãŒã·ã§ã³ãä¿è·ã§ããŸãã
1990幎代åŸåãPLã®ã²ã©ãå®è£
ããœãããŠã§ã¢æ¥çã«åœ±é¿ãåãŒããŸãããC/ C ++ããã°ã©ã ã®ã»ãã¥ãªãã£è匱æ§ã¯ãåå¥ã«ä¿®æ£ã§ããçãããã°ã§ã¯ãªããªããŸããã 圌ãã¯è³ãæã«çŸããŸããã 人ã
ã¯ãC / C ++ã³ãŒããã€ã³ã¿ãŒãããã«çœ®ãããå Žåãæªçšã
å¿
ç¶çã«çŸããããšãçè§£ãå§ããŸããã
Code Redãããã¯ãŒã¯ã¯ãŒã ã«é¢ãã 2001幎ã®
SANSã¬ããŒããèªããšããã®äžçã®ç¡å®ãçè§£ã§ããŸãã
ãMicrosoftããã³ç±³åœã®ã»ãã¥ãªãã£æ©é¢ã®ä»£è¡šè
ã¯èšè
äŒèŠãéããMicrosoft Webãµã€ãããããããããŠã³ããŒããããããŠãŒã¶ãŒã«æç€ºãããã®ããããããŠã³ããŒãããããã«ãåžæ°ã®çŸ©åããšåŒã³ãŸããã Code Redãé
åžããåŸãCNNããã³ãã®ä»ã®ãã¥ãŒã¹ã¢ãŠãã¬ããã¯ããŠãŒã¶ãŒã«ã·ã¹ãã ã«ããããã€ã³ã¹ããŒã«ããããèŠåããŸããã
Windowsã«ã¯èªåæŽæ°ããããŸããããæ£ããèŠããŠããã°ããã©ã«ãã§ç¡å¹ã«ãããŠããŸããã ãŠãŒã¶ãŒã®ç¥èããªããŠãããã°ã©ã ã倿Žã§ãããšããèãã¯ã¿ããŒã§ããã
ãã©ã¹ã¿ãŒææã®æåã®å
ååŸã
ã«ãæ¥çã¯å€åãå§ããŸããããå«ã³å£°ãšæè°ããããŸããã åœæãLinuxããã³MacãŠãŒã¶ãŒã¯ãããã¯äžè¬ã«Microsoftã®çŽç²ãªåé¡ã§ãããšãã°ãã°èšããŸãã...ãããŠ
圌ãã®ã·ã¹ãã ã¯ã¹ãŒããŒããã°ã©ããŒã«ãã£ãŠäœæãããŸããã ãã®ãããMicrosoftã¯å®åçãªå±æ©ã«çŽé¢ããŠãããšããäºå®ãåãå
¥ããã
å®å
šãªéçºã©ã€ããµã€ã¯ã« ãïŒå·šå€§ãªåãã¬ãŒãã³ã°ããã°ã©ã ãšæ°ããããã»ã¹ïŒãå°å
¥ããŸããããç«¶åä»ç€Ÿã¯å®è³ªçã«éã¢ã¯ãã£ãã§ããã ã¬ãã¢ã³ãã¯Windows XPã«ãã¡ã€ã¢ãŠã©ãŒã«ã远å ããã³ãŒãã«çœ²åããããã®èšŒææžãçºè¡ããŸããã ã¢ãã€ã«ã³ãŒãã¯çŠæ¢ãããŠããŸãã ã»ãã¥ãªãã£ã®è匱æ§ãç¡éã®ã¹ããªãŒã ã«ããããšãæããã«ãªã£ããšããããããç«ææ¥ããããã®å®æçãªãªãªãŒã¹ãå°å
¥ããŸããã ã¹ããŒãããã«ãŒã¯ã以åã¯å®å
šãšæãããŠããæ¢ç¥ã®ãã°ãæªçšããæ¹æ³ãšã以åã¯ä¿¡é Œã§ãããšæãããŠãããšã¯ã¹ããã€ãããã®ä¿è·ãåé¿ããæ¹æ³ãçºèŠãç¶ããŸããã MacãšLinuxã®ã³ãã¥ããã£ã¯åŸã
ã«äŒæ¢ç¶æ
ããæãåºãããŠã€ã«ã¹ããšã¯ã¹ããã€ãããéæ³ã®ããã«ä¿è·ãããŠããªããšããäºå®ã«æ°ã¥ãå§ããŸããã
æåŸã®ã¿ãŒãã³ã°ãã€ã³ãã¯ãGoogleãChromeããªãªãŒã¹ãã2008幎ã§ãããChromeã¯ãã¬ã³ããªã³ã°ãšã³ãžã³çšã®è€éã ãå®å
šã«èŠããªããµã³ãããã¯ã¹ã®äœæã«å€å€§ãªåŽåãè²»ããããšãã芳ç¹ããéèŠãªãããžã§ã¯ãã§ãã èšãæããã°ãæ¥çããªãŒãããéçºè
ã¯ã
圌ããã©ããªã«äžçæžåœåãçµãã§ãå®å
šãªC ++ã³ãŒããæžãããšãã§ããªãããšãèªããŠ
ããŸã ã ãã®è«æãšåé¢ãããã¢ãŒããã¯ãã£ã¯ãäºå®äžã®æšæºãšãªã£ãŠããŸãã
ãŠã§ããã©ãããã©ãŒã ãæ¥ãŸãã
æ®å¿µãªããããŠã§ãã¯ç§ãã¡ãå®å
šãªã¢ããªã±ãŒã·ã§ã³ã®æµãŸããåå°ã«é£ããŠè¡ã£ãŠããŸããã Webã¢ããªã±ãŒã·ã§ã³ã¯äœããã®æ¹æ³ã§æ¯OSããéé¢ãããŠããŸãããããã¯åªããŠããŸãããã¢ããªã±ãŒã·ã§ã³èªäœã¯2001幎ã®Windowsã³ãŒããããä¿¡é Œæ§ãã»ãšãã©ãããŸããã ç¶æ¿ãããåé¡ãæ°žä¹
ã«åãé€ã代ããã«ãWebã¯åã«ãããã¡ãªãŒããŒãããŒã®1ã€ã®ã¿ã€ããå¥ã®ã¿ã€ãã«çœ®ãæããŸããã ãã¹ã¯ãããã¢ããªã±ãŒã·ã§ã³ã§ã¯ãåãã¡ã¢ãªã®äºéè§£æŸïŒäºéè§£æŸïŒãã¹ã¿ãã¯æŽåæ§ã®è匱æ§ïŒã¹ã¿ãã¯ã¹ããã·ã¥ïŒãè§£æŸåŸã®ã¡ã¢ãªäœ¿çšéïŒè§£æŸåŸäœ¿çšïŒãªã©ã®è匱æ§ãæªçšãããŸããã Webã¢ããªã±ãŒã·ã§ã³ã¯ããããä¿®æ£ããŸããããåãçš®é¡ã®ç¬èªã®ãšã©ãŒïŒSQLã€ã³ãžã§ã¯ã·ã§ã³ãXSSãXSRFãããããŒã€ã³ãžã§ã¯ã·ã§ã³ãMIMEã¿ã€ãã®æ··åãªã©ïŒãæç€ºããŸããã
ããã¯ãã¹ãŠç°¡åãªè«æã«ã€ãªãããŸãïŒ
å®å
šãªWebã¢ããªã±ãŒã·ã§ã³ãäœæã§ããŸãããç§ãã¡ã¯ã€ãŸããªããã®ã§ã¯ãããŸããã ç§ã¯ãã¹ãŠã®Webã¢ããªã±ãŒã·ã§ã³ã«ã€ããŠæåéã話ãããŠããããã§ã¯ãããŸããã ã¯ããå®å
šãªHTML Hello Worldããã©ã°ãæã«æžãããšãã§ããŸãã
ç§ã¯çŸå®çãªçšèªã§æžãããå®éã®ãŸãšããªãµã€ãºã®Webã¢ããªã±ãŒã·ã§ã³ã«ã€ããŠè©±ããŠããã®ã§ããããã®ã¹ããŒãã¡ã³ãã¯ç°¡åã§ã¯ãããŸããã§ããã Googleã§8幎éåããåŸãçè§£ãåŸãããŸããã ããã§ãæé«ã§æãæèœã®ããWebéçºè
ãæªçšå¯èœãªãã°ã䌎ãã³ãŒããäœåºŠãçºè¡ããã®ãèŠãŸããã
Googleã®ã»ãã¥ãªãã£éšéã¯äžçã§ãæé«ã®1ã€ã§ãããããããæé«ã§ãã瀟å
ã«ãªãã¥ã©ã ã®ããã«
ãæã人æ°ã®ããWebéçºãšã©ãŒããªã¹ããã䟿å©ãªã¬ã€ãããªãªãŒã¹ããŠããŸãã ãã©ãŠã¶ã«è¡šç€ºããããŒã¿ãå®å
šã«éä¿¡ããæ¹æ³ã«é¢ããã¢ããã€ã¹ã¯æ¬¡ã®ãšããã§ãã
. , (« »), , - , . -, XSRF, , , JSON . -, JSON POST
, <script>. -, , . â - , ])}while(1);</x>
. , .
: . , , . , , , /*
*/
, . (: , - */
?)
.
, , - Google, - .
, .
HEIST -, . -. .
! ! REST/JSON â , -. (
).
, -, , , . : -, , -, - .
:
â C, : XSS SQL , . , , . (escaping), , .
: : . - , . , , UI .
HTTP HTML . Authy, â../smsâ SMS. , - Authy , . , HTML,
. API «», .
REST , XML, XML JSON â
, , .
: , REST â . REST â , HTTP , , . , , . . , - , RPC.
- â .
:
⊠.
, - , JavaScript, .
, , DNS rebinding , .
SOP (same origin policy) , Netscape . . ,
10 . , Netscape , , , . 10- .
, HEIST SOP,
HEIST - , , , , , . , -.
: , . , . , .
, -, , , , .
HTML5 â . , -, . : ,
, , . . , , .
. , . Flash, Shockwave Java. , . â , : , , , , . . «-» . , Macromedia Flash â .
. , : HTML5, , . W3C , Google Microsoft, - . . JavaScript .
. :
?