MS_DevSupportToolCodeGen - NetDevInfraWGinOSSConsortium/NetDevInfraWiki GitHub Wiki
- æ»ãïŒéçºæ¯æŽããŒã«ïŒ
- éçºæ¯æŽããŒã«ã®çš®é¡
- éçºæ¯æŽããŒã«ã®èªåçææ¹åŒ
æ¬ããŒãžã§ã¯ãçš®ã ã®èªåçææ¹åŒã«ã€ããŠçºããã
ãªãããœãããŠã§ã¢éçºçç£æ§ã®åäžã®åãçµã¿ã¯ã
- ã³ãŒãã£ã³ã°ã»ã¬ãã«
- èªåçæ
- ãã¬ãŒã ã¯ãŒã¯
- ãã³ãã¬ãŒã
- .etc
以å€ã«ãåºãè¡ãå¿ èŠãããã
ãã®çç±ã¯ã以äžã®æè¡èŠçŽ ãéèŠãªçç£æ§ã®å€åèŠå ã§ããããã§ããã
- ææ¡ïŒæ¥åã»æè¡é¢ïŒ
- ãã£ãŒãžããªãã£åæ
- ã¢ãŒããã¯ãã£èšèšãåŠçæ¹åŒèšèš
- æšæºå
- åé¡å¯Ÿå¿
- ãã¹ã
- é害察å¿
- .etc
ç§»è¡ã¡ã¢ïŒèª€åïŒ: ç§»è¡å ã®ããœãããŠã§ã¢éçºçç£çã®åäžãã
ããœãããŠã§ã¢éçºçç£æ§ã®åäžãã«ä¿®æ£ããã
åçš®ãªãœãŒã¹ãããªããžããªã«æ å ±ãåã蟌ãããšããããä»çµã¿ã¯è€éã«ãªãã
-
ãã¶ã€ãæäœå
ãã¶ã€ãæäœã§èšèšããç»é¢é ç®ãã€ã³ã¿ãŒãã§ã€ã¹ãªã©ã®æ å ±ã
äžæŠãªããžããªã«åã蟌ã¿ãããã°ã©ã ãçæããã -
ã¹ããŒãå®çŸ©å
ç»é¢é ç®ã DB ã¹ããŒããªã©ã®æ å ±ãäžæŠãªããžããªã«åã蟌ã¿ãããã°ã©ã ãçæããã
ãªããžããªãååšããªããããä»çµã¿ã¯åçŽã«ãªãã
-
ïŒExcel ãªã©ïŒèšèšæžå
èšèšæžããèšèšæ å ±ãåã蟌ã¿ãããã°ã©ã ãçæããã -
ãã¶ã€ãæäœå
ãã¶ã€ãæäœããèšèšæ å ±ãåã蟌ã¿ãããã°ã©ã ãçæããã -
ã¹ããŒãå®çŸ©å
DDLãWSDL ãªã©ã®å®çŸ©æžã¿ã®ã¹ããŒãã®èšèšæ å ±ãåã蟌ã¿ãããã°ã©ã ãçæããã
Visual Studio ãªã©ã¯ãã¡ã€ã³ã«ç¹åãã
ãã¶ã€ãæäœåïŒç»é¢ïŒ + ã¹ããŒãå®çŸ©åïŒDDLãWSDLïŒã®
èªåçæåŠçãäžå¿ã«å®è£
ãããŠããã
è£è¶³ïŒãã® 2 åé¡ãæ¬ããŒãžã®è骚ïŒ: ããªããžããªãæã€ãåŠãããšãã
åãå£ã¯ãããŒã«ã®è€éããšéçšã³ã¹ããæ±ºå®ã¥ãããããªããžããªåãâ åçš®ãªãœãŒã¹ ââå蟌âââ ããªããžããªãââçæâââ ã³ãŒã ïŒäžéã®çå®ã®æºïŒ ã»å©ç¹ïŒæšªæçãªæŽåæ§ãã§ãã¯ã圱é¿åæãã§ãã ã»æ¬ ç¹ - ãªããžããªèªäœã®ãããŒãžã»ããŒã«ããã¯ãå°é£ãâ ïŒåŸè¿°ã®ãéçšãã®ç¯ïŒ - ãªããžããªããGit ã§å·®å管çã§ããªãã ïŒãã€ã㪠or DB ã®ããšãå€ãïŒ - ããŒã«ãæ¢ãŸããšè³ç£ãåãåºããªã ãèšèšæ å ±åã èšèšæ å ± ââçŽæ¥âââ ã³ãŒã ã»å©ç¹ïŒä»çµã¿ãåçŽãå£ãã«ãã ã»æ¬ ç¹ïŒæšªæçãªæŽåæ§ã¯æ ä¿ãããªã ãçŸåšã®æœ®æµã¯ãèšèšæ å ±åãã®åã¡ãâ ã»OpenAPIïŒYAMLïŒâ ã¯ã©ã€ã¢ã³ãïŒãµãŒãã®ã³ãŒãçæ ã».protoïŒgRPCïŒâ åèšèªã®ã¹ã¿ãçæ ã»DDL / EF Core ã®ã¢ãã« â ãã€ã°ã¬ãŒã·ã§ã³ ã»ãããããå ¥åãããã¹ã ãã¡ã€ã«ãã§ããã Git ã§å·®å管çã»ã¬ãã¥ãŒã»CI å®è¡ãã§ãã â â ããªããžããªãã DB ã§ã¯ãªã ããªããžããªïŒGitïŒãã«çœ®ããããšãèšãã
P å±€ãFïŒBïŒå±€ãD å±€ã®å
šèªåçæã ãã
UI èŠçŽ ã®ã¬ã€ã¢ãŠãããFïŒBïŒå±€ã®ããžãã¹ããžãã¯ã¯
ããã°ã©ãã«ãã£ãŠå®è£
ããå¿
èŠãããã
ç¹å®ã®ã¬ã€ã€ïŒãã¡ã€ã³ïŒã«ç¹åãã 100ïŒ èªåçæã
- ãã¶ã€ãæäœã«ããç»é¢åæåã³ãŒãã®èªåçæ
- ã¹ããŒãå®çŸ©ïŒDDLãWSDLïŒåŸã® Dao ã proxy çã®ã³ãŒãã®èªåçæ
P å±€ãFïŒBïŒå±€ãD 局㮠100ïŒ
å
šèªåçæã§ã
äžã€ãUI èŠçŽ ã®ã¬ã€ã¢ãŠãããFïŒBïŒå±€ã®ããžãã¹ããžãã¯ã
ãªããžããªããèšèšæ
å ±ãåã蟌ãã§å
šèªåçæããã
Visual Studio ãåç §ã
Visual Studio ã®èªåçæã¯ãåºæ¬çã«
Visual Studio ãã¶ã€ãæäœãã¹ããŒãå®çŸ©ããã®èªåçæã«ç¹åããŠããã
ãŸããèªåçæããããã®ã®ä»æ§ã決ãŸã£ãŠãããã«ã¹ã¿ãã€ãºäžèŠã§ããã
ãã®ãããã³ãã¬ãŒãã»ãšã³ãžã³çã®ä»çµã¿ã¯äœ¿çšããŠããªããã®ãšèããã
-
èªåçææ¹åŒ
- ãã¡ã€ã³ç¹ååå
šèªåçæ
- ãã¶ã€ãæäœå
- ã¹ããŒãå®çŸ©å
- ãã¶ã€ãæäœïŒã¹ããŒãå®çŸ©å
Visual Studio ãã¶ã€ãã䜿çšã㊠WPF ç»é¢ãäœæãããããªå Žåã
ãã¶ã€ãæäœïŒVS ãã¶ã€ãïŒâã¹ããŒãïŒXAMLïŒâç»é¢åæååŠçèªåçæ
- ãã¡ã€ã³ç¹ååå
šèªåçæ
-
èšèšææ³
- èšèšæžæ å ±ãç¡ãã®ã§ãéçºå·¥çšããæŽ»çš
- åãã¡ã€ã³ã«ç¹åãããéçºèŠç¹ã®è»œéå
-
ãã€ã³ã
- ã©ãŠã³ãã»ããªããé察å¿ã
- ãã¡ã€ã³ã«ç¹åããŠããããã«ã¹ã¿ãã€ãºã¯çºçããªã
- åŸã£ãŠããã³ãã¬ãŒãã»ãšã³ãžã³ã¯äœ¿çšããªãã
- .NET çãåæãšãªããã¬ãŒã ã¯ãŒã¯ã䜿çšãçæéãæããŠããã
è£è¶³ïŒããã³ãã¬ãŒã ãšã³ãžã³ã䜿ã£ãŠããªããã¯çŸåšã¯éãïŒ: ãã®æšæž¬ã¯
åœæãšããŠåŠ¥åœã ã£ãããVisual Studio / .NET ã«ã¯è€æ°ã®çææ©æ§ãããããâ T4ïŒText Template Transformation ToolkitïŒãâ ã»VS 2008 ããæèŒãããŠãã ããã³ãã¬ãŒã ãšã³ãžã³ãã®ãã®ã ã».tt ãã¡ã€ã«ã« C# ãåã蟌ãã§ä»»æã®ããã¹ããçæ <#@ template language="C#" #> <# foreach (var t in tables) { #> public class <#= t.Name #> { } <# } #> ã»EF ã®æ§ Database First / Model First 㯠ãT4 ã§çæããŠãããâ â åæã®ã䜿çšããŠããªãã㯠ãã¶ã€ãç³»ã«ã€ããŠã¯æ£ãããã ããŒã¿ ã¢ã¯ã»ã¹ç³»ã§ã¯ã䜿ã£ãŠããã ãâ¡ ã¹ãã£ãã©ãŒã«ãã£ã³ã°ã ã»dotnet ef dbcontext scaffold ã»dotnet aspnet-codegenerator â ãäžåºŠããçæããŠã以åŸã¯æã§ä¿å®ãããæ¹åŒ ã⢠ãœãŒã¹ ãžã§ãã¬ãŒã¿ãïŒ.NET 5ãïŒâ â ã»ãã³ã³ãã€ã«æã«ãã³ãŒããçæãã ã»çæç©ã¯ããã¡ã€ã«ãšããŠæ®ããªãã â ãªããžããªãæ±ããªã â ãã©ãŠã³ã ããªããåé¡ãåççã«èµ·ããªããâ ã»å®äŸ - System.Text.Json ã®ã·ãªã¢ã©ã€ã¶ - LibraryImportïŒP/InvokeïŒ - RegexïŒã³ã³ãã€ã«æã«æ£èŠè¡šçŸãå±éïŒ - CommunityToolkit.Mvvm ã® [ObservableProperty] ã⣠Roslyn ããŒã¹ã®ãªãã¡ã¯ã¿ãªã³ã°ã ã»ãçæããšãç·šéãã®äžé ã»IDE ãæ§ææšãçè§£ããŠå®å šã«æžãæãããæ¬ããŒãžã®åé¡ã«åœãŠã¯ãããšãâ ãœãŒã¹ ãžã§ãã¬ãŒã¿ã¯ ã»å ¥åïŒãæ¢åã®ã³ãŒããïŒå±æ§ã»éšåã¯ã©ã¹ïŒ ã»åºåïŒã³ã³ãã€ã«æã®ã¿ååšããã³ãŒã â åŸæ¥ã® 3 åé¡ïŒèšèšæžïŒãã¶ã€ãïŒã¹ããŒãïŒã® ã©ãã«ãåœãŠã¯ãŸããªãã第 4 ã®æ¹åŒãã§ãã â ãçæç©ãä¿å®ããªãããšãã æå€§ã®é£é¡ãžã®åçã«ãªã£ãŠãã â
-
Windows FormsãASP.NET WebForm
-
UI ã³ã³ãããŒã«ããã¶ã€ãã䜿çšããŠé 眮ããŠãããš
ã³ãŒãããã€ã³ãããASPX ã® ASP ã¿ã°ã« UI çæã®ã³ãŒããèªåçæãããã -
ã³ã³ãããŒã«ã«ãã£ãŠã¯æ¡åŒµã®ã«ã¹ã¿ã ãã¶ã€ããçšæãããŠããã
ããã䜿çšããŠãUI ã®ãã¶ã€ã³ãšå¯Ÿå¿ãã UI çæã®ã³ãŒããèªåçæããã
-
-
WPFãSilverlight
-
UI ã³ã³ãããŒã«ããã¶ã€ãã䜿çšããŠé 眮ããŠãããš XAML ã³ãŒããèªåçæããã
ãã«ãæã« XAML ãã BAML ãšãããã€ããªåããã XAML ãçæãããã -
WPFãSilverlight å®è¡æã¯ BAML ã䜿çšã㊠UI ã®åæåãè¡ãããã
-
ã«ã¹ã¿ã ã³ã³ãããŒã«ã¯äœ¿çšãã
ItemTemplateãDataTemplate ãªã©ãé§äœ¿ããŠ
ã«ã¹ã¿ãã€ãºå¯èœãªã¢ãŒããã¯ãã£ã«å€æŽãããŠããã
-
è£è¶³ïŒã«ã¹ã¿ã ãã¶ã€ããš BAML ã®è©³çްïŒ: æ¬ç¯ã® 2 ç¹ã¯
æ¬ Wiki å ã«è©³ãã解説ãããã®ã§æ¡å ããŠããããã«ã¹ã¿ã ãã¶ã€ããâ ã»ControlDesigner ãç¶æ¿ã㊠ãã¶ã€ã³æã®è¡šç€ºãèªåã§äœãä»çµã¿ â 詳现㯠[.NETã³ã³ãããŒã«ã®ã«ã¹ã¿ãã€ãºæ¹æ³](MS_DotNetControlCustomization) [ã³ã³ã¹ãã©ã¯ã¿ã§åã³ã³ãããŒã«è¿œå ãããšäºé远å ãããä»¶](MS_DoubleAddedControls) ãBAMLïŒBinary Application Markup LanguageïŒã ã»XAML ãããŒã¯ã³åããäžéåœ¢åŒ ã»ã¢ã»ã³ããªã«ããªãœãŒã¹ãšããŠåã蟌ãŸããã ã»å©ç¹ - ããŒã¹ïŒXML è§£æïŒãäžèŠã§ãèµ·åãéããâ - ãµã€ãºãå°ãã ã»æ³šæ - ã仿§ã¯éå ¬éã - éã³ã³ãã€ã©ïŒILSpy çïŒã§ XAML ã«åŸ©å ãããã â 詳现㯠[WPFã®ã¢ãŒããã¯ãã£](MS_WPFArchitecture) ããã«ã¹ã¿ã ã³ã³ãããŒã«ã¯äœ¿çšãã Template ã§ããâ ã»WPF ã®èšèšææ³ïŒã«ãã¯ã¬ã¹ ã³ã³ãããŒã«ïŒã æ£ããæããèšè¿°ã§ãã â 詳现㯠[XAMLã®æžãæ¹ïŒïŒïŒ](MS_XAMLWriting1) ã® ã¹ã¿ã€ã«ã»ãã³ãã¬ãŒãã®ç¯
-
DataAdapterïŒããŒã¿ã»ã¢ããã¿æ§æãŠã£ã¶ãŒã
-
TableAdapterïŒããŒãã«ã»ã¢ããã¿æ§æãŠã£ã¶ãŒã
ãã¶ã€ãæäœåã® 100ïŒ å šèªåçæ
- ç»é¢å®çŸ©ãã DB ãèªåçæãããã
- æ¥ååŠç㯠JavaScript ã§ã€ãã³ãå®çŸ©
-
æ¥åããã»ã¹ã¯ãããŒãã«ãŒã«ãããŒã¿ããåºæ¥ãŠããã
-
å®äžçã®æ¥åã®äžã§ãæ¹ä¿®ãæ¹åãå¿ èŠã§ãã£ããã
ããžãã¹ã®ç¶æ³ã«äœµããŠå€æŽããå¿ èŠãããã®ã¯
ãããŒãããããããããžãã¹ã»ã«ãŒã«ã®æ¹ãå§åçã«å€ãã -
æ§æèŠçŽ
- EngineïŒã«ãŒã«ã»ãšã³ãžã³ïŒ
- ManagerïŒã«ãŒã«ã®ç·šéïŒ
- ã«ãŒã«ã»ãªããžããªïŒã«ãŒã«å®çŸ©ã®ç®¡çïŒ
-
EngineïŒã«ãŒã«ã»ãšã³ãžã³ïŒ
- ããžãã¹ã»ã«ãŒã«ã®å®è¡ããããã¬ãŒã ã¯ãŒã¯ããŸãã¯ã©ã€ãã©ãª
- ã¢ããªã±ãŒã·ã§ã³ãšããžãã¹ã»ã«ãŒã«ã®åé¢ãå®çŸ
- ãã€ãããã¯ã«ã«ãŒã«ã倿Žå¯èœïŒã¢ããªã±ãŒã·ã§ã³ã®æè»æ§ãé«ããïŒã
- å€ãã®ã«ãŒã«ã»ãšã³ãžã³ã¯ Rete ã¢ã«ãŽãªãºã ãããŒã¹ãšããã
- å®çŸ©ããã«ãŒã«ãããã°ã©ã ããåŒã³åºããšãå ¥åããåºåã«å€æãããã
ç§»è¡ã¡ã¢ïŒæ¬åŒ§ã®æ¬ èœïŒ: ç§»è¡å ã®ãã¢ããªã±ãŒã·ã§ã³ã®æè»æ§ãé«ããããã¯
éãæ¬åŒ§ã«å¯Ÿããéãæ¬åŒ§ãæ¬ èœããŠããããè£ã£ãã
-
Business Rule ManagementïŒBRMïŒ
ManagerïŒã«ãŒã«ã®ç·šéïŒïŒã«ãŒã«ã»ãªããžããªïŒã«ãŒã«å®çŸ©ã®ç®¡çïŒ- ããžãã¹ã»ã«ãŒã«ã»ã©ã€ããµã€ã¯ã«ãããããåŽé¢ãããµããŒã
- ããžãã¹ã»ã«ãŒã«ã®å¯èŠå
- ããžãã¹ã»ã«ãŒã«ã®ãã¹ã
- ããžãã¹ã»ã«ãŒã«ã®ç·šéã»ãããã€
-
ã«ãŒã«ã®èšæ³ã¯ä»¥äžã® 3 ã€
- DRLïŒãããããåãããã€ãã£ãèšæ³ãããã¹ã圢åŒ
åºæ¬çã«çŽæ¥äœ¿çšãããä»¥äž DSLãDecision Table ããèªåçæãããã - DSLïŒããžãã¹ã»ãšãã¹ããŒãåããèªç¶èšèªãããã¹ã圢åŒ
- Decision TableïŒããããããããžãã¹ã»ãšãã¹ããŒãåããã¹ãã¬ããã»ã·ãŒã圢åŒ
- DRLïŒãããããåãããã€ãã£ãèšæ³ãããã¹ã圢åŒ
è£è¶³ïŒRete ã¢ã«ãŽãªãºã ãšã¯ïŒ: 説æãªãåºãŠããããè£ã£ãŠããã
ãRete ã¢ã«ãŽãªãºã ãâ ã»Charles Forgy ã 1974幎ã«èæ¡ãã ãååãæšè«ïŒforward chainingïŒã®é«éåææ³ã ã»ã«ãŒã«ã®æ¡ä»¶éšãããããã¯ãŒã¯ç¶ã«å ±æããã ååã®è©äŸ¡çµæãããŒãã«ä¿æãã â ãã¡ã¯ãïŒããŒã¿ïŒã 1 ä»¶å€ãã£ããšãã ã圱é¿ããã«ãŒã«ã ããåè©äŸ¡ããã â å šã«ãŒã« Ã å šãã¡ã¯ãã®ç·åœãããé¿ãã ãåãåé¡ / åããªãåé¡ã åã ⊠ã«ãŒã«ããæ°çŸãæ°åãããã ãã¡ã¯ããå°ããã€å€åããŠãã åããªã ⊠ã«ãŒã«ãæ°åãããªã â ãçŽ çŽã« if ãæžããæ¹ãéããèªã¿ããããâ â ã¡ã¢ãªã倧éã«æ¶è²»ããç¹ã«ã泚æ ãçŸæ³ã ã»DroolsïŒçŸ Drools / KIEïŒã代衚çå®è£ ã»èšæ³ã¯ãDMNãïŒOMG æšæºïŒãžå¯ãã€ã€ãã â ãã·ãžã§ã³ ããŒãã«ãæšæºåããã ããŒã«éã®ç§»æ€æ§ãäžãã£ã â
-
ãŠãŒã¶ã»ãã¬ã³ããª
- å¯èŠæ§ããïŒä»æ§å®çŸ© â ã«ãŒã«å®çŸ©ãå®è£ ãžã®æ©æž¡ãã容æ
- ãã¹ãã¬ã¹ïŒä»æ§ç³»ãã°ã®ã¿å¯Ÿè±¡ããã³ãç³»ãã°ã¯ãã¹ãã¬ã¹
- ç·šéã»ãããã€ã容æïŒâ EUC 容æïŒ
-
ã«ãŒã«ãé »ç¹ã«å€ãã£ãŠå¯èŠåïŒä¿®æ£ãæã補åã¡ãªããã
éåžžã®ããã°ã©ã ãäžåãæ¥µçãç¯å²ã§æçšãšèããã
èªåçæããŒã«ãäœã«éãã眮ããŠãããã¯ãèªåçææ¹åŒã§å€§æ¹ã倿ã§ããã
ã¢ãžã¥ãŒã«èšèšæ å ±ãå ¥åãšãªããããã¢ãžã¥ãŒã«èšèšå·¥çšããã®çæçšéãšãªãã
-
ã¡ãªãã
-
Excel èšèšæžãéžæããçç±ã¯
èšèšãšå®è£ ã®ä¹é¢ãé²ãèšèšæžããã®çæã®ããã -
èšèšå·¥çšããã®èšèšæžããã®çæã¯ã
ãŠã©ãŒã¿ã»ãã©ãŒã«çãªéçºããã»ã¹ã«ã¯é©åããã
èšèšæ å ±ãä¿®æ£ããªããã®ã©ãŠã³ãããªããéçºã¯å°é£ã
-
-
ãã¡ãªãã
ãããã100ïŒ å šèªåçæã§ãªããã°ã-
ãããã¿ã€ãã³ã°ãã¹ãã€ã©ã«ãã¢ãžã£ã€ã«ãªã©ã®éçºããã»ã¹ã«é©åããªãã
ïŒããã¯ãåŸè¿°ããããã«ã©ãŠã³ãã»ããªããéçºãå°é£ã§ããããã§ããïŒ -
ã¢ãžã¥ãŒã«èšèšã¬ãã«ã®å·¥çšãå¿ é ã«ãªããå Žåã«ãã£ãŠã¯ã
ããŒãã³ãçžåœã®å·¥çšã»ã¹ãã«ãïŒéã«å¿ èŠã«ãªãã
-
è£è¶³ïŒExcel èšèšæžåãæ±ããæ§é çãªåé¡ïŒ: ãããŒãã³ãçžåœã®å·¥çšã
äºéã«å¿ èŠããšããææã«å ããŠãéçšäžã®åé¡ãããããExcel ããã¹ã¿ã«ããããšã®ä»£åãâ â ãå·®åãèŠããªãã â Git ã«å ¥ããŠããã€ããªæ±ã â 誰ãäœãå€ããã远ããªã â ã¬ãã¥ãŒãã§ããªã â â¡ ãããŒãžã§ããªãã â 䞊è¡äœæ¥ãäºå®äžã§ããªã â ããã¯éçšã«æ»ã ïŒâ [æ§æç®¡çããŒã«](MS_ConfigurationManagementTools)ïŒ â¢ ãå£ããã â ã»ã«çµåãæžåŒããã¯ããããŒãžã§ã³å·® â çæããŒã«ãããŒã¹ã«å€±æãã ⣠ãäºé管çã«ãªãã â å®è£ ãçŽãããèšèšæžãçŽãããå®ãããªã â ç®èã«ããèšèšãšå®è£ ã®ä¹é¢ãé²ãããšãã æ¬æ¥ã®ç®çãéæãããªã â ãçŸåšã®ä»£æ¿ã ã»ä»æ§ããããã¹ãïŒYAML / MarkdownïŒãã§æžã â OpenAPIãJSON SchemaãGherkinïŒåå ¥æ¡ä»¶ïŒ â å·®åã»ã¬ãã¥ãŒã»CI æ€èšŒããã¹ãŠå¯èœã«ãªã â ã»è¡šåœ¢åŒãèŠããªããCSV / TSVã ã»ã©ãããŠã Excel ãèŠããªã ãå ¥å UIããšããŠäœ¿ãã ããã¹ã¿ã¯ããã¹ãã«èœãšãã
éçºæã®èšèšæ å ±ãå ¥åãšãªããããéçºå·¥çšããã®çæçšéãšãªãã
-
ã¡ãªãã
- å
¥åã«ãã¶ã€ãæäœãéžæããçç±ã¯ã
èšèšãšå®è£ ã®ä¹é¢ã®é²æ¢ã§ã¯ãªããéçºã¹ããŒãåäžïŒRAD éçºïŒã®ããã - ããã°ã©ããéçºããŒã«ã®ã¹ãã«ã»ãããæºããã ãã§è¯ãã
- å·¥çšãè·šããªãã®ã§ããŠã©ãŒã¿ã»ãã©ãŒã«ã ãã§ãªãã
ãããã¿ã€ãã³ã°ãã¹ãã€ã©ã«ãã¢ãžã£ã€ã«ãªã©ã®éçºããã»ã¹ã«ãé©åããã
- å
¥åã«ãã¶ã€ãæäœãéžæããçç±ã¯ã
-
ãã¡ãªãã
- èšèšãšå®è£ ã®ä¹é¢ãé²ãä»çµã¿ã¯çšæãããŠããªãã
éçºæã®èšèšæ å ±ãå ¥åãšãªããããéçºå·¥çšããã®çæçšéãšãªãã
-
ã¹ããŒãå®çŸ©åã®çæ
- XSD ã¹ããŒããã³ãŒãã®èªåçæã®å ¥åãšãã
- ïŒèšèšãšå®è£ ã®ä¹é¢ã鲿¢ãã€ã€ãïŒ
- éçºã¹ããŒãåäžïŒRAD éçºïŒãåäžãããã
-
ã¡ãªãã
- å
¥åã«ã¹ããŒããéžæããçç±ã¯ã
èšèšãšå®è£ ã®ä¹é¢ãšãéçºã¹ããŒãåäžïŒRAD éçºïŒã®ããã - ã¹ããŒãå®çŸ©åã®çææ¹åŒã¯ä»çµã¿ããæãç°¡åã«ãªãã
- ããã°ã©ããéçºããŒã«ã®ã¹ãã«ã»ãããæºããã ãã§è¯ãã
- å·¥çšãè·šããªãã®ã§ããŠã©ãŒã¿ã»ãã©ãŒã«ã ãã§ãªãã
ãããã¿ã€ãã³ã°ãã¹ãã€ã©ã«ãã¢ãžã£ã€ã«ãªã©ã®éçºããã»ã¹ã«ãé©åããã
- å
¥åã«ã¹ããŒããéžæããçç±ã¯ã
-
ãã¡ãªãã
- èšèšæžãšå®è£ ã®ä¹é¢ãé²ãä»çµã¿ã¯çšæãããŠããªãã
è£è¶³ïŒã¹ããŒãå®çŸ©åãçŸåšã®äž»æµã§ããçç±ïŒ: ãä»çµã¿ãæãç°¡åã
ãšããè©äŸ¡ãããã®ãŸãŸæ®åã®çç±ã«ãªã£ãããçŸåšã®ä»£è¡šäŸãâ ã»ãOpenAPIãïŒæ§ SwaggerïŒ openapi.yaml â ã¯ã©ã€ã¢ã³ãïŒãµãŒãïŒ ããã¥ã¡ã³ãïŒã¢ãã¯ãçæ ã»ãgRPC / Protocol Buffersã .proto â å€èšèªã®ã¹ã¿ã ã»ãGraphQLã schema.graphql â åå®çŸ© ã»ãEF Coreã ã¢ãã« â ãã€ã°ã¬ãŒã·ã§ã³ â DDL ã»ãJSON Schemaã èšå®ãã¡ã€ã«ã®æ€èšŒãšè£å® ããªã匷ãã®ããâ â å ¥åããããã¹ããïŒ Git ã§ç®¡çã§ãã â¡ ãå¥çŽïŒcontractïŒãã®ãã®ããå ¥åã«ãªã â ãèšèšãšå®è£ ã®ä¹é¢ãã åççã«èµ·ãã«ãã â ïŒåæãããã¡ãªãããã«æããç¹ã¯ã ã¹ããŒããå¯äžã®çå®ã®æºãšããã°è§£æ¶ããïŒ â¢ çæç©ããæšãŠãŠäœãçŽããã â ã©ãŠã³ã ããªããã®å¿ èŠããªã ⣠èšèªã»ããŒã ãè·šãã â ããã³ãïŒããã¯ïŒã¢ãã€ã«ã åãã¹ããŒãããçæãã ãå®åäžã®éåãâ ã»çæãããã³ãŒãã¯ãç·šéããªãã ã»çæç©ãããªããžããªã«å«ãããããæ±ºããŠãã å«ãã ⊠差åãèŠãããCI ã軜ã å«ããªã ⊠ãªããžããªã綺éºãCI ã§æ¯åçæ ã»æ¡åŒµã¯ãpartial class / ç¶æ¿ / å¥ãã¡ã€ã«ãã§è¡ã
æã倧æãããªä»çµã¿ã§ã¯ãããã
ãªããžããªãšå°çšèšèšããŒã«ãçµã¿åããã
100ïŒ
å
šèªåçæããµããŒãããããŒã«ãå€ãã
詳ããã¯åŸè¿°ã®ãªããžããªåãåç §ã
èªåçææ¹åŒã«ãã£ãŠçæç¯å²ãç°ãªãã
æè»æ§ã¯ããããå°å
¥ã®ããã«å€ãã®ãµããŒããå¿
èŠã
瀟å
ã®æ²»å·¥å
·ããŒã«ã§ã¯ãã®èªåçææ¹åŒãå€ãã
-
ç¹åŸŽ
- åèšéçºã§ããããããªèŠä»¶ã«å¯Ÿå¿ããå¿
èŠãããããã«
ããã°ã©ãã³ã°ã§ã®å¯Ÿå¿ç¯å²ãåºããŠãããæè»æ§ãåºããŠããã - PJ æ¯ããã³ãã¬ãŒãã®ã«ã¹ã¿ãã€ãºãå¯èœãªä»æ§ãšãªã£ãŠããããšãå€ãã
- ãã®æè»æ§ãçºæ®ããã«ã¯ãéåãªãµããŒããå¿
èŠã«ãªããã
éåãªãµããŒããå¯èœãšãªã瀟å ã®æ²»å·¥å ·ããŒã«ã§ã¯ãã®èªåçææ¹åŒãå€ãã
- åèšéçºã§ããããããªèŠä»¶ã«å¯Ÿå¿ããå¿
èŠãããããã«
-
ã¡ãªãã
æè»æ§ãããã- ãã³ãã¬ãŒãã»ã«ã¹ã¿ãã€ãºãå°é£ããä»çµã¿ãçšæãããŠããã
- èªåçæã³ãŒãã®ã«ã¹ã¿ãã€ãºãå°é£ããä»çµã¿ãçšæãããŠããã
-
ãã¡ãªãã
- ã©ãŠã³ãã»ããªããéçºãžã®å¯Ÿå¿ãå¿ èŠã
- æ¡çšããããŒã«ã»ããã°ã©ãã³ã°ã®äž¡æ¹ã®ã¹ãã«ã»ãããå¿ èŠã
- ãã®ãã EUCãèšèšã»éçºã®åæ¥ã®äž¡æ¹ã«é©åããªããªã£ãŠããã
ãã¡ã€ã³ã«ç¹åããç¯å²ã§ 100ïŒ
èªåçæãªã®ã§ããã®ç¯å²ã§ããã°ã©ãã³ã°ã¯äžèŠãšãªãã
ãµããŒãã容æã«ãªãã®ã§è£œåç³»ã§ã¯ãã®èªåçææ¹åŒãå€ãã
-
ç¹åŸŽ
以äžã®èªåçææ¹åŒã«å€ãã-
瀟å ã®æ²»å·¥å ·ããŒã«
- EXCEL èšèšæžå
-
補å
- ãã¶ã€ãæäœå
- ã¹ããŒãå®çŸ©å
-
-
ã¡ãªãã
- èšèšã»éçºã®åæ¥ã«åããŠããã
- ã©ãŠã³ãã»ããªããéçºãäžèŠ
-
ãã¡ãªãã
-
EUC ã«åããŠããªãã
-
ããã°ã©ãã³ã°ãšæ¡çšããããŒã«ã«ç¹åããã¹ãã«ã»ãããå¿ èŠã
-
æè»æ§ãäœã
- ãã³ãã¬ãŒãã»ã«ã¹ã¿ãã€ãºãå°é£ããä»çµã¿ãçšæãããŠããªãã
- èªåçæã³ãŒãã®ã«ã¹ã¿ãã€ãºãå°é£ããä»çµã¿ãçšæãããŠããªãã
-
100ïŒ
å
šèªåçæãªã®ã§ãããã°ã©ãã³ã°ã¯äžåäžèŠãšãªãã
æè»æ§ã«é£ããããããµããŒãã容æã«ãªãã®ã§è£œåç³»ã§ã¯ãã®èªåçææ¹åŒãå€ãã
-
ã¡ãªãã
- EUC ã«åããŠããïŒãšè¬³ãããããšãå€ãïŒã
- ããã°ã©ãã³ã°ã®ã¹ãã«ã»ãããäžèŠã
- ã©ãŠã³ãã»ããªããéçºãäžèŠ
-
ãã¡ãªãã
-
èšèšã»éçºã®åæ¥ã«åããŠããªãã
-
æ¡çšããããŒã«ã«ç¹åããã¹ãã«ã»ãããå¿ èŠã
-
å®çŸ©ãããã°ã©ãã³ã°ãšåçã®äœæ¥ãå¿ èŠã§ããå®éã¯ããŸãæ¹åããªãã
-
æè»æ§ãäœã
- ãã³ãã¬ãŒãã»ã«ã¹ã¿ãã€ãºãå°é£ããä»çµã¿ãçšæãããŠããªãã
- èªåçæã³ãŒãã®ã«ã¹ã¿ãã€ãºãå°é£ããä»çµã¿ãçšæãããŠããªãã
-
è£è¶³ïŒãå®çŸ©ãããã°ã©ãã³ã°ãšåçã®äœæ¥ããšããææïŒ: ããã¯
ããŒã³ãŒãã»ããŒã³ãŒãã«ããã®ãŸãŸåœãŠã¯ãŸãæ®éçãªæŽå¯ã§ããããæ¬è³ªãâ ã»æ¥åããžãã¯ã®ãè€éãã®ç·éã¯æžããªãã ã»æžãããã®ã¯ - æ§æã®æèš - å®åã³ãŒãã®èšè¿° - ç°å¢æ§ç¯ ã»æžãããªãã®ã¯ - ãæ¥åã®åå²ã»äŸå€ã»æŽåæ§ãèããäœæ¥ãâ â ãããã°ã©ãã³ã°äžèŠã㯠ãèããªããŠãããã§ã¯ãªã ãäœãèµ·ãããã ã»GUI ã§è€éãªæ¡ä»¶åå²ãçµã â ã³ãŒããããèªã¿ã«ãããdiff ãåããªããâ â ãèŠããããã«ããã¯ãããèŠããªããªãã ã»çµå±ã詳ãã人ã 1 人ã ãçè§£ããŠããç¶æ ã«ãªã ã倿ã®ç®å®ãâ ã»ããžãã¯ããåçŽã§å®åã â ããŒã³ãŒããå¹ã ã»ããžãã¯ããè€éã»äŸå€ãå€ãã â ã³ãŒãã®æ¹ãå®ã ã»ãæ¥åéšéãèªåã§çŽããã æ¬åœã«éçšããããã確èªãã ïŒâ [RPA (Robotic Process Automation)](MS_RPA) ã® ãéè¯ãããããã®è°è«ãšåãæ§å³ïŒ
-
以äžã®ã©ã¡ãã®ã±ãŒã¹ãããã
- 100ïŒ å šèªåçæã®ããŒã«
- 100ïŒ å šèªåçæã§ã¯ãªãããŒã«
-
ããŒã«ã«ãã£ãŠã¯èšèšæ å ±ã®çæãå¯èœã«ãªã£ãŠããã
ãªããžããªåèªåçæããŒã«ã®åšèŸºèšèšããŒã«ïŒDB ããInterfaceïŒã®æäœã¯
- åºæ¬èšèšã»è©³çްèšèšã®èšèšå·¥çšã®äœæ¥ã§ã¯ãªãã
- ã¢ãžã¥ãŒã«èšèšå·¥çšä»¥éã®éçºå·¥çšã«è¿ãäœæ¥ã§ããã
- ããŒã«ã®å°éæ§ãïŒããçšåºŠïŒããã
ãšããäºãèãããšã
-
100ïŒ å šèªåçæã§ã¯ãªãããŒã«ã¯
éçºã¹ãã«ãïŒéã«èŠããïŒãã¡ãªãããããïŒãšã®èŠæ¹ãã§ããã -
äžæ¹ã§ã100ïŒ å šèªåçæã®ããŒã«ã¯ã
EUC çšéã§ã®å©çšãæ³å®ãããŠãããåèšéçºã®å·¥çšã®çµã¿æ¹ãšå€§ããç°ãªãã- ãããã®ããŒã«ã§ã¯ãEUC ã§åŸãããã¡ãªãããæå€§åããŠããã
- ãã¬ã³ãçã«ã¯ããã¥ã¢ãããããã¡ã³ããè¡°éã
EUC ããŒã«ãéçããŠãããšèããããã
ãªããžããªåèªåçæããŒã«ã§ã¯ã
ãªããžããªã®éçšïŒå€æŽæäœãžã®å¯Ÿå¿ïŒãå°é£ãšèšãããŠããã
- ããŒãž
- ããŒã«ããã¯
- .etc
ããŒã«ã®æ©èœæ¡å ã§å¯Ÿå¿ã§ããå¯èœæ§ãããããããŒã«ã¯è€éã«ãªã£ãŠããã
è£è¶³ïŒãã®ç¯ãæãéèŠïŒ: ãªããžããªåã®èŽåœå·ãç確ã«çªããŠããã
ããªãããŒãžã§ããªãã®ããâ ã»ãªããžããªã®å®äœã ãç¬èªåœ¢åŒã®ãã€ã㪠or RDBãã§ããããšãå€ã ã»ããã¹ãã®è¡åäœã®å·®åãåããªã â 3-way ããŒãžãåççã«ã§ããªã ã»ããŒã«ãç¬èªã®ããŒãžæ©èœãæã€å Žåã§ã - æå³ã®è¡çªïŒåãé ç®ãå¥ã®æå³ã§äœ¿ã£ãïŒã¯ æ©æ¢°çã«ã¯è§£æ±ºã§ããªã - ãããŒãžçµæã®åŠ¥åœæ§ãæ€èšŒã§ããªããâ ãçŸå Žã§äœãèµ·ãããã ã»ããªããžããªã¯ 1 人ããè§Šããªããéçšã«ãªã â ãã®äººãããã«ããã¯ã«ãªã â ã»ãã©ã³ããåããªãã®ã§ ã䞊è¡éçºãã§ããªãã ã»ããã¯ã¢ããããã®åŸ©å ïŒ å šå¡ã®äœæ¥ãæ¶ãã ããããŒã«ã¯è€éã«ãªã£ãŠããããšããäºæž¬ãâ â ãåœãã£ããã æ©èœãè¶³ãã»ã©åŠç¿ã³ã¹ããäžããã åããŒãžã®ããšã³ãžãã¢ãç¿åŸããªããæ§é ã«åµãŸã ïŒâ [éçºæ¯æŽããŒã«](MS_DevelopmentSupportTools)ïŒ ãçŸåšã®åçã ã»çå®ã®æºããããã¹ã ãã¡ã€ã«ãã«ãã â Git ãããŒãžã»ããŒã«ããã¯ã»ã¬ãã¥ãŒã ãã¹ãŠåŒãåãã â ã»ãªããžããªãèŠããªã ãGit ãã®ãã®ããªããžããªãšããŠäœ¿ãã ïŒèšèšæ å ±ã YAML ã§ã³ãããããïŒ
-
ãã³ãã¬ãŒãã»ãšã³ãžã³ã®æ©æ§ã¯ JSP ã ASP ã§
ïŒJavaãVBScript èšèªã§åçã«ïŒHTML ãçæããæ©æ§ã«è¿ãã -
ãã³ãã¬ãŒãã»ãšã³ãžã³ã»èšèªã®ç¿åŸãé£ããäºãããã¯ãšãªãã
EUC çãªãã³ãã¬ãŒãã»ã«ã¹ã¿ãã€ãºã¯å°é£ã
-
ç¬èªãã³ãã¬ãŒãã»ãšã³ãžã³
- èšèªãç¬èªãã³ãã¬ãŒãèšèªãšãªã£ãŠããç¿åŸãå°é£ã
- ãããã¬ã®æ©èœããªããšããåé¡ããããVBS åããããªã©ã®äºäŸãããã
- å¹³ããèšã£ãŠ â é£ããã
-
Apache Velocity ãã³ãã¬ãŒãã»ãšã³ãžã³
- å ¥å圢åŒã¯ JavaïŒVelocityContext çµç±ïŒã
- ãã³ãã¬ãŒãåŽã¯ Velocity VTL èšèªã䜵çšããã
- Console åºåãªã©ã䜿çšãããããã°ã¯äžå¯èœã
-
Eclipse JET ãã³ãã¬ãŒãã»ãšã³ãžã³
- å ¥å圢åŒã¯ XML 圢åŒãšãªã£ãŠããã
- ãã³ãã¬ãŒãåŽã¯ Java èšèªã§ç¿åŸã容æ
- Console åºåãªã©ã䜿çšãããããã°ãå¯èœã
-
ã¡ãªãã
å°ä»»è ãèªåçæã®ä»çµã¿ã沢山 [ äœã / ã«ã¹ã¿ãã€ãºãã ] å Žåã¯
æçšã§ãããšèããã -
ãã¡ãªãã
- ãã³ãã¬ãŒãã»ãšã³ãžã³ã»èšèªã®ç¿åŸãé£ããäºãããã¯ãšãªãã
EUC çãªã«ã¹ã¿ãã€ãºã¯å°é£ - ãã®ããã補åç³»ããŒã«ã§ã¯ã
æè»ãªãã³ãã¬ãŒãã»ã«ã¹ã¿ãã€ãºãã§ãããã®ã¯ååšããªãã - æ¡ãåŸãã¢ãŒããã¯ãã£ã®å€ã .NET ãã¯ãããžã§ã¯ã
ãã³ãã¬ãŒãã»ã«ã¹ã¿ãã€ãºæ¹åŒã§ã¯å°å ¥ãå°é£ã§ããã
- ãã³ãã¬ãŒãã»ãšã³ãžã³ã»èšèªã®ç¿åŸãé£ããäºãããã¯ãšãªãã
è£è¶³ïŒããã³ãã¬ãŒãèšèªãé£ããããžã®çŸåšã®åçïŒ: ãç¿åŸã³ã¹ãã
ããã¯ããšãã蚺æã¯æ£ããããã®åŸã®èšèšã¯ãããåé¿ããæ¹åã«é²ãã ããåé¿ã®æ¹åâ ïŒãã¹ãèšèªããã®ãŸãŸäœ¿ããâ ã»T4 â C# ããã®ãŸãŸåã蟌ã ã»Razor â C# ããã®ãŸãŸåã蟌ã ã»JSX / TSX â JavaScript ã®åŒ â ãæ°ããèšèªãèŠããªããŠããã â ãããã¬ã IntelliSense ããã®ãŸãŸå¹ã ïŒåæã Eclipse JET ãè©äŸ¡ããçç±ãšåãïŒâ ãåé¿ã®æ¹åâ¡ïŒãã³ãã¬ãŒããèŠããªããâ â ã»ããœãŒã¹ ãžã§ãã¬ãŒã¿ã â çæããžãã¯ã¯ C# ã®ã³ãŒã â ãã³ãã¬ãŒãèšèªãšããæŠå¿µããªã ã»ãã¹ãã£ãã©ãŒã«ãã£ã³ã°ã â çæã¯ 1 åããã以åŸã¯æ®éã®ã³ãŒã ãåé¿ã®æ¹åâ¢ïŒèªç¶èšèªã§æç€ºãããâ ã»AI ã³ãŒãçæ â ãã³ãã¬ãŒããæžã代ããã« ãèŠçŽãæç« ã§æžããïŒAGENTS.md çïŒ â ãç¿åŸã³ã¹ãããäºå®äžãŒãã«è¿ã¥ãã â ãã ããåºåã®éæ±ºå®æ§ããšãã æ°ããåé¡ãšåŒãæã ïŒâ [GitHub Copilot](MS_GitHubCopilot)ïŒ
Eclipse JET ãã³ãã¬ãŒãã»ãšã³ãžã³ã§ã¯
è¡åäœã®è¿œå ã»å€æŽã¯ã©ãŠã³ãã»ããªããå¯èœãšãªã£ãŠããã
- ã¯ã©ã¹ã»ã¡ãœããã®ã·ã°ããã£ãã
- ã¯ã©ã¹ã»ã¡ãœãããXML ãªã©ã®ãšã³ãã£ãã£ã®å±æ§ã®
ä¿®æ£ãªã©ã®è¡å éšã®çްããä¿®æ£ã«ã€ããŠã¯ãã©ãŠã³ãã»ããªããã§ããªãã
è£è¶³ïŒã©ãŠã³ã ããªããåé¡ã®ãæ£è§£ãïŒ: æ¬ããŒãžå šäœãéããŠ
ç¹°ãè¿ãçŸãããã®é£é¡ã«ã¯ãçŸåšã§ã¯å®ç³ãããããåé¡ã®æ§é ãâ çæã³ãŒã ââæã§ä¿®æ£âââ çæã³ãŒã(æ¹) â â âââåçæãããšãäžæžãã§æ¶ããã ãè§£ â çæç©ãšææžããç©ççã«åãããâ â ã»ãpartial classã Foo.g.cs ⊠çæïŒæ¯åäžæžãïŒ Foo.cs âŠ ææžãïŒè§ŠãããªãïŒ â Visual Studio ã®ãã¶ã€ãã æãããã®æ¹åŒãæ¡ã£ãŠãã ïŒ.designer.csïŒ ã»ãpartial methodã/ ä»®æ³ã¡ãœãã â çæåŽãæ¡åŒµç¹ãçšæãã ãè§£ â¡ çæç©ãç¶æ¿ããã ã»çæã¯ã©ã¹ãåºåºã«ããŠæŽŸçã¯ã©ã¹ã«æãå ¥ãã ãè§£ ⢠çæç©ãä¿å®ããªããâ ã»ãœãŒã¹ ãžã§ãã¬ãŒã¿ â ãããããã¡ã€ã«ãšããŠååšããªã â ãã©ãŠã³ã ããªãããçºçãåŸãªãã ãè§£ ⣠çæç©ããäœ¿ãæšãŠãã«ããã ã»ã¹ãã£ãã©ãŒã«ãã£ã³ã° â æåã® 1 åã ãçæãã以åŸã¯æã§ä¿å®ãã â ãåçæããªãããšå²ãåã ãã¢ã³ããã¿ãŒã³ãâ ã»çæã³ãŒãã« ã// ããããäžã¯ç·šéããªãã§ãã ããããšæžãã ã â å¿ ãç·šéããã â ãä»çµã¿ã§å®ããïŒå¥ãã¡ã€ã«ã«ããïŒ
Tags: ç§»è¡, .NETéçº, ããŒã«é¡, ãã®ä»ãéçºã®è²ã