SPAã§ãã価å¤
以åãå°ãåã ãã以ä¸ã®ããã°ãèªãã§ãSPAã§ããã¹ã価å¤ã«ã¤ãã¦èãããã¨ãè¿°ã¹ãã
ããããSPAã¨ã¯?
ãã®è°è«ãããåã«ãããããSPAã¨ã¯ä½ã ããã?ã¨ããç¹ã«ã¤ãã¦æ´çãã¦ããããåã¯2ã¤ã®ç¹ã§ç¹å¾´ãããã¨æã£ã¦ãã¦ã
- ããã³ãã¨ã³ãGUIã§ãããã¨
- Webã¢ããªã±ã¼ã·ã§ã³ã§ãããã¨
ãã®2ç¹ããªã¨æããç°¡åã«ã¾ã¨ããã¨ã
ããã³ãã¨ã³ãGUIã§ãããã¨
ã¾ãã¯ããããã³ãã¨ã³ãGUIãã¨ããã®ã¯ã©ããããã¨ãã¨è¨ãã°ããµã¼ãã¼ãµã¤ãã¬ã³ããªã³ã°ã¨ã¯å¯¾ç §ã«ãjsã«ããDOMæä½ã«ãã£ã¦ãUIãåãæ¿ãã¦è¡ã£ã¦æ§æããGUIãæãã
Webã¢ããªã±ã¼ã·ã§ã³ã§ãããã¨
GUIã§ã¯ããã®ã ããããã¯ãWebã¢ããªã±ã¼ã·ã§ã³ã§ãããããµã¼ãã¼ããAjaxãwebsocketãªã©ã«ãã£ã¦ããµã¼ãã¨ãã¼ã¿ã®ããã¨ããããã
ããããã®è©±ã¯ãæãæãçµæ§ãã£ã¦ããã¨ãã°ãwebã®æè¡ã¨ãGUIã®æè¡ã交ãã£ã¦ãããã¨ã«ãã£ã¦ãã³ãã¥ãã±ã¼ã·ã§ã³ããããããªã£ããã¨ãããããããã¨ãããæããããããã¦ããã¨ããã¾ããããã¯è©±ãå¤ããããã¦ãSPA ã®ä¾¡å¤ã«ã¤ãã¦èãã¦ã¿ããã
SPAã®ä¾¡å¤
å ç¨ã®ã¨ã³ããªãããå¹¾ã¤ããæç²ãå¼ç¨ããã
ã¾ããããæ£ç´ãããªã«ããããåçã«ããããæ¸ãæãã¦ãããã¼ã¸ãããã¾ãè¦ãªãæ°ããããã§ãããããã®ä¸æ£ç´ããããã¦ã§ããã¼ã¸ããã£ãã¨ãã¦ã大ä½ä½¿ãã¥ããã§ãã ä¸ã®ä¸ã®ãã¼ã¸ãå ¨é¨FBãªãããã®ããããã¾ããããå ·ä½çã«ã¯ã©ããªã¨ããã§ä½¿ã£ã¦ããã§ããããæ¥åãã¼ã¸ã¨ãã§ããï¼ãã¨ããªãSPAã«ããªããã°ãããªãã®ããããããããªãã§ããç»é¢é·ç§»ããã®ã ããªã®ï¼ã¨ããæãã§ã (http://anond.hatelabo.jp/20160521163144 ããå¼ç¨)
ãã®ç¹ã«ã¤ãã¦ãmizchiããããããã¤ãã¢ã³ãµã¼ãåºãã¦ãããããã®ç¹ãåãªãã«ã¾ã¨ãããã¨æãã(ããããæ¬ããã°ã®è¶£æ¨ã§ããã)
ã¾ãçµè«ããè¨ãã°ããã¡ããã¨ããwebã¢ããªã±ã¼ã·ã§ã³ã®UIãèããããSPAã«ãªããããå¾ãªãã¨ãããã¨ãå¤ããã¨ãããã¨ã§ãããé çªã«è¨ã£ã¦è¡ããã
SPAã¨ã使ãã«ããã
SPAã¨ã使ãã«ãããã¯é¢ä¿ããªãã
ã¾ããè¨ããããã¨ã¯,SPAã§ãããã¨ã¨ã使ãã«ãããã¯é¢ä¿ããªãã¨ãããã¨ã§ãããä¸è¬ã«ä½¿ãã«ãããUIã®åå ã¯ããããããæä½ãè¤éã§ãããã¨ãã¨ãUIè¨è¨ãç³ãã§ãããã©ã¡ããã§ããã
ããããæä½ãè¤éã§ãããã¨ããããæããããã¨æããã¤ã¾ãã¢ããªã±ã¼ã·ã§ã³ãæ¬è³ªçã«é£ããã®ã ãtoBã®ã¢ããªã±ã¼ã·ã§ã³ãããã®ã§ã¼ã ã®ã¢ããªã±ã¼ã·ã§ã³ã§ã¯ãä»æ¹ç¡ãé¢ãããã¨ã¯æããç¹æ®ãªãã¿ã¼ã³ã«å¯¾å¿ããªãã¨ãããå ´åãå¤ãããããä¸æ¹ãä¸è¬ã®äººéã使ãã®ãæ³å®ããtoCã§ãæ¬è³ªçã«é£ããã¢ããªã±ã¼ã·ã§ã³ãä½ã奴ã¯ã大æµãUXã¨ããã¸ãã¹ã¨ãµã¼ãã¹ã®æ ¹æ¬ããèããªããã¯ã½ééã§ããã
UIè¨è¨ãç³ã¨ããã®ã¯çµæ§å¤ãã¨æããã¨ããã®ããæ ¹æ¬çã«UIãè¨è¨ãã§ãããã¶ã¤ããã¨ã³ã¸ãã¢ãããªãã£ã¦ã®ãåé¡ã¨ãã¦ããã¨æãããã¶ããUIã®è¨è¨ããã人éã¯ãWebãã¶ã¤ãã ã¨ããå¤ãã®ã ããWebãã¼ã¸ãä½ããã¶ã¤ã³ã¨ãGUIãä½ããã¶ã¤ã³ã¯ç°ãªãã®ã§ãããããããã ããGUIã®ã¤ã³ã¿ã©ã¯ã·ã§ã³ã«ã¤ãã¦èãããã¦ãªãã¨ããããããã¦ã¼ã¶ãå®ç¾©ãã¦ãã¡ããã¨UIãè¨è¨ã§ããã£ã¦ã¹ãã«ãç¡ã人éãå¤ãã¨æããSPAã®èªç±ããæ´»ããã¦ãããããã¦ã¼ã¶ã®ããã®UIãã¶ã¤ã³ãã§ãããã¶ã¤ãã¯ãªããªãããªãã®ã§ããã
å¤ãã®SPAã®å ´åãSPAã®ãã®è¡¨ç¾ã®èªç±ãã®å½±é¿ã§ãç³UIãçã¾ãã¦ãããã¨ãå¤ããèªç±ãããã®ã SPAã¯ããã®çµæããã®èªç±ãã«ãã£ã¦ãè¯ãUIã§ããããç³UIã§ãããããèªç±ã«UIãä½ããã¨ãã§ããã®ã§ããããã®çµæãUIãã¶ã¤ã³ãããã«ã¯ãããã³ãã¨ã³ãã®æè¡çãªè¨è¨ã¾ã§è¤éããããããã¦ããã¨ãããã¨ã§ãããã²ã¼ã ã®ã¤ã³ã¿ã¼ãã§ã¼ã¹ãç´ æ´ããã¨ããã²ã¼ã ã®ä½é¨ããã°ãããããã¨ãã£ã¦ããã¤ã¯ãã¤ã³ã¿ã©ã¯ã·ã§ã³ãããã¢ãã¡ã¼ã·ã§ã³ãä¸æ¯å ¥ãã¦ãç¬èªã®ä¸ç観ãä½ãåºããçµæç³ãçã¾ãã¦ããããªã©è¯ãèãæ°ãããã
SPAãã使ãããããªãããã¨ããã
ä¸æ¹ã§ãSPAã¯ä½¿ãããããªããã¨ããããä¸ã¤ã®ã使ãããããã®ææ¨ã¨ãã¦ãã¦ã¼ã¶ã®ã¿ã¹ã¯æéããèããæãããããSPAã使ãäºã«ãã£ã¦ãã¿ã¹ã¯æéãçããããã¨ããããã¨ããã®ãããµã¼ãã¼ãµã¤ãã¬ã³ããªã³ã°ã§ãä¸ã ãããã¯ã¼ã¯è¶ãã«ãéä¿¡ãã¦ãWebã¢ããªã±ã¼ã·ã§ã³ã使ãã¨ããã®ã¯ããé ããã®ã§ãããSPAã«ãããã¨ã«ãã£ã¦ã解決ãããã¨ããããã¤ã¾ããSPAã«ãããã¨ã«ãã£ã¦ãã¦ã¼ã¶ã¨ã³ã³ãã¥ã¼ã¿ã®å¿çãç´ æ©ãããå¹æãããã
ãã¡ããããã¿ã¹ã¯ã®æéãã¯ãä»ã®äºããã¨ãã°ãç»é¢ã®ã¬ã¤ã¢ã¦ãã ã¨ãããã¼ã¸ã®æ å ±ã®è¨è¨ã ã¨ãããã®ä»ã«ãå½±é¿ããã®ã ããã¦ã¼ã¶ã¨ã³ã³ãã¥ã¼ã¿ã®å¿çãç´ æ©ãããã¯ä¸ã¤ã®æ¹æ³ã¨ãã¦ããã ãããã¤ã¾ããæå¹ãªãã¨ã§ã¯ãªãããããç¨åº¦SPAã«ãããã¨ã«ãã£ã¦æ¹åãããã¨ããããã¾ãããã¼ã¸é·ç§»å±¥æ´ã®ç®¡çãã¹ãããªããããã¨ã«ãã£ã¦ãç¡é§ãªæ»ãã¨ããé²ããç¡ãããããã¦ãã使ããããããªãã¨ãããã¨ãèããããã
ã¤ã¾ããSPAã¯èªç±ãªè¡¨ç¾ã¨ãã£ãè¨ã£ãã®ã ãããã¡ãããã¡ããã¨ã¦ã¼ã¶èª¿æ»ãå®ç¾©ããã¦ãUIè¨è¨ããããã¨ã«ãã£ã¦ãããã使ããããããã®ãæä¾ãããã¨ãã§ããããã«ãªãã¨ãããã¨ãããã
ã¡ããã¨ãããã¾ã¨ããªwebGUIãä½ãããã®SPA
çµå±ã®ã¨ãããã¾ã¨ããªwebã®GUIãä½ãããã«ãSPAã§ããã¹ã(ãã¨ãå¤ã)ã¨ãããã¨ã§ããSPAã¯ç¨®ã ã®ãUIãã¶ã¤ã³ã®åé¡ããããã³ãã¨ã³ãã®GUIã®æè¡çãªè¨è¨ããé£ãããªããã¨ãå¤ãããä¸æ¹ã§ã使ãããããããã¾ã¨ããªãGUIãæä¾ã§ããã¨ããã®ããSPAã§ãã価å¤ã§ããã¨æããã¦ã¼ã¶ã«ã¨ã£ã¦éè¦ãç¡ãã¨ãããã¨ã§ããã®ã§ã¯ãªãã¦ããããããã¦ã¼ã¶ãæ°ã¥ããªãæ½å¨çãªãã¼ãºã«çããã¨ããã®ãã§ããå¯è½æ§ãããã¨ãããã¨ã§ããã
追è¨ã誤åãè±åã«ã¤ãã¦
å½ã¨ã³ããªãããªãã¦ãåã®ããã°ã¯åºæ¬çã«åã®èããè¡åã®è¨é²ã§ããã¡ã¢ã§ãããæ¨æ²ããè¦ç´ãããã¯åºæ¬çã«ããªãã§å ¬éãã¦ããããã ããææããã£ããä¿®æ£ããããã¨ã¨ãã©ããã¾ã«ç´ããããããã誤åãå¤ããã¨ãæç´ãã³ã¡ã³ãã§è¨ããããã ã£ãããææããæ¹ã建è¨çã§ããã
èªåãæ¸ããæç« ãªã®ã§ãèªåãèªã¿ãããã¨ããã®ã¯å½ããåã§ã人ãèªã¿ã«ãããªãã¦ãã¨çµæ§ãããã¨ãåãã£ã¦é ãããã人ã«èªã¾ããæç« ã§ããã°ãä»ã®æ°åã«ã¬ãã¥ã¼ãã¦è²°ã£ããããã®ã ããããããããã°ã§ã¯ãã®è² æ ã¯ããããã ãããæªãã¨ããã®ããã è¨ãã®ã§ã¯ãªããã©ããæªãã®ããããã¦ã©ãç´ãã¹ããã¨ããã®ãææããã¨ãããã¯ç´ãã®ã§ãã®ãããªææãé ããã¨å©ããã®ã§ããã
追è¨2
id:nurehaããã®ææé ãããããã¨ããããã¾ãããã£ã±ãããããã誤åãè±åã¯æ¸ããæ¬äººã¯å ¨ç¶æ°ã¥ããªããã®ã§ãã