ã䏿£ãªå ¥åã«å¯¾ãã¦èå¼±æ§ãçºçãããªãããã»ãã¥ãªãã£å¯¾çã¨ãã¦ããªãã¼ã·ã§ã³ãè¡ãããã¢ãããããã°ã©ããªãã»ãã¥ãªãã£å¯¾çã¨ãæ°ã«ãããªããããæ°ã«ãããªã¨ããã®ã¯è¨ãéãã ããã©ãã»ã¨ãã©ã®å ´åã«ããã¦ããªãã®æ¸ãã³ã¼ãã¯ã»ãã¥ãªãã£å¯¾çã®å¿ è¦æ§ã¯ãªãã æ»æè ã®ç´°å·¥ããå ¥åã«ãã£ã¦SQL/HTML/JavaScriptãå£ããã¨ããããã¡ãªã¼ãã¼ããã¼ãçºçããã¨ãããããã£ãèå¼±æ§ã¨å¼ã°ããã»ã¨ãã©ã®ãã®ã¯ãã ã®ãã°ã ãã»ãã¥ãªãã£å¯¾çã£ã¦ããã®ã¯ã³ã¼ãã¨ã¯åãé¢ãããé åã§è¡ãDEPã ã£ããASLRã ã£ããX-Frame-Optionsã ã£ããCSPã ã£ããiframe sandboxã ã£ããããããããã®ãã»ãã¥ãªãã£å¯¾çã ãã³ã¼ãä¸ã§æ¸ãã®ã¯ãã¢ããªã±ã¼ã·ã§ã³ã¨ãã¦æ£ããåä½ããããã®å¦çãã ãã ã ãã¡ããä¾å¤ããããããããªããã©ãããã¯ããã¾ã§ãä¾å¤ã ãæ¥å¸¸çã«æ¸ã
JavaScript ã®ãã¹ã æ¸ããªãã¨æãããããæ¸ãããã¨ã¯æã£ã¦ããããæ¸ãã¾ã§ã®æ·å± ããããã¨é«ããªã£ã¦ãã¾ã£ãæ°ããã¦ãã人ã¸ã æå°ã®ãã¹ã æ¬è³ªçã«ãã¹ããæ¸ãã®ã«ãã¬ã¼ã ã¯ã¼ã¯ã¯ãããªãã assertion ã ãããã°ããã isomorphic ã«ããããªãã node ã® assert ã¢ã¸ã¥ã¼ã«ãã使ãã console.assert ã ãã§æ¸ããã // assert function assert(actual, expected) { console.log('.'); console.assert(actual === expected, '\nact: ' + actual + '\nexp: ' + expected); } function TestSum() { assert(1+2, 3); } // exec TestSum(); ãã¨ã¯æ®éã«
UNIXã®åºæ¬ããªãããã»ã¹ãã·ã°ãã«ãªã©ãåããããã解説ããæè¡ããã¥ã¡ã³ããProcess BookããGitHubã«ã¦å ¬éããã¦ãã¾ãã åããã¥ã¡ã³ãã¯ãããã»ã¹ã®çæãããã»ã¹ã¨ãã¡ã¤ã«å ¥åºåããã¡ã¤ã«ãã£ã¹ã¯ãªãã¿ãpreforkãµã¼ãã¼ã®ä½ãæ¹ãã¾ã³ãããã»ã¹ã¨å¤å ããã»ã¹ãã·ã°ãã«ã¨killãããã»ã¹ã°ã«ã¼ãã¨ãã©ã¢ã°ã©ã³ãããã»ã¹ã¨ãã£ã話é¡ã解説ããããã¥ã¡ã³ãã§ãGitHubã®releasesãã£ã¬ã¯ããªã«ã¯PDFãepubå½¢å¼ã®ãã¡ã¤ã«ãæ ¼ç´ããã¦ãã¾ãã UNIXç°å¢ã§ããã°ã©ã ãéçºããéã«å½¹ç«ã¤ã ãã§ã¯ãªããæ®éã®ã¦ã¼ã¶ã¼ã¨ãã¦ã¿ã¼ããã«ã使ã£ã¦ã³ãã³ãæä½ãè¡ãéã«ãå½¹ã«ç«ã¡ãããªå 容ã ã¨æãã¾ãã
æ®æ®µãä»äºãã¦ããä¸ã§ä½æ ãã³ã¼ãã¬ãã¥ã¼ããã¦ããæéãããã¨ãã£ã¦ãæããããã°(æããªãã¦ã)ã³ã¼ãã¬ãã¥ã¼ãã¦ããã ãããªä¸ã§ã©ãããã¨ãããè¦ããããã®ãããããã¯è¦ãã¹ããªã®ãã¨ããã®ãèªåã®ä¸ã§ããç¨åº¦èç©ãããæ°ãããã®ã§æ¸ãã¦ã¿ãããã¨æå¾ã«æ®æ®µèãã¦ãããã¨ãå°ãæ¸ããã åæ ç¾å¨ã®åã®åå ãã¦ããããã¸ã§ã¯ãã¯ãããªæã Rails ããã¸ã§ã¯ã( AngularJS 使ã£ãããã¦ãã) Git 使ã£ã¦ã( Pull Request ãã¼ã¹ã®éçºã§ä»¥ä¸ã merge æ¡ä»¶) 2 人以ä¸ã« approve ããã ãã¹ããéããã¨(ç¶ç¶çã¤ã³ãã°ã¬ã¼ã·ã§ã³ã®å®æ½) éçã³ã¼ãè§£æã¯å°å ¥ãã¦ãã( Rubocop, jshint, pre-commit ãªã© ) ãã¹ãã®ã«ãã¬ãã¸ã¯è¨æ¸¬ãã¦ããªã(æä¸ãããã§æ¸¬ã£ã¦ãããããã ãã©ãã ããã©ãã£ã¦ãã話ã¯ãªã) ã
âãªãç´æãå®ããªãã£ãã®ã ãããï¼â æã ããã¼ã¸ã£ããç´æã«é ãããã¨ãèªåã®ãã¼ã ã®ããã«ããã®ã¯ç°¡åã§ããããããç´æã«é ããåå ã¯æ¬å½ã«éçºè ã®ä»äºãé ãããã§ããããï¼ Sprintly ã¯ãéçºè ã®ãµã¤ã¯ã«ã¿ã¤ã ã«é¢ããè¨å¤§ãªãã¼ã¿ãä¿æãã¦ãã¾ããå½ç¤¾ã¯ãã¿ã¹ã¯ã®ãµã¤ãºãã¨ï¼SãMãLãXLï¼ãã¾ã種é¡ãã¨ï¼ã¹ãã¼ãªã¼ããã¹ãããã°ï¼ã«ãå®äºã¾ã§ã«ã©ããããã®æéãããããã追跡ãã¦ãã¾ãã å½ç¤¾ã調æ»ããååã«ã¤ã㦠1ç¹ç®ï¼éçºè ã¯é常ã«å¹³åçã§ããã¦ã¼ã¶å ¨ä½ã§è¦ããµã¤ã¯ã«ã¿ã¤ã ã¯ã»ã¼åãã§ãããã¨ãå½ç¤¾ã®ãã±ãããã¼ã¿ã示ãã¦ãã¾ããã·ã¹ãã å ã®å ¨ãã±ããã®75%ã¯ãéå§å¾ããã175æéã§å®äºãã¦ãã¾ãã ^(1) 2ç¹ç®ï¼å¤åãããã®ã¯ãã»ã¨ãã©ããã±ãããéå§ãããåï¼SomedayããBacklogã¾ã§ï¼ã®æ®µéã§ããããã¯ãé¢ä¿è ã仿§ãçè§£ãã¦ä½æ¥ã®åªå é ä½
æ¬æ ¼çãªãã¹ããè¡ãã¾ãã« æ å ±åéãããã®ãåå¿é²ã¨ãã¦æ®ãã¦ããã¾ãã å¤é¨ãµã¼ãã¹ appium ååããåããã¨ããseleniumã®ãããªãã¹ãèªåãã¢ããªã§è¡ããã¨ãå¯è½ãå¿ è¦æ¡ä»¶ã¯ãMac OSX 10.7以ä¸ãXCode 4.5ä»¥ä¸ ãã¨ãªã£ã¦ãããSwiftã対å¿ãã¦ãããã¯å®éã«ã³ã¼ããæ¸ããªãã¨ããããªãã saucelabs seleniumãappiumã®ãã¹ããé«éå®è¡ãå®è¡æã®ãããªãæ®ãã¦ãããã Remote Test Kit ãªã¢ã¼ãã«ãã宿©ãã¹ããã§ããã æ©ç¨®ä¾åãã¤ã³ãã¨ãªãã»ã³ãµå¨ãã®ãã¹ãããã¥ããã®ã¯æ®å¿µã OSS Quick Swiftãçºè¡¨ãããï¼æ¥å¾ã«Githubã«ã³ãããããããä¸çã§ä¸çªæåã®Swiftã®ãã¹ããã¬ã¼ã ã¯ã¼ã¯ãRSpec, Specta, Ginkgoã®å½±é¿ãåãã¦ããããã§ãè¨è¿°ãããããå¯èªæ§ã®é«ãã±ã¼ã¹ã表ç¾
ã¯ããã« ãã㯠ããªã³ã AdventCalendar ã®12æ¥ç®ã®è¨äºã§ãã 11æ¥ç®ã¯mickey19821ããã«ããåºæ¥ãï¼DNSã®ãå¼ã£è¶ãï¼ã§ãã èªå·±ç´¹ä» @motsat ããªã³ã æ¦3å¹´ã»ã© ã¹ãã¼ããã©ã³ã®ãã¤ãã£ãã²ã¼ã ã®ãã¼ã ã§ãã¯ã©ã¤ã¢ã³ã/ãµã¼ããµã¤ãã®ã¨ã³ã¸ã㢠ãã®å 容ã«ã¤ã㦠ä»ã®ãã¼ã ã§è¡ããã¦ããããã©ãã«ãå°ãªãããããã®åãï¼æåç³»ï¼ã«ã¤ãã¦æ¸ãã¾ããã RSpecçã®èªåãã¹ããæ¤ç¥ãã¼ã«çã®ãèªåç³»ãã«ã¤ãã¦ã¯ä»ç¤¾å«ãæ å ±ãå ¥ã£ã¦ããããã¨æãã¾ãã ãã ããã以å¤ã§äººéããã©ãã«ãé²ããæåç³»ãã¯ãã¾ãæ å ±ãå ¥ã£ã¦ããªããªã¨æãä»ã®ãã¼ã å ã§è¡ãªããã¦ããäºã«ã¤ãã¦æ¸ãã¦ã¿ã¾ããã ï¼èªåãã¹ããéã£ããå³ãªãªã¼ã¹ã¿ãããªç°å¢ãããã¨ã¯æãã¾ããï¼ â»ãã®ãã¼ã¸ã«ã¯ã¢ãã³ãªãã¹ããã¼ã«ã便å©ãªæ¤ç¥ãµã¼ãã¹çã®è©±ã¯åºã¦ããªãã®ã§æ¢ããªãã§ãã ãã ä»
èªåã®ãããã¯ãã ã£ã¦ããæèãçç¡ãªã®ããã¹ãããªããã¤å¤ããã æè¿è»¢è·ãããã ãã©ããã¹ããã¦ããªãªã¼ã¹å¾ã«ãã°ãè¦ã¤ãããããã¹ãã¯æå³ããªãã¨ãã¬ããã æ°åããæ°å¹´ã®ã¯ã½ã¬ããããªããããã°ã©ããåç´ä½æ¥å´åè ãã¨ä½ãåéããã¦ä¸ã«è¦ã¦ããã ãã¹ããããªããã©ã³ãã¼ã¨ããã£ã¬ã¯ã¿ã¼ ããã°ã©ãã¼ãåç´å´åè ã ã£ãã¨ãã¦ããã¹ãã¯å¿ è¦ã åç´å´åã£ã¦ãã¨ã¯ãå·¥æ¥è£½åãªãã§ãããã§ãå·¥æ¥è£½åã¯ãã¹ãã¨ç§°ããå質ãã§ãã¯ããã¦ã¾ããã©ãã ç´ äººã¾ãããªã¨ããã§ãåç´å´åè æ±ãããã¦åãã®ã¯ãæ£ç´ã¡ã³ã¿ã«çã«ããªãã¤ããã¨æããããã¢ãªããã°ã©ãã¼ã»ã©ããã 給æããããããã£ã¦ããããããã¨ããã§åãã¯ãã¹ãã¬ã¹ããã¾ãã¨æãã ä¸åº¦ãããçãªä»äºããããã¨ããªã人ãã¡ã¯ãããããã®ã¯å ¨ç¶æ°ã«ãªããªããããå¹³æ°ã ã¨ãããã¨ã§ãç´ äººã¾ããã®äººãã¡ããéç£ããã¦ããã ç´ äººã¾ãããªé
ãªãªã¼ã¹ãé害æ å ±ãªã©ã®ãµã¼ãã¹ã®ãç¥ãã
ææ°ã®äººæ°ã¨ã³ããªã¼ã®é ä¿¡
å¦çãå®è¡ä¸ã§ã
j次ã®ããã¯ãã¼ã¯
kåã®ããã¯ãã¼ã¯
lãã¨ã§èªã
eã³ã¡ã³ãä¸è¦§ãéã
oãã¼ã¸ãéã
{{#tags}}- {{label}}
{{/tags}}