C# 12ã®ææ°ã¢ããããŒãã§ç¹æ³šã®æé©åãå¯èœã«ã
ææ°ã®C# 12ãã¬ãã¥ãŒã§ã¯ãæé©åãããã³ãŒãã»ã³ã³ãã€ã«ãã€ã³ã©ã€ã³é åãžã®ã¢ã¯ã»ã¹ãããã·ã£ãŒããªããã©ãŒãã³ã¹ã®åŒ·åãå°å ¥ãããŠããã

ãã€ã¯ããœãã瀟ã®.NETéçºã«ãããæé«å³°ã®ãªããžã§ã¯ãæåèšèªã§ããC# 12ããææ°ã®ãã¬ãã¥ãŒçã®çºè¡šã«ãã£ãŠé£èºçãªé²æ©ãéããããã®ãã¬ãã¥ãŒã§ã¯ãAOTïŒAhead-of-TimeïŒã³ã³ãã€ã«ãå€§å¹ ã«åŒ·åãããã€ã³ã©ã€ã³é åãžã®ã¢ã¯ã»ã¹ã容æã«ãªããªã©ãæå³çãªã¢ããã°ã¬ãŒããè¡ãããŠãããVisual Studio 17.7 Preview 3ãš.NET 8 Preview 6ã®äžéšãšããŠãªãªãŒã¹ãããC# 12ãã¬ãã¥ãŒã«çµã¿èŸŒãŸããæ°æ©èœã¯ãå°æ¥ã®ããã©ãŒãã³ã¹åŒ·åãç®çãšããŠããã
è峿·±ãããšã«ããã®ã¢ããããŒãã§ã¯ãInterceptors ãšåŒã°ãã驿°çãªå®éšçæ©èœã玹ä»ãããŠããããã®æ©èœã«ããããžã§ãã¬ãŒã¿ã¯ã³ãŒãã®åã«ãŒãã£ã³ã°ãå¹çåããã³ã³ããã¹ãã«å¿ããæé©åãå®çŸã§ãããInterceptorsã®èšèšã®èåŸã«ããç®çã¯ãé«åºŠãªã·ããªãªãç¹ã«åŒ·åãããAOTã³ã³ãã€ã«ãå¿ èŠãªã·ããªãªã«å¯Ÿå¿ããããšã§ããã.NET8ãšãšãã«é åžããããã®èšèªã®å®éšçãªãã¡ã»ããã¯ãå°æ¥å€æŽãããããå®å šã«åé€ãããå¯èœæ§ããããããæ¬çªç°å¢ã«å°å ¥ããªããããŠãŒã¶ãŒã«æ³šæãä¿ããŠããã
ã€ã³ã¿ãŒã»ãã¿ãŒã®å±æ§ã¯ããœãŒã¹ã³ãŒãã®æ£ç¢ºãªå Žæãæå®ããããããã£ãŠããããã¯ãœãŒã¹ã»ãžã§ãã¬ãŒã¿ãŒã«é©ããŠãããã€ã³ã¿ãŒã»ãã¿ãŒã¯ããã®åçãªæ§è³ªã«ããããããã.NET 8ãšé£åããŠãä»å¹Ž11æãŸã§ã«æ¬æ Œçãªãããã¯ã·ã§ã³ã»ã°ã¬ãŒãã®C# 12ããŒãžã§ã³ã«é²åããäºå®ã§ããã
ã€ã³ã¿ãŒã»ãã¿ãŒãè£å®ããããã«ãææ°ã®ãã¬ãã¥ãŒã§ã¯ nameof åŒãäžæ°ãããããã®æŽæ°ãããåŒã¯ã倿°åãã¡ã³ãã®åç§°ãæåå宿°ãšããŠè¿ãããšãã§ããããå¹ åºãã¢ããªã±ãŒã·ã§ã³ã§ãã®æ©èœã匷åããŸããã¢ããã°ã¬ãŒãã«äŒŽãããã®ããŒã¯ãŒãã¯åæååãéçã¡ã³ããã¡ã³ãåãããã³å±æ§å ã§å®ç§ã«åäœããããã«ãªããŸããã
ãã®èšèªã¯ããã«ãInlineArrayAttributeã®å°å ¥ã§é£èºçãªé²æ©ãéããŸãããInlineArrayAttributeã¯ã以åã®.NET 8ãã¬ãã¥ãŒã§åããŠå°å ¥ãããå ç¢ãªæ©èœã§ããããã¯ã以åã®.NET 8ãã¬ãã¥ãŒã§åããŠå°å ¥ãããå ç¢ãªæ©èœã§ãé«åºŠãªæ©èœã®1ã€ãšããŠå®£äŒãããäž»ã«ã³ã³ãã€ã©ã.NETã©ã€ãã©ãªããã®ä»ã®ã©ã€ãã©ãªã«åœ¹ç«ã¡ãŸãã InlineArrayAttributeã¯ãããªããã£ãã®é£ç¶ããã·ãŒã±ã³ã¹ãšããŠåäœããåãèå¥ããã®ã«åœ¹ç«ã¡ãå¹ççã§åå®å šããªãŒããŒã©ã³å®å šãã€ã³ããã¯ã¹å¯èœãã¹ã©ã€ã¹å¯èœãªã€ã³ã©ã€ã³ããŒã¿ãå¯èœã«ããŸãã
ãã®æ©èœã¯ã.NETã©ã€ãã©ãªã«ãã£ãп޻çšãããããªããã£ãã®é£ç¶ã·ãŒã±ã³ã¹ãšããŠæ±ããåã«ãã©ã°ãç«ãŠãããšã§ãã¢ããªã±ãŒã·ã§ã³ã®ããã©ãŒãã³ã¹ãåäžãããŸãããã®æ©èœã«ãããå¹ççã§ãã¿ã€ãã»ãŒãããªãŒããŒã©ã³ã»ãŒããã€ã³ããã¯ã¹å¯èœãã¹ã©ã€ã¹å¯èœãªã€ã³ã©ã€ã³ããŒã¿ã容æã«ãªããŸãã
AppMasterã® ãããªno-code ãã©ãããã©ãŒã ã䜿ãã°ããŠã§ãã¢ããªã±ãŒã·ã§ã³ãã¢ãã€ã«ã¢ããªã±ãŒã·ã§ã³ã®æ§ç¯ãè¿ éãã€å®¹æã«ãªãã.NETãšåæ§ã«ãã¢ããªã±ãŒã·ã§ã³ãçæããã¹ã±ãŒã©ããªãã£ã®ãªãã·ã§ã³ãæäŸããããšã§ãéçºã10åéãã3åè²»çšå¯Ÿå¹æãé«ããªããŸãã詳现ã«ã€ããŠã¯ã ããŒã³ãŒãããã³ããŒã³ãŒãã»ã¢ããªéçºã«é¢ããã¬ã€ãã ã芧ãã ããã


