å é±æ¸ãã10å¹´ã®ãã±ãæ¯æã£ãããã³ãçéã«ãããJavaScriptéçºç°å¢ï¼2016å¹´4æç¾å¨ï¼ãã¨ããè¨äºãã¾ãã¾ãã®åé¿ãå¾ãã®ã§ãããåã®äºæ³ã¨ã¯ç°ãªããããããªã«å¤ãã®ãã¼ã«ããã¬ã¼ã ã¯ã¼ã¯ãå¿ è¦ã¨ããç¾ç¶ã¯ãããããã¨ãã£ããç¶æ³æ¹å¤ã®æè¦ãå¤ãéã¾ãã¾ããã
Mediumãªã©æµ·å¤ã¡ãã£ã¢ã§ã¯ããã¯ããã®ç¨®ã®ãã¼ã«ãçµã¿åãããããã³ãã¨ã³ãéçºãå½ããåã¨ãã¦åãå
¥ããã¦ããããã®åå¹´éã»ã©ã¯ãå®éã«ã©ã®çµã¿åããããã¹ãããã¨ããè°è«ãè¡ããã¦ãã¾ãããããã¦ããããã£ãè°è«ãããããè½ã¡çããè¦ããããããåãæ¸ãããããªçµã¿åããã«å¸°çµãã¤ã¤ããã¾ãã
ãã®ãããã¾ãããããã³ãã¯å¤åãæ¿ãéãããã¨ããä¿å®ã大å¤ããããªã©ã¨ãã£ããããªã1å¹´ãããåã«è¨ããã¦ããæè¦ãããã¾ã ã«å¤ããå ããã¨ã¯ãã¾ã£ããäºæ³ãã¦ããªãã£ãã¨ããã®ãæ£ç´ãªæè¦ã§ããã²ã¨æã¾ãã§ããã°ããé¢ç½ãããã¨ããããã£ã¨ä¾¿å©ãªãã¼ã«ãããããã¨ãã£ããã¸ãã£ããªæè¦ãä¸å¿ã ã£ãæ°ããã¾ãã
確ãã«ãããã¾ã§ã®éçºç°å¢ã¨å¤§ããç°ãªãããããã¾ã ã¾ã 対å¿ããã®ã¯é£ãããã¨ããæè¦ã¯è¯ãåããã¾ããããããã対å¿ãã¨ããã£ããã¢ãããã¯å¥ã§ãããæ®éã«ãã£ããã¢ããããã¦ããã°ããã®æµãã¯ä¸å¯éã§ãããä»å¾ãå
ã«æ»ããã¨ã¯ãªããã¨ç¢ºä¿¡ãã¦ããªã®ã¯ããããã¤ããã¨æãããã¨ã§ãããã
ããããã¯ã¦ããTwitterãFacebookã®ã³ã¡ã³ããè¦ãéãã§ã¯ãç´ äººã§ã¯ãªããç¾å¨Webã®ä»äºããã¦ãã人ã§ããããæµããæ©ãã¦ã¤ãã¦è¡ããªãããããå°ãæ§åãè¦ã¦ãããæ¹ãè¯ããããã¨ãã£ãæ¥åè¦ãªæè¦ãè¿°ã¹ã¦ããããæ¥æ¬ã®ã¨ã³ã¸ãã¢ã¯å¤§ä¸å¤«ãªã®ããª?ãã¨åã¯ä¸å®ãè¦ãã¦ãã¾ãã¾ããã
ãªããå¤åã¸ã®å¯¾å¿ãããã¾ã§é ãã®ãã
ããªããå¤åã¸ã®å¯¾å¿ãããã¾ã§é ãã®ããã¨ããçç±ãèãã¦ã¿ã¦ããããã°ã©ãã³ã°ã好ãã§ã¯ãªãè·æ¥ã¨ã³ã¸ãã¢ãå¢ãã¦ããããªã©ãæãæµ®ãã ã®ã§ãããæ ¹æ¬ã¨ãªãæ大ã®çç±ã¯ãè±èªããããã¥ã¡ã³ãããªããããã ã¨ããçµè«ã«è³ãã¾ããã
ãã®çµã¿åãããç°å¸¸ãã¨ããã®ã¯ãã£ã¦ã¿ãã¨å®éãããªãã¨ãªããReact 㨠Redux 以å¤ã¯ãã ã®ãã¼ã«ãªã®ã§ãã©ããåæ¥ããã°ä½¿ãããªããããã«ãªã
id:naoya ããããã®ããã«è¨ã£ã¦ãã¾ãããåãReactã¨Reduxã¯æ
£ããã®ã«æéãããããã®ã®ããã以å¤ã¯ãåãªãã¡ã½ãããããã¼ã«ã§ãããªãã§ãç¿å¾ããã¾ã§ãããã¦æéãããããã®ã§ã¯ãªãã¨æãã¾ãããªã®ã§ãé£ããã¨ããæè¦ã®å¤§åã¯ãããããã¾ã 試ãã¦ããªãã®ã§ã¯ãªããã¨æãã¾ãã
ã§ã¯ãå®éã«è©¦ãã¨ãã©ã®ç¨åº¦ã®æéã§ç¿å¾ã§ãããã®ãªã®ããã¡ããã©è¯ãä¾ãããã®ã§ç´¹ä»ãã¾ãããã
è±èªãã§ããã°ãããã°ã©ãã³ã°åå¿è ã§ã4ã¶æ㧠React + Redux + Electron ã§ã¢ããªãä½ããã
Urai Masatoåããè¥è
ããã¾ããå½¼ã¯TOEIC940ç¹ã®æ系大å¦çããã°ã©ãã«ããããã°ã¨ããããã°ãæ¸ãã¦ãããã¿ã¤ãã«ãããåããéããæ系大å¦ã®å¦çã§ãè±èªã¯ã§ãããã©ãããã°ã©ãã³ã°ã¯ã¾ã£ããã®ç´ 人ãã¨ããå¦çã§ããã
ãããªå½¼ã¯ãåã®å人ãçµå¶ããèªå¦å¦æ ¡ãµã¦ã¹ãã¼ã¯ã«å»å¹´ã®å¤é ã«çå¦ããTOEIC940ç¹ã¨ããç´ æ´ããã¹ã³ã¢ããã¼ã¯ãã¾ãããããã¦ãæ¥æ¬ã«å¸°å½ãã¦ãããå°±è·ã¾ã§æéãããã®ã§ããã°ã©ãã³ã°ã®åå¼·ããããã¨æã£ãã¨ããåã®å人ã«ç¸è«ããã®ããã£ããã«åã¨åºä¼ãã¾ããã
åã¯è¿å¹´ãããã°ã©ãã¯è±èªå¿
é ã¨ããããã©ãããã°ã©ãã³ã°ãè¦ãã¦ããè±èªãåå¼·ããããããè±èªãè¦ãã¦ããããã°ã©ãã³ã°ã®åå¼·ãããæ¹ãå§åçã«å¦ç¿å¹çãè¯ãã®ã§ã¯ãªãããã¨èãã¦ãã¾ããããããªã¨ããå½¼ã¨åºä¼ã£ãåã¯ãåã®èããæ¤è¨¼ã§ããè¯ãæ©ä¼ã ã¨æã£ãã®ã§ãå½¼ã«å¯¾ãã¦ã次ã®ãããªææ¡ããã¾ããã
- åã¯ç´æ¥æããã«èª²é¡ãåºã
- 課é¡ã¯è±èªã§æ¸ãããæè¡è¨äºããã¥ã¼ããªã¢ã«
- 課é¡ããã£ããå¿ ãããã°ãæ¸ã
- åã¯ããã°ãè¦ã¦ãã£ã¼ãããã¯ããã
- åå¼·ãããåéãããã°ãåã«ææ¡ããã
- ææ¡ãè¦ã¦ãåå¼·ããæ¹ãè¯ãå 容ã§ããã°ãæé©ãªè±èªã®è¨äºãç´¹ä»ãã
å½¼ã¯ãã®ææ¡ã«å¯¾ãã¦ããã²ããã£ã¦ã¿ãããã¨çããã®ã§ãå»å¹´ã®11æé ãããè±èªã§ããã°ã©ãã³ã°ãå¦ã¶ã¨ãã©ããããã®æ©ãã§å¦ç¿ã§ããã®ãï¼ãã¨ããå®é¨ãã¹ã¿ã¼ããã¾ããã
ãã®çµæã¯ã
- æ系大å¦çãJavaScriptãå§ãã¦ç´ä¸ã¶æçµã£ã¦æããã¨
- æ系大å¦çãããã°ã©ãã³ã°ãå§ãã¦ï¼ã¶æçµã£ã¦æããã¨
- æ系大å¦çãããã°ã©ãã³ã°ãå§ãã¦3ã¶æçµã£ã¦æããã¨
- æ系大å¦çãããã°ã©ãã³ã°ãå§ãã¦åã¶æçµã£ã¦æããã¨
ã¨ããè¨äºã«ã¾ã¨ãããã¦ãã¾ããã主ã«JavaScriptãä¸å¿ã«å¦ç¿ããçµæã
- 1ã¶æç®ã§Gitã®ä½¿ãæ¹ãJSã®åºæ¬ææ³ãES6ã®ææ³ãªã©
- 2ã¶æç®ã§GitHubã®ä½¿ãæ¹ãMarkdownãReactãCoffeeScriptãAtomããã±ã¼ã¸ã®ä½æãã¥ã¼ããªã¢ã«ãgulpãbrowserifyãBabelãªã©
- 3ã¶æç®ã§JSON APIãTHE TWELVE-FACTOR APPãèªä½ã®Atomããã±ã¼ã¸ã®å ¬éãèªä½ã®Nodeã¢ã¸ã¥ã¼ã«ã®å ¬éãªã©
- 4ã¶æç®ã§OAuthèªè¨¼ãReduxãElectronã«ãããã¹ã¯ãããã¢ããªã±ã¼ã·ã§ã³éçºãªã©
ã¨ãã£ã風ã«ãæ¬å½ã«ããã°ã©ãã³ã°ãã¾ã£ããæ¸ãããã¨ã®ãªãç¶æ
ããã4ã¶æã§Electronã使ã£ã¦ã¯ã¦ãªããã°ã«è¨äºãæ稿ã§ãããã¹ã¯ãããã¢ããªã±ã¼ã·ã§ã³ãèªä½ããã¾ã§æé·ãã¾ããã
åãè¨ãã®ããªãã§ãããããã¯ç°å¸¸ã«æ©ãã¨è¨ã£ã¦ãè¯ãã®ã§ã¯ãªãã§ããããï¼åã¯æ£ç´ãå±æ©æãè¦ãããããã§ãã
å½¼ã«è±èªè¨äºã®èª²é¡ãä¸ãã¦ã¿ã¦åãã£ããã¨ã¯ã
- ã¨ã«ããè¨äºãèªãã§ç解ããã®ãç°å¸¸ã«æ©ã
- å¦ç¿ãããåéãèªåããçå ãã¦è¦ä»ãåºããããããããçå¤ãã§ã¯ãªã
ã¨ãããã¨ã§ããè¨äºãèªãæ©ãã¯ãæ¬å½ã«ã³ã³ããããæ©ããä¾ãã°ããã©ã¦ã¶ã®ã¬ã³ããªã³ã°ã®ä»çµã¿ãå¦ãã§ããããã¨æã£ã¦Constructing the Object Modelã¨ããè¨äºãä¸ããã¨ãåæ¥ãããããèªãã§ç解ããã¨ããæãã§ãããããªããã§ãäºæ³ã大ããä¸ã¾ããã¹ãã¼ãã§å¦ç¿èª²é¡ãæ¶åããããããæ°ãã課é¡ãæ¢ãã®ãã¨ã¦ã大å¤ã§ããã
ä»ã«ããUNIX/Linuxã³ãã³ããè±èªã§å¦ç¿ããã¨ãpwd ã¯ãPrint Working Directoryãã®ç¥ãªã®ã§ããã®ã¾ã¾è±èªã®æå³ããã³ãã³ãåãè¦ãããã¨ãã§ãããªã©ãæ§ã ãªã¡ãªãããããã¾ããã
åç¾æ§ããªããããç´ç²ãªæ¯è¼ã¯é£ããã®ã§ãããåãããã¾ã§æããçµé¨ããã®å¤æã«ããã¨ããã¯ããè±èªãå ã«å¦ãã§ããããã°ã©ãã³ã°ãåå¼·ããæ¹ããå§åçã«ããã°ã©ãã³ã°ã®å¦ç¿å¹çãé«ããã¨ããçµè«ã«è³ãã¾ããã
ãã®çµé¨ã¯èªåã®ä¸ã§æ°ãã確信ã¨ç´ æ´ãã価å¤è¦³ãçã¿åºãã¾ãããããã§ãUraiåã®ãããªè¥è ããã£ã¨è²ããã¨æããµã¦ã¹ãã¼ã¯ã«ç¸è«ãã¦ã¿ãã¨ãã快諾ãå¾ãã®ã§ãä»å¹´åº¦ããã¾ã£ããæ°ããã¨ã³ã¸ãã¢è²æããã¸ã§ã¯ãããã£ã¦ã¿ããã¨ã«ãã¾ããã
è±èªã§Webã¨ã³ã¸ãã¢ãªã³ã°ãå¦ã¶ããµã¦ã¹ãã¼ã¯ãå éWebã¨ã³ã¸ãã¢ãã©ã³ã
ä¸ã®ä¸ã«ã¯ITãã¼ããã£ã³ãã¨å¼ã°ããçæéã§ITã¹ãã«ãå¦ã¶ãµã¼ãã¹ããITçå¦ãã©ã³ãªãè±èªã¨ããã°ã©ãã³ã°ãåæã«å¦ã¶ãµã¼ãã¹ãããã¾ãã
ããããä»åä¼ç»ãããå éWebã¨ã³ã¸ãã¢ãã©ã³ãã¯ããããã¨ã¯éããã¾ãã¯ã¹ã©ã¹ã©ã¨è±æãèªããã¾ã§æ¬æ°ã§è±èªãåå¼·ãã¦ãããããã®å¾ã§ããã°ã©ãã³ã°ã®åå¼·ãéå§ãã¾ããããã¯ãå ã«è¿°ã¹ãéããããã°ã©ãã³ã°å¦ç¿ã«ã¯ãè±èªãèªãããã¨ããå§åçãªã¢ããã³ãã¼ã¸ãçãããã§ãã
ãã®ã¢ããã³ãã¼ã¸ãã¤ã¡ã¼ã¸å³ã«ãã¦ã¿ãã¨ä¸è¨ã®ããã«ãªãã¾ããAã®å ´åã¯åå¹´éã®å¦ç¿ã¢ããã³ãã¼ã¸ãããã¾ãããè±èªãã¹ã©ã¹ã©èªããBã§ã¯ãæ å ±éã«å§åçãªå·®ããããããå人差ã¯ããã¾ãããAã®3åã®ã¹ãã¼ãã§æé·ããã¨ãã¾ãã
ããããã¨ãåå¹´é ãã«ãé¢ããããBã¯ããã°ã©ãã³ã°ã®å¦ç¿ãéå§ãã¦3ã¶æå¾ã«Aãæãå»ã£ã¦ãã¾ãã¾ããããã¦ãæ°ããæè¡ãå¢ãç¶ããITæ¥çã§ã¯ãè±èªã«ããæ å ±ã®æ ¼å·®ã縮ã¾ããã¨ã¯ãªããéã«éãä¸æ¹ã§ããããã2å¹´å¾ã3å¹´å¾ã«ã¯ãã¨ã¦ãæ¯è¼ãã§ããªãã»ã©ã®å·®ãçã¾ãããã¨ã«ãªãã¾ãã
ãã®ãã©ã³è©³ç´°ã¯ã1å¹´ã§æå 端Webã¨ã³ã¸ãã¢ã«ãªããããµã¦ã¹ãã¼ã¯å éWebã¨ã³ã¸ãã¢ãã©ã³ãå ç10åã5ææ«ã¾ã§ããã確èªãã ããã
æå¾ã«ã4æ9æ¥ã«æè¡è©è«ç¤¾ãããåãå¯ç¨¿ããä»äºã§ããå½¹ç«ã¤ Vim&Emacsã¨ãã¹ãã¼ãæ´»ç¨è¡ã¨ããæ¬ãçºå£²ããã¾ããã®ã§ãèå³ã®ããæ¹ã¯ãã²ã©ããã
ä»äºã§ããå½¹ç«ã¤ Vim&Emacsã¨ãã¹ãã¼ãæ´»ç¨è¡ (SoftwareDesignå¥å)
- ä½è : Software Designç·¨éé¨
- åºç社/ã¡ã¼ã«ã¼: æè¡è©è«ç¤¾
- çºå£²æ¥: 2016/04/09
- ã¡ãã£ã¢: 大åæ¬
- ãã®ååãå«ãããã° (2件) ãè¦ã