Language
Note
ãã®ããŒãžã«ã¢ã¯ã»ã¹ããã«ã¯ãæ¿èªãå¿ èŠã§ãã ãµã€ã³ã€ã³ãŸãã¯ãã£ã¬ã¯ããªã®å€æŽã詊ãããšãã§ããŸãã
ãã®ããŒãžã«ã¢ã¯ã»ã¹ããã«ã¯ãæ¿èªãå¿ èŠã§ãã ãã£ã¬ã¯ããªã®å€æŽã詊ãããšãã§ããŸãã
ãã®ãã¥ãŒããªã¢ã«ã§ã¯ã1 ã€ã®æåååŠçã¡ãœãããå«ãåçŽãªãŠãŒãã£ãªã㣠ã©ã€ãã©ãªãäœæããŸãã
ã¯ã©ã¹ ã©ã€ãã©ãª ã¯ãã¢ããªã±ãŒã·ã§ã³ã«ãã£ãŠåŒã³åºãããåãšã¡ãœãããå®çŸ©ããŸãã ã©ã€ãã©ãªã Standard 2.0 .NETã¿ãŒã²ããã§ããå Žåã¯ã.NET Standard 2.0 ããµããŒãããä»»æã®.NETå®è£ (.NET Framework ãå«ã) ã«ãã£ãŠåŒã³åºãããšãã§ããŸãã ã©ã€ãã©ãªã.NET 10 ã察象ãšããå Žåã¯ã.NET 10 ã察象ãšããä»»æã®ã¢ããªã±ãŒã·ã§ã³ããåŒã³åºãããšãã§ããŸãã ãã®ãã¥ãŒããªã¢ã«ã§ã¯ã.NET 10 ãã¿ãŒã²ããã«ããæ¹æ³ã«ã€ããŠèª¬æããŸãã
ã¯ã©ã¹ ã©ã€ãã©ãªãäœæããå Žåã¯ããµãŒã ããŒãã£ã®ã³ã³ããŒãã³ããšããŠããŸã㯠1 ã€ä»¥äžã®ã¢ããªã±ãŒã·ã§ã³ã«ãã³ãã«ãããã³ã³ããŒãã³ããšããŠé åžã§ããŸãã
[åææ¡ä»¶]
Visual Studio.NET ãã¹ã¯ãããéçº ã¯ãŒã¯ããŒããã€ã³ã¹ããŒã«ãããŠããŸãã ãã®ã¯ãŒã¯ããŒããéžæãããšã.NET SDK ãèªåçã«ã€ã³ã¹ããŒã«ãããŸãã
詳现ã«ã€ããŠã¯ãã
Visual Studio ãåç §ããŠãã ããã
- ææ°ã® .NET SDK
- Visual Studio Code ãšãã£ã¿ãŒ
- C# DevKit
ã€ã³ã¹ããŒã«æé
Windowsããã®WinGet æ§æãã¡ã€ã«ã¯ããã¹ãŠã®åææ¡ä»¶ãã€ã³ã¹ããŒã«ããŸãã æ¢ã«äœããã€ã³ã¹ããŒã«ãããŠããå ŽåãWinGet ã¯ãã®æé ãã¹ãããããŸãã
- ãã¡ã€ã«ãããŠã³ããŒãããããã«ã¯ãªãã¯ããŠå®è¡ããŸãã
- 䜿çšèš±è«Ÿå¥çŽæžãèªã¿ãy ãšå ¥åããåæãæ±ããããã Enter ããŒãéžæããŸãã
- ã¿ã¹ã¯ ããŒã§ç¹æ» ãããŠãŒã¶ãŒ ã¢ã«ãŠã³ãå¶åŸ¡ (UAC) ããã³ããã衚瀺ãããå Žåã¯ãã€ã³ã¹ããŒã«ãç¶è¡ããŸãã
ä»ã®ãã©ãããã©ãŒã ã§ã¯ããããã®åã³ã³ããŒãã³ããåå¥ã«ã€ã³ã¹ããŒã«ããå¿ èŠããããŸãã
- æšå¥šãããã€ã³ã¹ããŒã©ãŒã .NET SDK ããŠã³ããŒã ããŒãžããããŠã³ããŒãããããã«ã¯ãªãã¯ããŠå®è¡ããŸãã ããŠã³ããŒã ããŒãžã§ãã©ãããã©ãŒã ãæ€åºããããã©ãããã©ãŒã ã®ææ°ã®ã€ã³ã¹ããŒã©ãŒãæšå¥šãããŸãã
- Visual Studio CodeããŒã ããŒãžããææ°ã®ã€ã³ã¹ããŒã©ãŒãããŠã³ããŒãããããã«ã¯ãªãã¯ããŠå®è¡ããŸãã ãã®ããŒãžã§ã¯ãã©ãããã©ãŒã ãæ€åºããããªã³ã¯ã¯ã·ã¹ãã ã«é©ããŠããå¿ èŠããããŸãã
- C# DevKit æ¡åŒµæ©èœããŒãžã® [ã€ã³ã¹ããŒã«] ãã¿ã³ãã¯ãªãã¯ããŸãã Visual Studio Codeãéããæ¡åŒµæ©èœãã€ã³ã¹ããŒã«ãããæå¹ã«ããããå°ããã¡ãã»ãŒãžã衚瀺ãããŸãã [ã€ã³ã¹ããŒã«] ãéžæããŸãã
- GitHub Codespaces ã䜿çšããGitHub ã¢ã«ãŠã³ãã ãŸã ãæã¡ã§ãªãå Žåã¯ãGitHub.com ã§ç¡æã¢ã«ãŠã³ããäœæã§ããŸãã
ãœãªã¥ãŒã·ã§ã³ãäœæãã
ãŸããã¯ã©ã¹ ã©ã€ãã©ãª ãããžã§ã¯ããä¿æãã空ã®ãœãªã¥ãŒã·ã§ã³ãäœæããŸãã Visual Studio ãœãªã¥ãŒã·ã§ã³ã¯ã1 ã€ä»¥äžã®ãããžã§ã¯ãã®ã³ã³ãããŒãšããŠæ©èœããŸãã é¢é£ãããããžã§ã¯ããåããœãªã¥ãŒã·ã§ã³ã«è¿œå ããŸãã
空ã®ãœãªã¥ãŒã·ã§ã³ãäœæããã«ã¯:
Visual Studioãéå§ããŸãã
ã¹ã¿ãŒã ãŠã£ã³ããŠã§ã[æ°ãããããžã§ã¯ã
äœæ] ãéžæããŸãã [æ°ãããããžã§ã¯ã ã®äœæ] ããŒãžã§ãæ€çŽ¢ããã¯ã¹ ãœãªã¥ãŒã·ã§ã³ ãå ¥åããŸãã 空çœã®ãœãªã¥ãŒã·ã§ã³ ãã³ãã¬ãŒããéžæããæ¬¡ã« [次ãž]ãéžæããŸãã
[æ°ãããããžã§ã¯ã ã®æ§æ] ããŒãžã§ã[ãœãªã¥ãŒã·ã§ã³å] ããã¯ã¹ã«ãClassLibraryProjectsããšå ¥åããŸãã æ¬¡ã«ããéžæããŠããäœæããŸãã
ãŸãã"StringLibrary" ãšããååã®.NET ã¯ã©ã¹ ã©ã€ãã©ãª ãããžã§ã¯ããšãé¢é£ä»ããããŠãããœãªã¥ãŒã·ã§ã³ãäœæããŸãã ãœãªã¥ãŒã·ã§ã³ã¯ã1 ã€ä»¥äžã®ãããžã§ã¯ãã®ã³ã³ãããŒãšããŠæ©èœããŸãã é¢é£ãããããžã§ã¯ããåããœãªã¥ãŒã·ã§ã³ã«è¿œå ããŸãã
Visual Studio Codeãéå§ããŸãã
ãšã¯ã¹ãããŒã©ãŒ ãã¥ãŒã«ç§»åãã[ãããžã§ã¯ãã® .NETäœæ] ãéžæ>ã ãŸãã¯ãCtrl + Shift + P (MacOS ã®å Žå㯠Command + Shift + P) ã䜿çšããŠã³ãã³ã ãã¬ããã衚瀺ããã.NETããšå ¥åãã.NET: [æ°ãããããžã§ã¯ã] ã³ãã³ããèŠã€ããŠéžæããããšãã§ããŸãã
ãããžã§ã¯ã ãã³ãã¬ãŒãã® ã¯ã©ã¹ ã©ã€ãã©ãªãéžæããŸãã
次ã«ãæ°ãããããžã§ã¯ããäœæããå ŽæãéžæããŸãã
ClassLibraryProjectsãšããååã®ãã©ã«ããŒãäœæããŠéžæããŸãããããžã§ã¯ãã« StringLibrary ãšããååãä»ããŸãã
ãœãªã¥ãŒã·ã§ã³ ãã¡ã€ã«åœ¢åŒãšã㊠.sln ãéžæããŸãã
[ ãã¹ãŠã®ãã³ãã¬ãŒã ãªãã·ã§ã³ã衚瀺] ãéžæããŸãã
次ã«ã.NET 10 ãéžæããŸãã æ¬¡ã«ã[ ãããžã§ã¯ãã®äœæ] ãéžæããŸãã
[ ãã®ãã©ã«ããŒå ã®ãã¡ã€ã«ã®äœæè ãä¿¡é ŒããŸãã? ] ãã€ã¢ãã°ã§ã[ ã¯ããäœæè ãä¿¡é ŒããŸã] ãéžæããŸãã ãã®ãã©ã«ããŒã«ã¯ã.NETã«ãã£ãŠçæããããŠãŒã¶ãŒã«ãã£ãŠè¿œå ãŸãã¯å€æŽããããã¡ã€ã«ã®ã¿ãå«ãŸããŠãããããäœæè ãä¿¡é Œã§ããŸãã
ãŸãããã¥ãŒããªã¢ã«ç°å¢ã§ GitHub Codespace ãäœæããŠããã.NET ã¯ã©ã¹ ã©ã€ãã©ãª ãããžã§ã¯ããäœæããŸãã
ãã©ãŠã¶ãŒ ãŠã£ã³ããŠãéãããã¥ãŒããªã¢ã«ã® codespace ãªããžããªã«ç§»åããŸãã
ç·è²ã® [ã³ãŒã ] ãã¿ã³ãéžæãã[ Codespaces ] ã¿ããéžæããŸãã
ãã®ç°å¢ã䜿çšããŠæ°ãã Codespace ãäœæããã«ã¯ã
+èšå·ãŸã㯠ç·è²ã® [ã¡ã€ã³ã®ã³ãŒãã¹ããŒã¹ ã®äœæ] ãã¿ã³ãéžæããŸãã
codespace ãèªã¿èŸŒãŸããããã¿ãŒããã«ãéããtutorials ãã©ã«ããŒã«ç§»åããŸãã
cd tutorialsæ°ããã¯ã©ã¹ ã©ã€ãã©ãª ãããžã§ã¯ããäœæããŸãã
dotnet new classlib -n StringLibrary
ã¯ã©ã¹ ã©ã€ãã©ãª ãããžã§ã¯ããäœæãã
StringLibrary ãšããååã®æ°ãã.NET ã¯ã©ã¹ ã©ã€ãã©ãª ãããžã§ã¯ãããœãªã¥ãŒã·ã§ã³ã«è¿œå ããŸãã
Solution Explorer ã§ãœãªã¥ãŒã·ã§ã³ãå³ã¯ãªãã¯ããAdd>New Project ãéžæããŸãã
[æ°ãããããžã§ã¯ã ã®è¿œå ] ããŒãžã§ãæ€çŽ¢ããã¯ã¹ ã©ã€ãã©ãª ãå ¥åããŸãã èšèªã®äžèЧãã C# ãŸã㯠Visual Basic ãéžæãããã©ãããã©ãŒã ã®äžèЧãã All platforms ãéžæããŸãã [ã¯ã©ã¹ ã©ã€ãã©ãª] ãã³ãã¬ãŒããéžãã§ããã[次ãž] ãéžæããŸãã
[æ°ãããããžã§ã¯ã ã®æ§æ] ããŒãžã§ã[ãããžã§ã¯ãå] ããã¯ã¹ã« ãStringLibraryã ãå ¥åãã[次ãž]ãéžæããŸãã
è¿œå æ å ± ããŒãžã§ã.NET 10 ãéžæãã Create ãéžæããŸãã
ã©ã€ãã©ãªãæ£ããããŒãžã§ã³ã®.NETã察象ãšããŠããããšã確èªããŸãã Solution Explorerã§ã©ã€ãã©ãª ãããžã§ã¯ããå³ã¯ãªãã¯ãã PropertiesãéžæããŸãã Target Framework ããã¹ã ããã¯ã¹ã«ã¯ããããžã§ã¯ãã®ã¿ãŒã²ããã 10.0 .NET瀺ãããŸãã
Visual Basicã䜿çšããŠããå Žåã¯ãDefault åå空é ããã¹ã ããã¯ã¹ã®ããã¹ããã¯ãªã¢ããŸãã
ã¯ã©ã¹ ã©ã€ãã©ãª ã®ãããžã§ã¯ãããããã£ã
ã«èšå®ãã ãããžã§ã¯ãããšã«ãVisual Basicãããžã§ã¯ãåã«å¯Ÿå¿ããåå空éãèªåçã«äœæãããŸãã ãã®ãã¥ãŒããªã¢ã«ã§ã¯ãã³ãŒã ãã¡ã€ã«ã§
namespaceããŒã¯ãŒãã䜿çšããŠãæäžäœã¬ãã«ã®åå空éãå®çŸ©ããŸããClass1.cs ãŸã㯠Class1.vb ã®ã³ãŒã ãŠã£ã³ããŠã®ã³ãŒããæ¬¡ã®ã³ãŒãã«çœ®ãæãããã¡ã€ã«ãä¿åããŸãã 䜿çšããèšèªã衚瀺ãããªãå Žåã¯ãããŒãžã®äžéšã«ããèšèªã»ã¬ã¯ã¿ãŒã倿ŽããŸãã
namespace UtilityLibraries; public static class StringLibrary { public static bool StartsWithUpper(this string? str) { if (string.IsNullOrWhiteSpace(str)) return false; return char.IsUpper(str[0]); } }Imports System.Runtime.CompilerServices Namespace UtilityLibraries Public Module StringLibrary <Extension> Public Function StartsWithUpper(str As String) As Boolean If String.IsNullOrWhiteSpace(str) Then Return False End If Dim ch As Char = str(0) Return Char.IsUpper(ch) End Function End Module End Namespaceã¯ã©ã¹ ã©ã€ãã©ãª
UtilityLibraries.StringLibraryã«ã¯ãStartsWithUpperãšããååã®ã¡ãœãããå«ãŸããŠããŸãã ãã®ã¡ãœããã¯ãçŸåšã®æååã€ã³ã¹ã¿ã³ã¹ã倧æåã§å§ãŸããã©ããã瀺ã Boolean å€ãè¿ããŸãã Unicode æšæºã§ã¯ã倧æåãšå°æåãåºå¥ãããŸãã Char.IsUpper(Char) ã¡ãœããã¯ãæåã倧æåã®å Žåã¯trueãè¿ããŸããã¯ã ã¯ã©ã¹ã®ã¡ã³ããŒã§ãããã®ããã«åŒã³åºãããšãã§ããããã«ã æ¡åŒµã¡ãœãããšããŠå®è£ ãããŸãã C# ã³ãŒãã§ ?ããåŸã®çå笊 (string) ã¯ãæååã null ã§ããå¯èœæ§ãããããšã瀺ããŸããã¡ãã¥ãŒ ããŒã§ã[ãã«ã>] ã® [ãã«ã ãœãªã¥ãŒã·ã§ã³] ãéžæããããCtrl+Shift+B ããŒãæŒããŠããããžã§ã¯ãããšã©ãŒãªãã³ã³ãã€ã«ãããããšã確èªããŸãã
ãããžã§ã¯ããäœæããã Class1.cs ãéããŸãã
Class1.csã®å å®¹ãæ¬¡ã®ã³ãŒãã«çœ®ãæããŸãã
namespace UtilityLibraries; public static class StringLibrary { public static bool StartsWithUpper(this string? str) { if (string.IsNullOrWhiteSpace(str)) return false; return char.IsUpper(str[0]); } }ã¯ã©ã¹ ã©ã€ãã©ãª
UtilityLibraries.StringLibraryã«ã¯ãStartsWithUpperãšããååã®ã¡ãœãããå«ãŸããŠããŸãã ãã®ã¡ãœããã¯ãçŸåšã®æååã€ã³ã¹ã¿ã³ã¹ã倧æåã§å§ãŸããã©ããã瀺ã Boolean å€ãè¿ããŸãã Unicode æšæºã§ã¯ã倧æåãšå°æåãåºå¥ãããŸãã Char.IsUpper(Char) ã¡ãœããã¯ãæåã倧æåã®å Žåã¯trueãè¿ããŸããã¯ã ã¯ã©ã¹ã®ã¡ã³ããŒã§ãããã®ããã«åŒã³åºãããšãã§ããããã«ã æ¡åŒµã¡ãœãããšããŠå®è£ ãããŸãã ãã¡ã€ã«ãä¿åããŸãã
å±éããŸã Solution Explorer 㯠Explorer ãã¥ãŒã®äžéšã«ãããŸãã
Solution Explorer ã§ãœãªã¥ãŒã·ã§ã³ãå³ã¯ãªãã¯ããBuild ãéžæããããã³ãã³ã ãã¬ãããéã㊠.NET: Build ãéžæããŠãœãªã¥ãŒã·ã§ã³ããã«ããããããžã§ã¯ãããšã©ãŒãªãã§ã³ã³ãã€ã«ãããããšã確èªããŸãã
ã¿ãŒããã«åºåã¯æ¬¡ã®äŸã®ããã«ãªããŸãã
Determining projects to restore... All projects are up-to-date for restore. StringLibrary -> C:\Projects\ClassLibraryProjects\StringLibrary\bin\Debug\net10.0\StringLibrary.dll Build succeeded. 0 Warning(s) 0 Error(s) Time Elapsed 00:00:02.78
StringLibrary ãã©ã«ããŒã«ç§»åããŸãã
cd StringLibraryClass1.csãéãããã®å å®¹ãæ¬¡ã®ã³ãŒãã«çœ®ãæããŸãã
namespace UtilityLibraries; public static class StringLibrary { public static bool StartsWithUpper(this string? str) { if (string.IsNullOrWhiteSpace(str)) return false; return char.IsUpper(str[0]); } }ã¯ã©ã¹ ã©ã€ãã©ãª
UtilityLibraries.StringLibraryã«ã¯ãStartsWithUpperãšããååã®ã¡ãœãããå«ãŸããŠããŸãã ãã®ã¡ãœããã¯ãçŸåšã®æååã€ã³ã¹ã¿ã³ã¹ã倧æåã§å§ãŸããã©ããã瀺ã Boolean å€ãè¿ããŸãã Unicode æšæºã§ã¯ã倧æåãšå°æåãåºå¥ãããŸãã Char.IsUpper(Char) ã¡ãœããã¯ãæåã倧æåã®å Žåã¯trueãè¿ããŸããã¯ã ã¯ã©ã¹ã®ã¡ã³ããŒã§ãããã®ããã«åŒã³åºãããšãã§ããããã«ã æ¡åŒµã¡ãœãããšããŠå®è£ ãããŸãã ãã¡ã€ã«ãä¿åãããããžã§ã¯ãããã«ãããŸãã
dotnet buildãã«ãã¯ãšã©ãŒãªãã§æåããã¯ãã§ãã
ãœãªã¥ãŒã·ã§ã³ã«ã³ã³ãœãŒã« ã¢ããªã远å ãã
ã¯ã©ã¹ ã©ã€ãã©ãªã䜿çšããã³ã³ãœãŒã« ã¢ããªã±ãŒã·ã§ã³ã远å ããŸãã ã¢ããªã¯ãŠãŒã¶ãŒã«æååã®å ¥åãæ±ããæååã倧æåã§å§ãŸããã©ãããå ±åããŸãã
ShowCase ãšããååã®æ°ãã.NET ã³ã³ãœãŒã« ã¢ããªã±ãŒã·ã§ã³ããœãªã¥ãŒã·ã§ã³ã«è¿œå ããŸãã
Solution Explorer ã§ãœãªã¥ãŒã·ã§ã³ãå³ã¯ãªãã¯ããAdd>New Project ãéžæããŸãã
[æ°ãããããžã§ã¯ã ã®è¿œå ] ããŒãžã§ãæ€çŽ¢ããã¯ã¹ã« ã³ã³ãœãŒã« ãå ¥åããŸãã èšèªã®äžèЧãã C# ãŸã㯠Visual Basic ãéžæãããã©ãããã©ãŒã ã®äžèЧãã All platforms ãéžæããŸãã
ã³ã³ãœãŒã« ã¢ã㪠ãã³ãã¬ãŒããéžæãã[次ãž]éžæããŸãã [æ°ãããããžã§ã¯ãã®æ§æ] ããŒãžã§ã[ãããžã§ã¯ãå] ããã¯ã¹ã«ãShowCaseããšå ¥åããŸãã [次ãž] ãéžã³ãŸãã
[è¿œå æ å ±] ããŒãžã§ãFramework ããã¯ã¹ã§ .NET 10 ãéžæããŸãã æ¬¡ã«ããéžæããŠããäœæããŸãã
Program.cs ãŸã㯠Program.vb ãã¡ã€ã«ã®ã³ãŒã ãŠã£ã³ããŠã§ããã¹ãŠã®ã³ãŒããæ¬¡ã®ã³ãŒãã«çœ®ãæããŸãã
using System; using UtilityLibraries; int row = 0; do { if (row == 0 || row >= 25) ResetConsole(); string? input = Console.ReadLine(); if (string.IsNullOrWhiteSpace(input)) break; Console.WriteLine($"Input: {input} {"Begins with uppercase? ",30}: " + $"{(input.StartsWithUpper() ? "Yes" : "No")}{Environment.NewLine}"); row += 3; } while (true); return; // Declare a ResetConsole local method void ResetConsole() { if (row > 0) { Console.WriteLine("Press any key to continue..."); Console.ReadKey(); } Console.Clear(); Console.WriteLine($"{Environment.NewLine}Press <Enter> only to exit; otherwise, enter a string and press <Enter>:{Environment.NewLine}"); row = 3; }Imports UtilityLibraries Module Program Dim row As Integer = 0 Sub Main() Do If row = 0 OrElse row >= 25 Then ResetConsole() Dim input As String = Console.ReadLine() If String.IsNullOrEmpty(input) Then Return Console.WriteLine($"Input: {input} {"Begins with uppercase? ",30}: " + $"{If(input.StartsWithUpper(), "Yes", "No")} {Environment.NewLine}") row += 3 Loop While True End Sub Private Sub ResetConsole() If row > 0 Then Console.WriteLine("Press any key to continue...") Console.ReadKey() End If Console.Clear() Console.WriteLine($"{Environment.NewLine}Press <Enter> only to exit; otherwise, enter a string and press <Enter>:{Environment.NewLine}") row = 3 End Sub End Moduleãã®ã³ãŒãã§ã¯ã
row倿°ã䜿çšããŠãã³ã³ãœãŒã« ãŠã£ã³ããŠã«æžã蟌ãŸããããŒã¿è¡ã®æ°ãä¿æããŸãã 25 以äžã®å Žåã¯åžžã«ãã³ã³ãœãŒã« ãŠã£ã³ããŠãã¯ãªã¢ããããŠãŒã¶ãŒã«ã¡ãã»ãŒãžã衚瀺ãããŸããããã°ã©ã ã¯ããŠãŒã¶ãŒã«æååã®å ¥åãæ±ããŸãã æååã倧æåã§å§ãŸããã©ããã瀺ããŸãã ãŠãŒã¶ãŒãæååãå ¥åããã« Enter ããŒãæŒããšãã¢ããªã±ãŒã·ã§ã³ãçµäºããã³ã³ãœãŒã« ãŠã£ã³ããŠãéããŸãã
Solution Explorer æ°ãããããžã§ã¯ã ãéžæããããã³ãã³ã ãã¬ããã§.NET: æ°ãããããžã§ã¯ã ãéžæããŸãã[ã³ã³ãœãŒã« ã¢ããª] ãéžæããŸãã
ShowCase ãšããååãä»ããæ¢å®ã®ãã£ã¬ã¯ããªãéžæãã[ãããžã§ã¯ãã®äœæ] ãéžæããŸãã
ShowCase/Program.cs
éãããã¹ãŠã®ã³ãŒããæ¬¡ã®ã³ãŒãã«çœ®ãæããŸãã using System; using UtilityLibraries; int row = 0; do { if (row == 0 || row >= 25) ResetConsole(); string? input = Console.ReadLine(); if (string.IsNullOrWhiteSpace(input)) break; Console.WriteLine($"Input: {input} {"Begins with uppercase? ",30}: " + $"{(input.StartsWithUpper() ? "Yes" : "No")}{Environment.NewLine}"); row += 3; } while (true); return; // Declare a ResetConsole local method void ResetConsole() { if (row > 0) { Console.WriteLine("Press any key to continue..."); Console.ReadKey(); } Console.Clear(); Console.WriteLine($"{Environment.NewLine}Press <Enter> only to exit; otherwise, enter a string and press <Enter>:{Environment.NewLine}"); row = 3; }ãã®ã³ãŒãã§ã¯ã
row倿°ã䜿çšããŠãã³ã³ãœãŒã« ãŠã£ã³ããŠã«æžã蟌ãŸããããŒã¿è¡ã®æ°ãä¿æããŸãã 25 以äžã®å Žåã¯åžžã«ãã³ã³ãœãŒã« ãŠã£ã³ããŠãã¯ãªã¢ããããŠãŒã¶ãŒã«ã¡ãã»ãŒãžã衚瀺ãããŸããããã°ã©ã ã¯ããŠãŒã¶ãŒã«æååã®å ¥åãæ±ããŸãã æååã倧æåã§å§ãŸããã©ããã瀺ããŸãã ãŠãŒã¶ãŒãæååãå ¥åããã« Enter ããŒãæŒããšãã¢ããªã±ãŒã·ã§ã³ãçµäºããã³ã³ãœãŒã« ãŠã£ã³ããŠãéããŸãã
倿Žãä¿åã
tutorials ãã©ã«ããŒã«æ»ããæ°ããã³ã³ãœãŒã« ã¢ããªãäœæããŸãã
cd .. dotnet new console -n ShowCaseShowCase/Program.cs ãéãããã¹ãŠã®ã³ãŒããæ¬¡ã®ã³ãŒãã«çœ®ãæããŸãã
using System; using UtilityLibraries; int row = 0; do { if (row == 0 || row >= 25) ResetConsole(); string? input = Console.ReadLine(); if (string.IsNullOrWhiteSpace(input)) break; Console.WriteLine($"Input: {input} {"Begins with uppercase? ",30}: " + $"{(input.StartsWithUpper() ? "Yes" : "No")}{Environment.NewLine}"); row += 3; } while (true); return; // Declare a ResetConsole local method void ResetConsole() { if (row > 0) { Console.WriteLine("Press any key to continue..."); Console.ReadKey(); } Console.Clear(); Console.WriteLine($"{Environment.NewLine}Press <Enter> only to exit; otherwise, enter a string and press <Enter>:{Environment.NewLine}"); row = 3; }ãã®ã³ãŒãã§ã¯ã
row倿°ã䜿çšããŠãã³ã³ãœãŒã« ãŠã£ã³ããŠã«æžã蟌ãŸããããŒã¿è¡ã®æ°ãä¿æããŸãã 25 以äžã®å Žåã¯åžžã«ãã³ã³ãœãŒã« ãŠã£ã³ããŠãã¯ãªã¢ããããŠãŒã¶ãŒã«ã¡ãã»ãŒãžã衚瀺ãããŸããããã°ã©ã ã¯ããŠãŒã¶ãŒã«æååã®å ¥åãæ±ããŸãã æååã倧æåã§å§ãŸããã©ããã瀺ããŸãã ãŠãŒã¶ãŒãæååãå ¥åããã« Enter ããŒãæŒããšãã¢ããªã±ãŒã·ã§ã³ãçµäºããã³ã³ãœãŒã« ãŠã£ã³ããŠãéããŸãã
倿Žãä¿åã
ãããžã§ã¯ãåç §ã远å ãã
æåã¯ãæ°ããã³ã³ãœãŒã« ã¢ã㪠ãããžã§ã¯ãã«ã¯ã¯ã©ã¹ ã©ã€ãã©ãªãžã®ã¢ã¯ã»ã¹æš©ããããŸããã ã¯ã©ã¹ ã©ã€ãã©ãªå ã®ã¡ãœãããåŒã³åºããããã«ããã«ã¯ãã¯ã©ã¹ ã©ã€ãã©ãª ãããžã§ã¯ããžã®ãããžã§ã¯ãåç §ãäœæããŸãã
Solution Explorer ã§ã
ShowCaseãããžã§ã¯ãã® Dependencies ããŒããå³ã¯ãªãã¯ãããããžã§ã¯ãåç §ã®è¿œå ãéžæããŸãã
[åç §ãããŒãžã£ãŒ] ãã€ã¢ãã° ããã¯ã¹ã§ã[StringLibrary] ãããžã§ã¯ããéžã³ã[OK] ãéžã³ãŸãã
Solution Explorer ShowCase ãããžã§ã¯ããå³ã¯ãªãã¯ãããããžã§ã¯ãåç §ã®è¿œå ãéžæããŸããStringLibrary ãéžæããŸãã
ãã³ã
ãŸãã¯ã ShowCase.csproj ã«æ¬¡ã®ã³ãŒãã远å ããŸãã
<ItemGroup>
<ProjectReference Include="..\StringLibrary\StringLibrary.csproj" />
</ItemGroup>
ShowCase ãããžã§ã¯ããã StringLibrary ãããžã§ã¯ããžã®åç §ã远å ããŸãã
cd ShowCase
dotnet add reference ../StringLibrary/StringLibrary.csproj
ã¢ããªãå®è¡ãã
Solution Explorer ã§ãShowCase ãããžã§ã¯ããå³ã¯ãªãã¯ããã³ã³ããã¹ã ã¡ãã¥ãŒã§ Set as StartUp Project ãéžæããŸãã
Ctrl
F5 æŒããŠããããã°ãªãã§ããã°ã©ã ãã³ã³ãã€ã«ããŠå®è¡ããŸãã æååãå ¥åããŠEnterããŒãæŒããšããã°ã©ã ã詊ãããšãã§ããçµäºããã«ã¯EnterããŒãæŒããŸãã
äžéšã®ã¡ãã¥ãŒ ããŒã䜿çšããŠã[ å®è¡>ãããã°ãªãã§å®è¡] ãéžæããŸãã
C#ãéžæããŸãã
[C#: ShowCase] ãéžæããŸãã
C# ããã°ã©ã ãèªã¿èŸŒãŸããŠããªããšãããšã©ãŒãçºçããå Žåã¯ãéããŠãããã©ã«ããŒãéããŠã
ShowCaseãã©ã«ããŒãéããŸãã æ¬¡ã«ãã¢ããªãããäžåºŠå®è¡ããŠã¿ãŠãã ãããæååãå ¥åããŠEnterããŒãæŒããšããã°ã©ã ã詊ãããšãã§ããçµäºããã«ã¯EnterããŒãæŒããŸãã
ã¿ãŒããã«åºåã¯æ¬¡ã®äŸã®ããã«ãªããŸãã
Press <Enter> only to exit; otherwise, enter a string and press <Enter>: A string that starts with an uppercase letter Input: A string that starts with an uppercase letter Begins with uppercase? : Yes a string that starts with a lowercase letter Input: a string that starts with a lowercase letter Begins with uppercase? : No
ShowCase ã¢ããªãå®è¡ããŸãã
dotnet runæååãå ¥åããŠEnterããŒãæŒããšããã°ã©ã ã詊ãããšãã§ããçµäºããã«ã¯EnterããŒãæŒããŸãã
ã¿ãŒããã«åºåã¯æ¬¡ã®äŸã®ããã«ãªããŸãã
Press <Enter> only to exit; otherwise, enter a string and press <Enter>: A string that starts with an uppercase letter Input: A string that starts with an uppercase letter Begins with uppercase? : Yes a string that starts with a lowercase letter Input: a string that starts with a lowercase letter Begins with uppercase? : No
ãã®ä»ã®ãªãœãŒã¹
.NET CLI ã䜿çšããéçºã©ã€ãã©ãª - .NET Standard ããŒãžã§ã³ãšãµããŒãããããã©ãããã©ãŒã ã
ãªãœãŒã¹ãã¯ãªãŒã³ã¢ãããã
GitHubãéã¢ã¯ãã£ãç¶æ
ã 30 æ¥åŸã« Codespace ãèªåçã«åé€ããŸãã ãã®ã·ãªãŒãºã®ãã®ä»ã®ãã¥ãŒããªã¢ã«ã調ã¹ãäºå®ãããå Žåã¯ãCodespace ãããããžã§ãã³ã°ãããŸãŸã«ããŠããããšãã§ããŸãã
.NET ãµã€ãã«ã¢ã¯ã»ã¹ããŠ.NET SDK ãããŠã³ããŒãããæºåãã§ããããCodespace ãåé€ã§ããŸãã Codespace ãåé€ããã«ã¯ããã©ãŠã¶ãŒ ãŠã£ã³ããŠãéãã Codespaces ã«ç§»åããŸãã ãŠã£ã³ããŠã«ã³ãŒãã¹ããŒã¹ã®äžèЧã衚瀺ãããŸãã learn ãã¥ãŒããªã¢ã«ã®ã³ãŒãã¹ããŒã¹ã®ãšã³ããªã§ã3 ã€ã®ããã (...) ãéžæããŸãã æ¬¡ã«ã[åé€] ãéžæããŸãã
次ã®ã¹ããã
ãã®ãã¥ãŒããªã¢ã«ã§ã¯ãã¯ã©ã¹ ã©ã€ãã©ãªãäœæããŸããã æ¬¡ã®ãã¥ãŒããªã¢ã«ã§ã¯ãã¯ã©ã¹ ã©ã€ãã©ãªãåäœãã¹ãããæ¹æ³ã«ã€ããŠèª¬æããŸãã
ãŸãã¯ãèªååãããåäœãã¹ããã¹ãããããNuGet ããã±ãŒãžãäœæããŠã©ã€ãã©ãªãå ±æããæ¹æ³ãåŠç¿ããããšãã§ããŸãã
ãŸãã¯ãã³ã³ãœãŒã« ã¢ããªãçºè¡ããæ¹æ³ã«ã€ããŠèª¬æããŸãã ãã®ãã¥ãŒããªã¢ã«ã§äœæãããœãªã¥ãŒã·ã§ã³ããã³ã³ãœãŒã« ã¢ããªãçºè¡ãããšãã¯ã©ã¹ ã©ã€ãã©ãªã¯ .dll ãã¡ã€ã«ãšããŠäœ¿çšãããŸãã