æè¿è²·ã£ã C# ç³»ã®æ¬ã®ä¸ã§ã¯ãã³ããã§ããã巨大㪠API ã©ã¤ãã©ãªãè¨è¨ããã¨ãã«æ°ãä»ãããã¨ãå ·ä½çã«æ¸ãã¦ãã£ã¦åèã«ãªãã
neuecc æ°ãåæ¸ããæ¸ãã¦ã㦠2ç« ãç´ æ´ãããã¨æ¸ãã¦ãã£ããã©ãã®ã¨ãã2ç« ãç´ æ´ãããã£ããããã¾ã§ã§ãååã«ãã¤ããæ¥ãæ触ã¯ããã
以ä¸ã®å¼ç¨ãé¢ç½ãã£ã人ã¯è³¼å ¥ãã価å¤ãããã¨æãã¾ãã.NET éçºè ã API è¨è¨ã§å¾æãã¦ããã¨ãããèªãããªãã¦ãããªã«ç¥è¦ã«æº¢ããæ¸ç±ã¯ãªããªããªãã
ç¹ã«ããã£ãã¨ãã
èªåã¨åããããªã¦ã¼ã¶ã¼åãã«è¨è¨ããã®ã¯ç°¡åã§ãããã§ã¯ãªã人åãã«è¨è¨ããã®ã¯ã¨ã¦ãé£ãããã¨ã§ããæ£ç´ã«è¨ãã¨ããã¡ã¤ã³ã®å°é家ã«ãã£ã¦è¨è¨ãããããã¡ã¤ã³ã®å°é家ã«ãã使ããªãAPIãå¤ããã¾ãã
1åã®å¤§è¦æ¨¡ãªã¦ã¼ã¶ããªãã£ã¹ã¿ãã£ã®è¨ç»ãè¨è¨ãå®æ½ã«å¤å¤§ãªå´åãè²»ããããããAPIéçºããã»ã¹å ¨ä½ã§ãããå°ãããããç¯å²ãçµã£ãã¹ã¿ãã£ãä½åº¦ãå®æ½ããæ¹ããã¯ããã«ä¾¡å¤ãé«ã
主æµã®ã·ããªãªã®APIã§å¿ è¦ã¨ãªãåæåããæå°éã«æããããã«è¨è¨ãã¹ãã§ããçæ³çã«ã¯ãåºæ¬çãªã·ããªãªç¨ã«è¨è¨ãããåã使ãå§ããã«ã¯ãæ¢å®ã®ã³ã³ã¹ãã©ã¯ã¿ã¼ãã¾ãã¯åä¸ã®ãã©ã¡ã¼ã¿ã¼ãæã¤ã³ã³ã¹ãã©ã¯ã¿ã¼ã®ããããã§æ¸ãããã«ãã¹ãã§ãã
ãã¬ã¼ã ã¯ã¼ã¯è¨è¨åå
ãã¬ã¼ã ã¯ã¼ã¯ã¯ã使ãæ¹ã®ã·ããªãªã®ã»ããã¨ããããã®ã·ããªãªãå®è£ ããã³ã¼ããµã³ãã«ããè¨è¨ãå§ããªããã°ãªããªãã
åç´ãªã·ããªãªã§ã¯ããã¬ã¼ã ã¯ã¼ã¯ã¯ããã¥ã¡ã³ããå¿ è¦ã¨ããã«ä½¿ç¨å¯è½ã§ãªããã°ãªããªãã
.NET éçºè ã API è¨è¨ã§å¾æãã¦ããã¨ãã
ãã®éãã¾ãçãªãã§ããã»ã¨ãã©ä½¿ç¨ãããªãåãå«ã¾ããåå空éã«ãä¸è¬çã«ä½¿ç¨ãããåãå ¥ãã¦ã¯ãªããªããã¨è¨ããã§ããããStringBuilderã¯ãç§éãå¾ã«ãªã£ã¦Systemåå空éã«å«ãã¦ããã°ããã£ãã¨æã£ããã®ã®ä¾ã§ãããã®åã¯System.Textåå空éã«ããã¾ããããã®åå空éã«ããä»ã®åãããã¯ããã«é«ãé »åº¦ã§ä½¿ç¨ãããããããããã®åã¨ã¯ãã¾ãé¢ä¿ãããã¾ããã
ç§ã®ãããé¡ããããªããªããããç´ããããã¨ãããã10ã®ã²ã¨ã¤ã¯ãSystem.Threading.Tasksã«ããã¾ããç§éã¯å½åãCPUãã¼ã¹ã®ä¸¦åå¦çã«ç¦ç¹ãå½ã¦ã¦ãããã®APIãè¨è¨ããã®ã§ãããæããã¤ã«ã¤ãã¦ããã®æãä¸è¬çãªä½¿ãæ¹ã¯å½åã®æç¹ãããã¯ããã«ãI/Oãã¼ã¹ã®éåæå¦çã«ç¦ç¹ãå½ã¦ããã®ã¸ã¨å¤ãã£ã¦ãã¾ãã¾ãããããã¦ãç§éãå½åè¨å®ããæ¢å®å¤ã®ä¸é¨ã¯ãåè ã®å ´åã¯é常ã«é©åãªãã®ã§ããããå¾è ã«ã¨ã£ã¦ã¯æ害ãªãã®ã«ãªãã¾ããã