泚ç®ãéããçµµ
ç§ã®æåã®ã²ãŒã ãã€ã³ã¿ãŒããããçç Žããªãã£ããšããäºå®ã®ããã«ã·ã§ãã¯ã®åŸèœã¡çãããç§ã¯å¥ã®ãã®ãäœãããšã«ããŸããã 2çªç®ã®ã²ãŒã ã®éçºãå§ãŸã£ãæåã®èããé ã«æµ®ãã³ãèããããã«ã²ãŒã ã®åºç€ã®åºç€ã«ãªããŸããã
ç§ã¯ãã§ã«ã²ãŒã ã®äœæã«å°ãçµéšããã£ãã®ã§ãååã®ããã«ããŒããŒãã§ã¯ãªãéçãšçŽã§æŠè£ ããã²ãŒã ã®ãçºæãã«çæããŸããã A4ã®ããŸããŸãªã·ãŒãã«ãã²ãŒã ã¡ã«ãã¯ã¹ãèšå®ãã€ã³ã¿ãŒãã§ã€ã¹ãã«ãŒã«ãèå³æ·±ãèããåäŸæ代ã®èšæ¶ã«æ®ãã²ãŒã ãªã©ãããŸããŸãªæ¹åã«èããæžãçããŸããã åæã«ãã€ã³ã¹ãã¬ãŒã·ã§ã³ãæ±ããŠGoogle PlayããŒã±ããããéããŸããã ãã®çµæãæ°æ¥åŸãã²ãŒã ã¯ããºã«ãã€ãŸãããºã«ã«ãªãããšã決å®ãããŸããã ãã®éãç§ã®è³ãšæã¯ããã°ã©ãã³ã°ã«é£œã飜ãããŸããããã®çµæãå°ãªããšãã²ãŒã ã®ãããã¿ã€ããäœãããã£ãã®ã§ãã ããã«ãããããºã«ã®ã¢ã€ãã¢ãããéäžçã«åãçµãããã«ãªãããã®çµæã次ã®ã«ãŒã«ãæã€ãªãã·ã§ã³ãå®çšçãªãã®ãšããŠæ¡çšãããŸããã ã¿ã€ã«ã¯äº€æã§ããŸãã ã²ãŒã ã®ç®æšïŒåãè²ã®ç·ãç¹å®ã®ãã¿ãŒã³ã§éããããå¯äžã®æ¹æ³ã§ããºã«ãçµã¿ç«ãŠãããšã
ãã³ãïŒ1ïŒ é ã«æµ®ãã¶ãã¹ãŠã®ãã®ïŒçŽãæ¥èšãé»è©±ïŒGoogle Keepãäžæçãªã¹ãã¬ãŒãžãšããŠå¥œãã§ãïŒãã©ãã§ãïŒãæžãçããŠãäœåºŠããã£ã«ã¿ãªã³ã°ããŠãæã䟡å€ã®ãããã®ãéžæããŸãã
è©Šäœæ©
ãããã¿ã€ãã¯ã2ã3æ©ãå€æ°ã®html + jsïŒäœ¿çšæžã¿ãã£ã³ãã¹ïŒã§äœæãããŸããã ãªããªã 以åã¯ãã£ã³ãã¹ã«å¯ŸããŠäœãçå£ã«åãçµãã§ããŸããã§ãããããã®ãã¯ãããžãŒãããã«è©³ããç¥ãããã«ãµã€ã¯ã«ããããšã決å®ãããŸããã
å³ 1.ãããã¿ã€ãã®æåã®ããŒãžã§ã³ã
ããèŠããŸãã ãã®ãããç§ã®ã¢ãããŒã·ã§ã³ã¯ããã«æ¶ããŠããŸããæ°ã¶æéã²ãŒã ã¯äžæ¢ãããŸããã æŸæ£ãããããå®å šã§ã¯ãªãïŒç§ã¯é ã«æµ®ããã ãã¹ãŠã®ã²ãŒã ã®ã¢ã€ãã¢ãæžãçããæã ããããèªã¿çŽããŸããã
åæã«ãäœãããã«ç§ã®äžäœçºãæ£åœåããããã«ãç§ã¯ã²ãŒã ã«è¿ãããŸããŸãªèšäºãåžžã«èªã¿å§ããŸããã HabrïŒã²ãŒã æ¥çã®èšäºãšãã€ãžã§ã¹ãã®èšäºã®éžæïŒãšãã²ãŒã éçºã®äžçããã®èšäºã®ãã人æ°ã®ãããµã€ãã¯ãæ€çŽ¢ã«åœ¹ç«ã¡ãŸããã
ãã³ã2ïŒ é©åã«èšèšãããçŽã®ãããã¿ã€ãã䜿çšããã«ããã°ã©ãã³ã°ã«ãã°ãã移è¡ãããšãé·ãéäžå®ã«ãªããŸãã ãããçºçãããããžã§ã¯ãã«æ»ãããã«åŒ·å¶ã§ããªãå Žåã¯ãéæ¥çã«äœæ¥ãç¶ããŸããæãç°¡åãªãªãã·ã§ã³ã¯ãã²ãŒã éçºã«é¢ããèšäºãèªãã§ãèããèšé²ããããšã§ãã
æç»-ã¢ã¯ãã£ããã£ã®åºæ¬çãªå€å
ã²ãŒã ãäœæããåéã§æ°ã¶æéè¡åããªãã£ãåŸãç§ã¯åžžå€è·ãèŸããŸããã éå Žã®æ±ºå®ã¯é·ãé延æãããã²ãŒã ã®äœæãšã¯äœã®é¢ä¿ããããŸããã§ããããèªç±æéã®å°æ¥ã®ãããã§ããããžã§ã¯ãã«æ»ãããšãã§ããŸããã åã³ã²ãŒã ã«æ»ããšããã®ããããªå€èŠ³ãç§ã匷ãããæ°ã«ãããããšã«æ°ä»ããŸããã ããã€ãã®ã°ã©ãã£ãã¯ãšãã£ã¿ãŒã§æŠè£ ãããã®åé¡ã«å¯ŸåŠããŸãããå°ãçŸãããã¶ã€ã³ãæããã®ã§ã1ç³ã§æ°çŸœã®é³¥ã殺ããŸããã
1.è·æ¥ã®å€æŽã
2.èªåèªèº«ã«å¯Ÿããèªä¿¡ãé«ããŸããïŒç§èªèº«ãã²ãŒã ã®ãã¶ã€ã³ãæããŸããïŒã
3.ç§ã¯ãç·ãéè·¯ã§ãããã¿ã€ã«-åå°ã®ããããã§ãããšããèããæãã€ããŸããã ããã§ãã²ãŒã ã®æ¬è³ªãçŸãå§ããŸããã
4.ã¿ã€ã«ã®äžå¿ãäœããã®ç»åã§èŠãããŠããå¿ èŠãããããšãããããŸããã éè·¯ã®ããŸããŸãªãªãã·ã§ã³ã¯ãäžå€®ã«dockããããã³ã°ãããŠããŸãã ããã§ãã¿ã€ã«ã®äžå€®ã«å®¶ã«çŸããŸããã
ãã³ãïŒ3ïŒ ããã°ã©ãã³ã°ãäžæããè·æ¥ãå€ããïŒçŽã®äžã§ãã¶ã€ã³ãããåçåããã¶ã€ã³ãã²ãŒã ã®ä»çµã¿ãèªæžãèããïŒ åæ段éã§ã¢ã¯ãã£ããã£ã®ã¿ã€ããå€æŽãããšããããžã§ã¯ãã®éå§æã«å¯ŸåŠããå¿ èŠãããåé¡ã埮åŠãªç¹ãæããã«ã§ããŸãã
å³ 2.ããã°ã©ããŒãã²ãŒã ã®èšèšã«é¢äžããŠããå Žåã
èŠãç®ã¯ããã»ã©è¯ããããŸãããããããžã§ã¯ãã®äœæ¥ãç¶ããã®ã«åœ¹ç«ã€ã®ã§ããã°ãããã¯ãªãã§ããã
ããã«ããããã¿ã€ãã«ã¯ã²ãŒã ã®åºæ¬æ©èœãè¿œå ãããŸãããã¬ãã«ã®ãªã¹ããå«ãç»é¢ãšãã¬ãã«ãçŽæ¥æž¡ãç»é¢ãäœæãããŸããã ããããç°ãªãã¬ãã«ãééããã«ã¯ããŸãããããäœæããå¿ èŠããããŸãã ãããŠãç§ã¯åãã§æ°ãã圹å²ã«ææŠããŸãã-ã¬ãã«ã®äœæãå§ããŸããã
ã¬ãã«ã®ãµã€ãºã倧ãããªããç·šéãå°é£ã«ãªããŸã§ãåã¬ãã«ã¯json圢åŒã§æ éã«ä¿åãããŸããã ã¬ãã«ã³ã³ã¹ãã©ã¯ã¿ãŒãäœæãããšããã䞊ã¯ãããã¿ã¹ã¯ãåŠçããå¿ èŠããããŸããã jsonã¬ãã«ãã³ããŒããŠã²ãŒã ã³ãŒãã«çŽæ¥è²Œãä»ããæãåçŽãªãšãã£ã¿ãŒã§ããïŒbrrrããã®ææã«ã€ããŠãã¹ãŠã®èªè ã«è¬çœªããŸãïŒã ããããã²ãŒã ã®ã³ãŒããšã¢ãŒããã¯ãã£ïŒç¹ã«ã³ã³ã¹ãã©ã¯ã¿ãŒã®ã¢ãŒããã¯ãã£ïŒãå®å šã§ã¯ãªããšããããããèããããäœåºŠãäœåºŠãã²ãŒã ãããçŽãããšã«ãªããŸããã
ãã³ã4ïŒ ã³ãŒããèªã¿çŽããŸãã åçŽåãæ¹åãå éåã§ãããã®ãæ¢ããŸãã ããã«ãããé¢å¿ãæžãã ãã§ãªããã³ãŒããã¯ãŒã«ã«ãªããŸãã
éçº
å€ãæ¥ãã®ã§ãä»äºãèŠã€ããããšãã匷ãåžæããããŸããã 5幎åã«æ±äººãµã€ãã«ç§»ããå±¥æŽæžãããŸããŸãªäŒæ¥ã«éãå§ããŸããããã®ã¬ãã¹ã³ã®éçšã§ã5幎éã§æ¥çã®å€ãã®ããšãå€ãã£ãããšã«æ°ä»ãããã®éãã£ãšhtmlãšjQueryã®å¿«é©ãªäžçã«äœãã§ããŸããã æ±äººã®èŠä»¶ãèªã¿ãæ¡çšæ åœè ãšè©±ãããåŸãç§ã¯èªåã®èœåã«èªä¿¡ãæãŠãªãæ°è£œåãç¥ããªãããšã«æ°ä»ããŸããã
ç§ã¯äœããããªããã°ãªããªãã£ãããã²ãŒã ãå¿ããã«ç¬åŠãå§ããã 空åžã®èŠä»¶ã«æ²¿ã£ãŠãç§ã¯èªåã®æèŠã§ã¯æºããã¹ãã ã£ãæè¡ãããŒã«ãããã³ä»ã®ãã¬ãŒã ã¯ãŒã¯ã®ãªã¹ãããŸãšããããããç 究ãå§ããŸããã ãŸãããããžã§ã¯ããã£ã¬ã¯ããªã®gitãªããžããªãåæåããŸããã ä»äºã®äžæ¥ã®åŸãç§ã¯åœŒãªãã§åããŠããæ¹æ³ãæ³åã§ããŸããã§ããã ãããã圌ã¯ãã²ãŒã ã®ãã¹ãŠã®ããžãã¯ãå«ãã倧ãããªããããã¹ãŒããŒãªããžã§ã¯ããRequireJSã¢ãžã¥ãŒã«ã«åé¢ãå§ããŸããã ããã«ãããã²ãŒã ãšã³ã³ã¹ãã©ã¯ã¿ãŒã§ã®ã³ãŒãã®éè€ããªããããšãã§ããŸããïŒé·ãã©ã€ãDRY ïŒïŒ ãªã¹ããã次第ã«å€ãã®ã¢ã€ãã ïŒã¯ããŒãžã£ãPromiseãWeb Workersãgulpãªã©ïŒãåé€ããã³ãŒããèŠãããšããŸããŸã楜ãããªããŸããã
ãã³ãïŒ5ïŒ é²åïŒ ãããè¡ããªãå Žåã競åä»ç€Ÿããããè¡ããåãç«ãŠå°ã«è¡ããŸãã
å 延ã°ã
ããæç¹ã§ãå¥ã®äžå¹žãç§ãåŸ ã£ãŠããŸãããç§ã¯äžåçãªå 延ã°ããããåŸåãããã®ã§ã次第ã«æéã浪費ãå§ããŸããã ç§ã¯äžç·ã«ãªã£ãŠãèªåèªèº«ãåãããããã«äœããã®æ¹æ³ãè©ŠããŠã¿ãããšã«ããŸããã ãããŠãç§ã¯ãã¢ããŒãã®æè¡è ã®ç®ã«çãŸããŸããã ããã¯æ¬¡ã®ããã«æ©èœããŸãã25åéã®4ã€ã®äœæ¥ã¢ãããŒããš5åéã®äŒæ©ã®åŸã15åéã®äŒæ©ãåããŸãã é»è©±ã«ã¢ããªã±ãŒã·ã§ã³ãã€ã³ã¹ããŒã«ããã®ã§ãããæ°ã«äœã®åé¡ããªãäžæ¥äžåããŠããããšã«æ°ã¥ããŸããã§ããã ç¿æ¥ãç§ã¯ãã®ãã¯ããã¯ãå®æãããŸãããç®ãäŒããããã«ãã³ã³ãã¥ãŒã¿ãŒã®å€ã§äŒæ©ããšãã¹ãã ãšããããšã«åæããŸããã å¥è·¡ãèµ·ãããŸãããç¿æ¥ããããæè¡ã䜿ã£ãŠãäžå¹Žã§ãã£ãŠããªãã£ãã®ãšåãããã家ã§ä¿®ç/ä¿®ç/最æ»/å解ããŸããïŒäž»èŠ³çæèŠïŒã åœç¶ãªãããäŒæ©äžã®ããæç¹ã§äœãããããšã¯ãããŸããã§ãããå¥ã®ããªãã¯ãæãã€ããŸãããç§ã¯æŒãäžãããããã¿ããã¹ã³ãã§éåããå§ããŸããïŒã·ãã¥ã¬ãŒã¿ãŒãªãã§èªå® ã§è¡ãããšãã§ããéåïŒã
ãã³ãçªå·6 ïŒ å 延ã°ããæ°æŽãããæ lazã«èŠããã§ããå Žåã¯ãããŸããŸãªæ¹æ³ã§ããã«å¯ŸåŠããããšããŸãã æªãç¿æ £ã«å¯Ÿããåå©ããã®æºè¶³ã¯ãéåžžã«æ¥œããææ ãäžããŸãããã¢ãããŒã·ã§ã³ãšæ³ååã®åé¡ã¯æ¶ããŸãã
倩ããã®éäž
ç§ã®å ãªãå®ç§äž»çŸ©è ã¯ãç§ã¯ã²ãŒã ãäžäººã§äœããªããã°ãªããªããšåžžã«èšããŸãã 圌ã®è©±ãèãããããã®ã²ãŒã ãå§ããããšã¯ãªãã£ãã ããã 7æãŸã§ã«ãç§ãæããã°ã©ãã£ãã¯ã¯ç§ãåºæ¿ããªããªããã¢ãŒãã£ã¹ããæ¢ãããã«æçããŸããã æåã«ãç§ã奜ããªç»åã®äŸãèŠã€ããŠãããTKãèªåã®èšèã§ãŸãšããŠãã€ã©ã¹ãã¬ãŒã¿ãŒãæ€çŽ¢ãã次ã®ãµãŒã¯ã«ã調ã¹ãŸããã
1.ããã©ãŒã 圌ã¯ã²ãŒã ããã人ãçµµãæã人ã«æçŽãæžããŸããã çµè«ïŒç¡é§ã«ã
2.ã¢ãŒãã£ã¹ã/ã€ã©ã¹ãã¬ãŒã¿ãŒã®Vkontakteã³ãã¥ããã£ã çµæïŒ1ãæã®äœæ¥ã®åŸã«å§¿ãæ¶ããã¢ãŒãã£ã¹ããèŠã€ãããŸããããæªå®æã®ã¹ã±ãããæ®ã£ãŠããŸããã çµè«ïŒç¡é§ã«ã
3.ã¢ãŒãã£ã¹ãã®äœåãèŠãŠé£çµ¡ããããšãã§ããå°éãµã€ãïŒå€ãã®é©åãªåè£ãèŠã€ãããµã€ãã®1ã€ã§ãTKãéä¿¡ãã2ã€ãéžæãïŒããã«åããµã€ãã§å¥ã®ãµã€ããèŠã€ããŸããïŒã1ãæåŸã«äžç·ã«äœæ¥ããããšã«åæããŸããã€ã³ã¿ãŒãã§ã€ã¹ãš2ã€ã®äžçïŒ2ã€ã®ã¹ã¿ã€ã«ã®ç»é¢èšèšã¬ãã«ãšã²ãŒã ç»é¢ïŒã®æºåãã§ããŠããŸããã
å³ 3.ã¢ãŒãã£ã¹ãã«æ³šæãããã¶ã€ã³ã UPDïŒããã©ã«ãã®ãã©ã³ãã䜿çšãããŸãã
ãã³ãçªå·7 ïŒ ããªããããã®ã€ã©ã¹ãã¬ãŒã¿ãŒã§ãããšèããŠããªãå Žåãã¹ã±ãããäœæããããã®ãããã¿ã€ããäœæããçŽåŸã«ïŒãéã®ãã/èå³ã®ããã«ïŒã¢ãŒãã£ã¹ããæ¢ããŠãã ããã ããã¯å€§ããªé¢å¿äºã§ãã ã²ãŒã ã®ããã®ãã¶ã€ã³ã®åºçŸä»¥æ¥ãç§ã¯åæ©ãšããã©ãŒãã³ã¹ã«åé¡ããããŸããã§ããã
èå³æ·±ãäºå®
ãã©ã³ã
ã²ãŒã ã®ãã©ã³ãã¯ãã²ãŒã ã®çºå£²ã®5æ¥åã«èŠã€ãããŸããããã®åã«ãã²ãŒã ã¯Tahomaã䜿çšããŠããŸããã æåã¯ã¢ãŒãã£ã¹ãã®ãã©ã³ããéžæããã¿ã¹ã¯ãèšå®ããããšèããŠããŸããããHabrã®ãã©ã³ãã«é¢ããèšäºãèŠãŠãç¡æãã©ã³ãã®ãµã€ããããã€ãèæ ®ããŠãèªåã§ãã©ã³ããéžæãå§ããŸããã 2æ¥ããããããããã®çŽ æµãªãã©ã³ãã貯éç®±ã«æã¡èŸŒã¿ããã®ãã¡ã®1ã€ããŠãŒã¶ãŒã®ç®ã楜ããŸããŠããŸãã
å³ 4.éžæãããã©ã³ãã䜿çšããIce Worldã®ã²ãŒã ã®ç»é¢ã
UPDïŒ
å³ 5.éžæãããã©ã³ãã䜿çšããå€ä»£ããŒãã®ã¬ãã«ã®ç»é¢ã
ãã¥ãŒãžãã¯
ã»ãŒãã¹ãŠã®ã¿ã¹ã¯ã®ã¢ãŒãã£ã¹ããèŠã€ããããšãã§ãã1ã€ã®ãµã€ãã§ãå€ãã®å¥œæçãªã¬ãã¥ãŒãæã¡ãããã¯ã°ã©ãŠã³ããã¥ãŒãžãã¯ãšåœŒããããã€ãã®ãšãã§ã¯ãã泚æãã人ãèŠã€ããŸããã 2æ¥åŸãç§ã¯å¿ èŠãªãã®ããã¹ãŠæã«å ¥ããããã©ãŒããŒã®ä»äºã®ä»£éãæ¯æããé³æ¥œãäœããã®åœ¢ã§æŒå¥ããå¿ èŠãããããšã«æ°ä»ããŸããã ãã®åéã§ã®ããããªçµéšã«ãããããããç§ã¯ãµã€ã¯ãªã³ã°ãæåŠããæ¢è£œã®ãœãªã¥ãŒã·ã§ã³ãæ¢ãå§ããŸããã 2ã€ã®ãªãã·ã§ã³ïŒSoundManager2ãšIon.SoundïŒãæ¯èŒããæãæ°ã«å ¥ã£ããã®ïŒIon.SoundïŒãéžæããŸããã ãã¹ããšéžæã«ã¯ããã«2æ¥ããããŸããã
ã¬ãã«ã«ã¯1ã€ã®ãœãªã¥ãŒã·ã§ã³ãããããŸããã
åè¿°ããããã«ãã²ãŒã ã®ç®æšã¯ãããºã«ããŠããŒã¯ãªæ¹æ³ã§çµã¿ç«ãŠãããšããèšèããå§ãŸããŸãã ãã®å®åŒåã¯ãã²ãŒã ãäœæããéçšã§ç§ãçŽé¢ããªããã°ãªããªãã£ããã¹ãŠã®äžã§æãé åçãªã¿ã¹ã¯ãé ããŸããã åæã«ãéåžžã«é·ãæéãããããŸãããã¬ãã«ã絶ããåéããå¯èœæ§ã®ããçµã¿åããã®æ°ããã§ãã¯ããããã®ã¢ã«ãŽãªãºã ã磚ããšãäŒæ¯ãåããŸããã§ããã
åé¡ã¹ããŒãã¡ã³ãïŒNåã®ã¿ã€ã«ãé 眮ãããNåã®ã»ã«ã®ãã£ãŒã«ãããããŸãã åã¿ã€ã«ã«ã¯ãçš®é¡ãšæ¹åã®ç°ãªãéè·¯ããããŸãã åéè·¯ãåãã¿ã€ãã®é£æ¥ããéè·¯ã«æ¥ç¶ããããã«ã¿ã€ã«ãé 眮ãããŠããå Žåããã£ãŒã«ãã¯çµã¿ç«ãŠãããŠãããšèŠãªãããŸãã
ãã£ãŒã«ãã¯ãããã€ãã®çç±ã§äžæã«åéããå¿ èŠããããŸãã
1.ãã³ããæ£ããæ©èœããããšã
2.åéãããã¬ãã«ãã©ã®ããã«èŠãããã«ã€ããŠã®èŠæ ãçŽäºã¯ãªãã£ãããšã
ã³ã³ã¹ãã©ã¯ã¿ãªãã§ã¬ãã«ãäœæãå§ããŠãããã€ãã®æ¹æ³ã§ã¬ãã«ãçµã¿ç«ãŠãããšãã§ããããã€ãã®ãã€ã³ããèŠéããŸããã ãããã£ãŠãå°ãïŒæ®å¿µãªããå°ãïŒèããŠãã¬ãã«ã®èªåã¢ã»ã³ãã©ãŒã®æåã®ããŒãžã§ã³ãå±±ç©ã¿ããŸãããããã¯ãã¿ã€ã«ã®äœçœ®ïŒåé 眮ïŒã®å¯èœãªãã¹ãŠã®çµã¿åãããååž°çã«ãœãŒãããæåŸã«ã¬ãã«ãåéãããé åã®æ°ãäžããŸããã æåã¯ãã¬ãã«å ã®ã¿ã€ã«ã®æ°ã9ã12ã®ãšãããã®ã¢ã«ãŽãªãºã ã¯1ç§æªæºã§è§£æ±ºããŸãããã16ã¿ã€ã«ã®ã¬ãã«ã«éãããšãéåžžã«é·ããªãŒãã¿ã€ã ã«ãªããŸããã ããããã¹ãŠãjsäžã®ãã©ãŠã¶ãŒã§1ã€ã®ã¹ã¬ããã§æ©èœããããšãæãåºãããŠãã ããã å Žåã«ãã£ãŠã¯ãã¢ã«ãŽãªãºã ã®å®è¡ãäžæ©æŸçœ®ãããšããã©ãŠã¶ã¿ããé·æéãã³ã°ããŠå¿çããªããªãããšããããŸããã ãã®èšäºã§ã¹ããŒã¹ãä¹±éã«ããªãããã«ã以äžã®æé©åããªã¹ããšããŠèª¬æããŸãã
1.æ€èšŒæžã¿ã®é åã®é åãè¿œå ãïŒå€æãããjsonæååãä¿åïŒãåããªãã·ã§ã³ãå確èªããŸããã§ããã
2.ååž°ããµã€ã¯ã«ã§æžãçŽããŸãã-å®è¡æéã¯ããã»ã©å€ãããŸããã
3. Nãåãé€ãæ¹æ³ãèãå§ããŸããã ãã¹ãŠã®é åã§ã ç§ã¯é ã®äžã§æ°ç¬ã解ãããã®ã¢ã«ãŽãªãºã ãèããæ¹æ³ãæãåºããŸããã 圌ã¯çŽã®äžã«ã¢ã«ãŽãªãºã ãæãå§ãããšåæã«ã ã¢ã«ãŽãªãºã Xãšããèšäºã«åºããããŸããããæšè£œããºã«ãšãã³ã¹ãªã³ã¯ã®å ±éç¹ã¯äœã§ããïŒ ã ã¢ã«ãŽãªãºã Xãå®è£ ããŸããïŒæ ¹æ¬çã«æ°ãããã®ã¯å®è£ ããŠããŸããããã®ãããã¢ã«ãŽãªãºã ã®èª¬æãèå³æ·±ãå Žåã¯ãäžèšã®èšäºã§èŠã€ããããšãã§ããŸãïŒã
4.ã¢ã«ãŽãªãºã ãæ©èœããããã«å¿ èŠãªãã¹ãŠã®å¯èœãªç¹æ§ã®ããã£ãã·ã¥ããäœæããŸããã
5.ã¢ã«ãŽãªãºã Xãååž°ã§ã¯ãªãã«ãŒãã§æžãçŽããŸãã-å®è¡æéã¯ããã»ã©å€ãããŸããã
6.æ€èšŒæžã¿ã®é åã®é åãããªãŒã«çœ®ãæããŸãããiçªç®ã®ãã¹ãŠã®ã¬ãã«ã®ãã¹ãã¯ãiçªç®ã®äœçœ®ã«ãããã¹ãŠã®ãã§ãã¯ãããã¿ã€ã«ã«å¯Ÿå¿ããŸãã 䞻芳çã«ã¯ãããã«ããã¢ã«ãŽãªãºã ã®å®è¡æéãå€§å¹ ã«ççž®ãããŸããã
7. Web Workersã䜿çšããŠè€æ°ã®ã¹ã¬ããã§è§£æ±ºããããšããŸãã-å®è¡æéãæ°ç§å¢å ããŸããã
ãã¹ãŠã®æé©åã®çµæã25ã¿ã€ã«ã§æ倧1ååã®ã¬ãã«åéæéãéæã§ããŸããã 次ã®èãïŒã¢ã«ãŽãªãºã ãããã«ãã¹ã¬ããã§åäœã§ããããã°ã©ãã³ã°èšèªã§æžãçŽãããšã
gulp.watch
掻çºãªéçºã®æ®µéã§ãç§ã¯ã³ã³ãœãŒã«ã§ããã£ãšãŠã©ãããéå§ããèªåã®ããã«ç¥ç§çãªåäœã«ééããŸããã CSSã®ç·šéãéå§ãããŸã§ããã¹ãŠãæ£åžžã«æ©èœããŸããã ç£èŠãéå§ããåŸãcssãã¡ã€ã«ã2ã3åå€æŽããåŸãgulpã¯åºåãã¡ã€ã«ã®ä¿åãåæ¢ããŸããïŒæ£ãããã£ã¬ã¯ããªã«æ£ããååã§ç©ºã®ãã¡ã€ã«ãäœæããŸããïŒã åé¡ã®è§£æ±ºçã®æ€çŽ¢ã«ã¯åæ¥ããããäœã«ãã€ãªãããŸããã§ããã æ®ãã®ãã¡ã€ã«ã¯æ£ããåŠçãããŸããã 誰ããåºäŒã£ãŠã³ã¡ã³ãã§èª¬æã§ãããªããç§ã¯ããããã§ãïŒ
gulpfile.js
cssminã§è¡ãåé€ããŠååãå€æŽããŠããç¶æ³ã¯å€ãããŸããã§ããã
var cssmin = require('gulp-cssmin'), rename = require('gulp-rename'); gulp.task('css', function() { gulp.src(['css/style.css']) .pipe(cssmin()) .pipe(rename({suffix: '.min'})) .pipe(gulp.dest('build/')); }); gulp.task('watch', function() { gulp.watch('css/style.css', function() { gulp.run('css'); }); });
cssminã§è¡ãåé€ããŠååãå€æŽããŠããç¶æ³ã¯å€ãããŸããã§ããã
RequireJSãšgulp
RequireJSã®ãããã§ãããžã§ã¯ãã®ã¢ãžã¥ãŒã«æ§ãéæã§ããŸããããéå§ããåã«ã³ãŒããæé©åããå¿ èŠãããããšã«æ°ã¥ãããããgulpã䜿çšããŠRequireJSã§ãããžã§ã¯ããæé©åããããã®ããŸããŸãªãªãã·ã§ã³ããããå¿ èŠããããŸããã Requirejsã¯ã°ããŒãã«ã«ã€ã³ã¹ããŒã«ãããŠããŸãã ããã«ãgulpã§äœ¿çšããåè£ãšããŠãgulp-requirejsãgulp-requirejs-optimizeãããã³gulp-shellã®ã¢ãžã¥ãŒã«ãæ€èšãããŸããã 䜿çšäŸïŒ
gulp-requirejsïŒ
var rjs = require('gulp-requirejs'); gulp.task('optimize', function() { rjs({ name: 'script', baseUrl: '.', out: 'build/script.js' }); });
gulp-requirejs-optimizeïŒ
var requireJSOptimize = require('gulp-requirejs'); gulp.task('optimize', function() { gulp.src('script.js') .pipe(requireJSOptimize(function() { return { name: "script", baseUrl: '.' } })) .pipe(gulp.dest('./build/')); });
gulp-shellïŒ
var shell = require('gulp-shell'); gulp.task('optimize', shell.task(['r.js -o baseUrl=. preserveLicenseComments=false name=script out=build/script.js']));
ãã®çµæãgulp-shellã®ãªãã·ã§ã³ãéžæããŸããã 圌ã¯ã³ã³ãœãŒã«ã§ã¿ã¹ã¯ãå®è¡ããããã®æ£ããæéã衚瀺ããå¯äžã®äººã§ããããããã£ãŠãäŸåé¢ä¿ã§å¥ã®ã¿ã¹ã¯ã䜿çšãããšãã圌ã¯æ£ããåããŸããã 1ã€ã®ãœãŒã·ã£ã«ãããã¯ãŒã¯ã®æçµçãªjsãã¡ã€ã«ã®ã¢ã»ã³ããªæéã¯7ã8ç§ã§ãã
VK API
ååã®ã²ãŒã ã§ã¯ãã²ãŒã ãOdnoklassnikiãšFacebookã«é 眮ããããšãããšãã«ã³ãŒããå€æŽããããšã«èŠããã§ããã®ã§ãéçºã®åæ段éã®ãã®ãââããžã§ã¯ãã§ã¯ããã¹ãŠã®APIåŒã³åºããåå¥ã®ã¢ãžã¥ãŒã«ã§è¡ãå¿ èŠãããããšãããããŸããã RequireJSã䜿çšãããšããœãŒã·ã£ã«ãããã¯ãŒã¯APIã®ããŸããŸãªã¡ãœãããåŒã³åºãé¢æ°ãšã¡ãœãããå®çŸ©ããããœãŒã·ã£ã«ãããã¯ãŒã¯çšã®åå¥ã®jsãã¡ã€ã«ãäœæã§ããŸããã éå§ãã¡ã€ã«ã®äžéšïŒ
requirejs.config({ baseUrl: '.', paths: { 'vk_api': '//vk.com/js/api/xd_connection.js?2' } }); requirejs([ 'vk_api', 'script' ], function(vk_api, script) { script.environment = 'vk'; /** * Tests social network's API * @return Promise */ script.testSocNetwork = function(callback) { return new Promise(function(resolve, reject) { VK.init(function() { if(typeof callback ==='function') { callback(); } resolve(); }, function() { reject(); }); }); } /** * Shows invite friend dialog */ script.inviteFriends = function() { VK.External.showInviteBox(); } /** * Gets array with IDs of friends and call callback with this array by argument * @return Promise */ script.getFriendsIds = function(callback) { return new Promise(function(resolve, reject) { VK.api('friends.getAppUsers', function(data){ if(!('response' in data)) { reject(); return; } var response = []; for(var f in data.response) { response.push(data.response[f]); } if(typeof callback === 'function') { callback(response); } resolve(); }); }); } /** * Shows buy ingame money dialog */ script.buyMoney = function(type) { VK.callMethod('showOrderBox', {type: 'item', item: type}); } /** * Shows request dialog */ script.makeExorcismWithPerson = function(uid, money) { VK.callMethod('showRequestBox', uid, script.i18n('makeExorcismWithPerson', {'MONEY_COUNT': money, 'MONEY_CASES': script.i18n('numeralForms')(money, script.i18n('casesMoney'))})); } /** * Adds callback for event onOrderSuccess */ script.bindOnOrderSuccess = function(callback) { VK.addCallback('onOrderSuccess', function() { if(typeof callback === 'function') { callback(); } }); } //... //Initializes game script.init(); });
ãããã£ãŠãç¹å®ã®ã±ãŒã¹ã®APIé¢æ°ã眮ãæããŠãã²ãŒã ãä»ã®ãœãŒã·ã£ã«ãããã¯ãŒã¯ã«ãã°ããå±éããããšãã§ããŸãã
VK APIã§1æéãããã å Žæ
éå§jsãã¡ã€ã«ã®ã³ãŒãã«ã¯ãshowOrderBoxãšshowRequestBoxã®2ã€ã®ã¯ã©ã€ã¢ã³ãAPIã¡ãœãããåŒã³åºãäŸãå«ãŸããŠããŸãã äžæ³šæã§ç®ããŒãããŠãããããæåã®ã±ãŒã¹ã§ã¯ããã©ã¡ãŒã¿ãŒä»ãã®é£æ³é åã2çªç®ã®åŒæ°ãšããŠVK.callMethodã¡ãœããã«æž¡ããã2çªç®ã§ã¯ããã©ã¡ãŒã¿ãŒã2çªç®ãš3çªç®ã®åŒæ°ãšããŠæž¡ããããšããç¹ãèŠéããŸããã
åœéå
showRequestBoxã¡ãœããã®åŒã³åºãã³ãŒãã§ã¯ãéžæããèšèªãèæ ®ããŠãåºåçšã®ããã¹ããè¿ãã¡ãœããã®äœ¿çšã確èªã§ããŸãã çŸæç¹ã§ã¯ãã²ãŒã ã«ã¯ã€ã³ã¿ãŒãã§ãŒã¹èšèªã1ã€ãããããŸããããå°æ¥ã®ããã«æºåãã§ããŠããŸãã
æ§é ã¯æ¬¡ã®ãšããã§ãã
ã¹ã¯ãªããã¹ãŒããŒãªããžã§ã¯ãã«ã¯ã次ã®ããããã£ããããŸãã
language-çŸåšã®èšèªã®2æåã®ååãæ ŒçŽãããŠããæååã
ãã¬ãŒãº-察å¿ããèšèªã®ãã¬ãŒãºãæã€ãªããžã§ã¯ããšãä»åŸã®æ°åã«å¿ããŠåžæãã圢åŒã®åèªãè¿ãé¢æ°ã2æåã®ããŒã§ä¿åããããªããžã§ã¯ãã
äŸã瀺ãæ¹ãç°¡åã§ãïŒ
script.language = 'ru'; script.phrases = { 'ru': { 'numeralForms': function(number, titles) { var cases = [2, 0, 1, 1, 1, 2]; return titles[ (number % 100 > 4 && number % 100 < 20)? 2 : cases[(number % 10 < 5) ? number % 10 : 5] ]; }, 'ok': '', 'makeExorcismWithPerson': ' #MONEY_COUNT# #MONEY_CASES#!', 'casesMoney': ['', '', ''] }, 'en': { 'numeralForms': function(number, titles) { return titles[ (number === 1)? 0 : 1 ]; }, 'ok': 'OK', 'makeExorcismWithPerson': 'You get #MONEY_COUNT# #MONEY_CASES# for exorcism!', 'casesMoney': ['lightning', 'lightnings'] } };
script.i18nã¡ãœããã¯ãåŒã³åºããããšãçŸåšã®èšèªã®å¯Ÿå¿ãããã¬ãŒãºãŸãã¯æåã®åŒæ°ã§æå®ãããŠããå Žåã¯ãnumericFormsé¢æ°ãè¿ããŸãã 2çªç®ã®åŒæ°ã«ã¯ããã¬ãŒãºã«çœ®ãæãããããã³ãã¬ãŒããå«ãé£æ³é åãæž¡ãããšãã§ããŸãã äŸïŒ
var money = 10; script.language = 'ru'; script.i18n('ok'); // '' money = 123; script.i18n('makeExorcismWithPerson', {'MONEY_COUNT': money, 'MONEY_CASES': script.i18n('numeralForms')(money, script.i18n('casesMoney'))}); // ' 123 !' money = 1; script.language = 'en'; script.i18n('makeExorcismWithPerson', {'MONEY_COUNT': money, 'MONEY_CASES': script.i18n('numeralForms')(money, script.i18n('casesMoney'))}); // 'You get 1 lightning for exorcism!'
åçå
ã²ãŒã ã®åçåã¯æ¬¡ã®ããã«å®è£ ãããŸããããªã¢ã«ãããŒã§ã¯ãã²ãŒã å é貚ãè³Œå ¥ã§ããŸã-ãã³ããšã¯ããŒã³ãè³Œå ¥ã§ããã©ã€ããã³ã°-次ã®ã¬ãã«ãžã®ç§»è¡ã
æã¡äžã
æåã®ãªãªãŒã¹æ¥ã¯10æ31æ¥ã«èšå®ãããŸããã åœç¶ãã²ãŒã ã¯ãã®ç· ãåãã«éã«åããŸããã§ããã ããæ£ç¢ºã«ã¯ãç§ã®æèŠã§ã¯ã圌女ã¯æºåãã§ããŠããŸããã§ããã ã¿ã¹ã¯ã®ãªã¹ãããåªå ã¿ã¹ã¯ãéžæãããããªãã§ã¯èµ·åã§ããªãã£ããããã¢ã¯ãã£ããªäœæ¥ã«ã€ããŠèšå®ããŸããã 2é±éã§ãå¿ èŠãªãã¹ãŠããªãã¡ã¯ã¿ãªã³ã°ããŠå®è¡ããããšãã§ãã11æ16æ¥ã«VKontakteã²ãŒã ããã¹ãããããã®ãã¬ã³ããªãŒãªããŒã¿ãã¹ãã®ç³è«æžãæåºããŸããã é©ããããšã«ãSMSã§éç¥ãããã®ã§ãç³è«ãæåºãããŠããçŽ1æéåŸã«ã²ãŒã ãæ¿èªãããŸããã 仲éã§3æ¥éã²ãŒã ããã¹ãããåŸããæ°ããã¢ããªã±ãŒã·ã§ã³ããããã¯ã«ç¡æã§é 眮ããŸããã ç³è«æžãæåºãããšããé 眮ã®æ¥ä»ãéžæããå¿ èŠããããŸããæãè¿ãæ¥ä»ã¯11æ23æ¥æææ¥ã§ãã-ç§ã¯ãããéžæããŸããã
11æ23æ¥ã®æãç®èŠãããšãæåã«ã©ãããããã«èµ°ã£ãŠãéåžžã«äººæ°ã®ããã²ãŒã ãäœã£ãããšã確èªããŸããã ç§ãèŠããã®ã¯è€éãªææ ãåŒãèµ·ãããŸããïŒäžæ¹ã§ã¯ã3,000人ã®åå è ãå€ã«çŸããä»æ¹ã§ã¯ãã²ãŒã ã¯æ©èœããŸããã§ããã çœå®³ã®èŠæš¡ããã°ããè©äŸ¡ãããšãsshãä»ãããµãŒããŒãžã®ã¢ã¯ã»ã¹ã¯ããçµç±ã§ããååŸã§ãããEclipseãWinSCPããµãŒããŒã«æ¥ç¶ãããŠããŸããã§ããïŒãã°ããæ¥ç¶ã確ç«ãããã®ã§ããã以äžäœãèµ·ãããŸããã§ããïŒãnginxã¯æ¬åœã«ãã£ãããšéçæ å ±ãæäŸããPHPãå®è¡ããApacheã¯é·ãéãªã¯ãšã¹ãã«çããŸããã ç§ã¯ç®¡çè ã®å人ã«é»è©±ããŠåé¡ã確èªããããã«é Œã¿ãŸãããã圌ã¯äžŠè¡ããŠç»ããVPSã®ç¹æ§ãšã¢ããã°ã¬ãŒãã®å¯èœæ§ã確èªããŸããã ãµãŒããŒãèŠããšãå人ã¯ããµãŒããŒã®ç¹æ§ãèšè¿°ãããè² è·ã«å¯ŸããŠååã§ãããšèšããŸããã çµå±ã®ãšãããVPSãè³Œå ¥ããéã«ãChannel Widthã¢ã€ãã ãèŠèœãšããŠããŸããã ç§ã®æéãã©ã³ã«ã¯10 Mbpsãå²ãåœãŠãããŸããã 100 Mbpsã®ãã£ãã«ãæã€å¥ã®ãã¹ãããç·æ¥ã«æ°ããVPSãè³Œå ¥ããŠæ§æããããã§ã²ãŒã ã転éããå¿ èŠããããŸããã ãã®çµæã家äºã®ããã«åºçºããå¿ èŠãããããããã®æé ã¯11æ23æ¥ã®å€ã«ã®ã¿å®äºããŸããã
ãã³ã8 ïŒ ãã¹ãã£ã³ã°/ VPS /ããŒãœãã«ãµãŒããŒã®ãã¹ãŠã®ç¹æ§ã確èªããŠãã ããã
æ°ããã¢ããªã±ãŒã·ã§ã³
ãã®ç¡æãã©ãã£ãã¯ã®ã¹ãã³ãµãŒã«ã€ããŠãã話ãããå¿ èŠããããŸãã ã¢ããªã±ãŒã·ã§ã³ããŒãžã«ãæ°ããã¢ããªã±ãŒã·ã§ã³ããããã¯ããããŸãããã®ãããã¯ã«ã¯ãããŒãžããšã«4ã€ã®ã²ãŒã ã衚瀺ããããã®ãããã¯ã«é 眮ãããæ¥ä»ã®éé ã§äžŠã¹æ¿ããããŸãã ã€ãŸã 11æ23æ¥ãç§ã®ã²ãŒã ã¯æåã24-2çªç®ã25-3çªç®ã26-4çªç®ã§ã27çªç®ã®ã²ãŒã ã¯2çªç®ã®ããŒãžã«ãããéææ¥ãšãšãã«ã¯ãªãã¯ã¹ã«ãŒã®æ°ãå€§å¹ ã«æžå°ããŸããã åŸã§ã1æ¥ã«2ã€ã®ã¢ããªã±ãŒã·ã§ã³ãè¿œå ãããã®ã2åèŠãŸãããããã¯ãã¢ããªã±ãŒã·ã§ã³ã4æ¥ãããæ©ã2çªç®ã®ããŒãžã«è¡šç€ºãããããšã瀺ããŠããŸãã
ãã³ãïŒ9 ïŒ ããå€ãã®åå è ãç²åŸããã«ã¯ãæææ¥ã«æ°ããã¢ããªã±ãŒã·ã§ã³ã»ã¯ã·ã§ã³ã«æçš¿ããã®ãæåã§ãã
ãã³ã10 ïŒ ç§ã®ã²ãŒã ã®åŸã«ãªãªãŒã¹ããããã®ãèŠãã°ãVKontakteã®èŠ³å®¢ã¯å®ç³ãå®ç©ã«é¢ããã²ãŒã ãæããŠãããšçµè«ä»ããããšãã§ããŸãã
ãã£ã®ã¥ã¢
Habréã®æã®æ°åã«ã¯ããããããããŸãã
è²»ããããé
ãåå | ã«ãŒãã« |
---|---|
2ã€ã®ç°ãªããã¹ãã£ã³ã°äºæ¥è ã«ãã13ãæã®VPS | 4240 |
ãã¹ãŠã®ã°ã©ãã£ãã¯ã¹ | 61300 |
ãã¥ãŒãžã㯠| 3780 |
ãã¹ãŠã®åºå | 700 |
åèš | 70020 |
皌ãã ãé
109æ祚=å¥çŽãªãã®317.19ã«ãŒãã«= 385.86å¥çŽä»ãã®ã«ãŒãã«= 697.60ã«ãŒãã«ã¯ãVkontakteããæ祚ãåãæ¶ããã«ã¢ããªã±ãŒã·ã§ã³ã宣äŒããããã®ãã®ã§ãã
åºåžçµ±èš
ã²ãŒã ã®ã€ã³ã¹ããŒã«/ã¢ã³ã€ã³ã¹ããŒã«ã®çµ±èš
åå è æ°ã®çµ±èš
ã²ãŒã ã€ã³ã¹ããŒã«ãœãŒã¹ã®çµ±èš
æ§å¥ããã³èšªåè ã®å¹Žéœ¢å¥çµ±èš
蚪åè ã®å°ççµ±èš
ãã©ãŠã¶çµ±èš
ç»é¢è§£å床ã®çµ±èš
ãããã«
ããã¯ãæ°ããç¥èãå°éèœåã®éçºããã³ãã³ã°ãšã³ãžãã¢ãªã³ã°ãçµç¹åããã¶ã€ã³ã®èœåã§ããã ãã§ãªãã楜ãã¿ã§ããããããã²ãŒã ããããŠå®éã«ããªãèªèº«ã®ãããžã§ã¯ããå®è¡ããå¿ èŠããããŸãã
UPDïŒã³ã¡ã³ããèªãã åŸãç§ã¯èšäºã«æ¬¡ã®ä»®å®ãè£è¶³ããããšã«ããŸããã
1.ã©ãã ãã®ãéã䜿ã£ãããã©ãã ã皌ãã ããç¥ã£ãŠããŸãããã®ãããªæ å ±ã¯ãã£ãã«ãªãã®ã§ãæå³çã«ããã«ã€ããŠæžããŸãã
2.ã²ãŒã ãäœæãããšãã®åæ©ïŒããºã«ã奜ãã§ãã²ãŒã ãäœãã®ã奜ãã§ãããéã皌ãã²ãŒã ã®åªäœæ§ã«ããããããŠããŸãã
3.èšäºã®ç®çïŒåå¿è ã®éçºè ã«çããããã€ãã®è³ªåã«çããéçºããã»ã¹ã§ééããããŸããŸãªå°é£ã«å¯ŸåŠããã®ã«åœ¹ç«ã¡ãŸãã
4.ãã®æ©äŒãå©çšããŠããœãŒã·ã£ã«ã²ãŒã ã®äœææ¹æ³ãæ€èšããŠãã人ã ã«ãç§ã®è©±ãäŸã§è£è¶³ããŠããããããšæããŸãã