Slide 1

Slide 1 text

೔ຊΞΠɾϏʔɾΤϜגࣜձࣾ ςΫϊϩδʔࣄۀຊ෦ ΧελϚʔɾαΫηε ϓϦϯγύϧɾϚωʔδϟʔ ݉ 8JOEPXT$POUBJOFS1PSUJOH1SPHSBNਪਐϦʔμʔ େ੢ জ "LJSB0OJTIJ!JCNDPN 5XJUUFS!POJBL IUUQTXXXGBDFCPPLDPNBLJSBPOJTIJ IUUQTXXXMJOLFEJODPNJOPOJBL ίϯςφ %PKPୈճ <ೖ໳ऀ׻ܴ> /&5֓ཁ ."6* 8FC ίϯςφ

Slide 2

Slide 2 text

ࣗݾ঺հ 1SPQFSUZ 7BMVF ࢯ໊ େ੢ জ 5XJUUFS-JOLFE*O POJBL *5ۀքྺ ೥໨ ௚ۙͷ৬ྺ Microsoft ೥ *#.೥໨ )BTI5BH ͍͍Ͷ͐੩Ԭੜ׆ ࠲ӈͷ໏ ౿·Εͯ΋ͳ্ཱ͓͕ͪΔಓͷ૲ Α͘࢖͏ٕ ೴಺ม׵Ͱࣗ෼ΛϙδςΟϒʹ IUUQTXXXGBDFCPPLDPNBLJSBPOJTIJ 'BDFCPPLʮ͓ʹ͋͘ʯͰݕࡧ

Slide 3

Slide 3 text

ίϯςφ%PKPୈճͷൣғ /&5Λ஌Δɺࢼͨ͢ΊͷೖΓޱʹཱͭɺ ׆༻Λ૝૾͢Δ ˞/&5Λ໢ཏతʹղઆ͢ΔηογϣϯͰ͸ ͋Γ·ͤΜɻ

Slide 4

Slide 4 text

/&5ͷμ΢ϯϩʔυͱΠϯετʔϧ IUUQTEPUOFUNJDSPTPGUDPNKBKQEPXOMPBE

Slide 5

Slide 5 text

ࠓ೔ͷ࿩୊ /&5ͷ֓ཁΛ஌ΓɺΞϓϦ։ൃͷೖΓޱʹཱͪɺ /&5ͷ׆༻Λ૝૾͠·͢ Θ͔Βͳ͍ݴ༿͕ग़͖ͯͨΒɺ·ͣ͸ݕࡧ ϋʔυ΢ΣΞ -JOVY04 ίϯςφϓϥοτϑΥʔϜ ίϯςφ /&5 αʔόʔ ΞϓϦ" ίϯςφ /&5 αʔόʔ ΞϓϦ# ϋʔυ΢ΣΞ 8JOEPXT.BD-JOVY04 /&5ϓϥοτϑΥʔϜ σόΠε ΞϓϦ" ϋΠϒϦου ΞϓϦ#

Slide 6

Slide 6 text

"HFOEB /&5௒֓ཁɺ$ମݧ /&5ɺ$ͷ৽ػೳɺδΣωϦοΫܕ਺஋ԋࢉ ύϑΥʔϚϯεͷվળ /&5."6*ɺσεΫτοϓɺϞόΠϧΞϓϦ։ൃ "41/&5ମݧ "41/&5ͷ৽ػೳɺ؆୯ͳ8FC"1*ͷ։ൃ #MB[PSɺ/&5."6*#MB[PS %PUOFUίϚϯυΛ࢖ͬͨίϯςφΠϝʔδͷൃߦ

Slide 7

Slide 7 text

/&5ͱ͸ ༷ʑͳछྨͷΞϓϦΛߏங͢ΔͨΊͷ ։ൃऀ༻ϓϥοτϑΥʔϜ ΦʔϓϯιʔεɺແྉɺϚϧν04ରԠ $ ' 7JTVBM#BTJDͰίʔσΟϯά https://dotnet.microsoft.com/ja-jp/learn/dotnet/what-is-dotnet

Slide 8

Slide 8 text

/&5ΞϓϦ σεΫτοϓ ϞόΠϧ 8FC αʔόʔ Ϋϥ΢υ ػցֶश *P5 ίϯςφϚΠΫϩαʔϏε ήʔϜ

Slide 9

Slide 9 text

$ ൃԻγʔγϟʔϓ ͱ͸ ΦϒδΣΫτࢦ޲ϓϩάϥϛϯάݴޠ ΦʔϓϯιʔεɺϚϧν04ରԠ /&5ͷڞ௨ݴޠϥϯλΠϜ $-3 ্Ͱ࣮ߦ https://learn.microsoft.com/ja-jp/dotnet/csharp/tour-of-csharp/ C# ソースコード 中間⾔語(IL) リソース (ビット マップや⽂字列など) アセンブリ (dllファイル) 共通⾔語ランタイム (CLR) ネイティブ コード JIT コンパイル コンパイル

Slide 10

Slide 10 text

ϒϥ΢βʔͰ /&5ମݧ IUUQTEPUOFUNJDSPTPGUDPNKBKQMFBSOEPUOFUJOCSPXTFSUVUPSJBM

Slide 11

Slide 11 text

/&5 ถࠃ࣌ؒ ϦϦʔε ϓϩάϥϛϯάݴޠͷਐԽɺ$ɺ' Y "3. TY *#.; QQDMF *#.1PXFS ύϑΥʔϚϯεͷվળɺωΠςΟϒίϯύΠϧ /&5."6*ɺΫϩεϓϥοτϑΥʔϜରԠ6* "41/&5$PSFɺ࠷খݶͷ"1*ͷػೳڧԽͳͲ EPUOFUQVCMJTIίϚϯυ͔Βͷίϯςφൃߦ https://learn.microsoft.com/ja-jp/dotnet/core/whats-new/dotnet-7

Slide 12

Slide 12 text

$ͷ৽ػೳ ະՃ޻ͷจࣈϦςϥϧ δΣωϦοΫܕ਺஋ԋࢉͷαϙʔτ ൚༻ଐੑ 65'ͷจࣈྻϦςϥϧ จࣈྻิؒࣜͷվߦ Ϧετ ύλʔϯ ϑΝΠϧϩʔΧϧܕ ඞਢϝϯόʔ BVUPEFGBVMUߏ଄ମ TUSJOHఆ਺Ͱͷ 4QBODIBSͷύλʔϯ Ϛον ֦ு OBNFPGείʔϓ ਺஋ *OU1US SFGϑΟʔϧυͱ TDPQFESFG վળ͞Εͨɺϝιου άϧʔϓ͔ΒσϦήʔτ΁ͷม׵ ܯࠂ΢Σʔϒ https://learn.microsoft.com/ja-jp/dotnet/csharp/whats-new/csharp-11 $ͷྺ࢙

Slide 13

Slide 13 text

$δΣωϦοΫܕ਺஋ԋࢉ // ίʔυྫ using System.Globalization; using System.Numerics; static T Add(T left, T right) where T : INumber { return left + right; } static T ParseInvariant(string s) where T : IParsable { return T.Parse(s, CultureInfo.InvariantCulture); } Console.WriteLine("Hello, World!"); Console.Write("First number: "); var left = ParseInvariant(Console.ReadLine()); Console.Write("Second number: "); var right = ParseInvariant(Console.ReadLine()); Console.WriteLine($"Result: {Add(left, right)}"); Console.WriteLine("hit any keys..."); Console.ReadKey(); https://learn.microsoft.com/ja-jp/dotnet/standard/generics/math ܕύϥϝʔλʔ͕਺஋ʹࣅͨܕ Where T : INumber ʹ੍ݶ͞ΕΔ ୯ҰͷδΣωϦοΫ ϝιουΛهड़Ͱ͖Δ static T Add(T left, T right) where T : INumber { return left + right; } ͦΕͧΕͷܕ͝ͱʹϝιουΛॻ͔ͳͯ͘ྑ͍ͷͰ ίʔυྔ͕ݮΔʢؒҧ͍ͷՄೳੑ΋ݮΔʣ $·Ͱ͸ɺͦΕͧΕͷܕʹԠͯ͡ɺԼهͷΑ͏ͳ ϝιουͷΦʔόʔϩʔυΛ௥Ճ͢Δඞཁ͕͋ͬͨ static int Add(int first, int second) static float Add(float first, float second)

Slide 14

Slide 14 text

ύϑΥʔϚϯεͷվળ IUUQTEFWCMPHTNJDSPTPGUDPNEPUOFUQFSGPSNBODF@JNQSPWFNFOUT@JO@OFU@ ࢀߟIUUQTMFBSONJDSPTPGUDPNFOVTFWFOUTEPUOFUDPOGEPUOFUDPOGLFZOPUFXFMDPNFUPEPUOFU

Slide 15

Slide 15 text

/&5."6* .VMUJQMBUGPSN"QQ6* ΫϩεϓϥοτϑΥʔϜରԠΞϓϦ6*ϑϨʔϜϫʔΫ $ͱ9".-ͰΞϓϦͷ6*ͱಈ࡞Λهड़ Φʔϓϯιʔε 8JOEPXTҎ߱ 8JOEPXT NBD04Ҏ߱ NBD$BUBMZTU J04Ҏ߱ ΞϓϦͷϏϧυʹNBDσόΠεඞਢ "OESPJE "1* Ҏ߱ ˞/&5."6*#MB[PSΞϓϦ͸ NBD04Ҏ߱ɺJ04Ҏ߱"OESPJE "1* Ҏ͕߱ඞཁ ϓϥοτϑΥʔϜݻ༗ͷίʔυΛݺͼग़͢͜ͱͰɺσόΠεͷػೳΛ׆༻Ͱ͖Δ͜ͱʹ஫໨ QBSUJBMDMBTTΛར༻ͯ͠ɺϓϥοτϑΥʔϜݻ༗ͷϝιουΛ͏·͘෼཭ https://github.com/dotnet/maui https://learn.microsoft.com/ja-jp/dotnet/maui/what-is-maui?view=net-maui-7.0

Slide 16

Slide 16 text

9".-ը໘࡞੒ɺ$ϩδοΫ // MainPage.xaml.cs (コードビハインド) namespace macmaui01; public partial class MainPage : ContentPage { int count = 0; public MainPage() { InitializeComponent(); } // CounterBtnがクリックされた時のイベントハンドラー private void OnCounterClicked(object sender, EventArgs e) { count++; if (count == 1) CounterBtn.Text = $"Clicked {count} time"; else CounterBtn.Text = $"Clicked {count} times"; SemanticScreenReader.Announce(CounterBtn.Text); } } * XAML: eXtensible Application Markup Language

Slide 17

Slide 17 text

.BD$BUBMZTUΞϓϦͷ։ൃ https://learn.microsoft.com/ja-jp/dotnet/maui/get-started/installation?view=net-maui-7.0&tabs=vsmac https://learn.microsoft.com/ja-jp/dotnet/maui/macos/cli?view=net-maui-7.0

Slide 18

Slide 18 text

J04J1BE04޲͚ΞϓϦͷ։ൃ 8JOEPXT্ͷ7JTVBM4UVEJPΛ࢖͏ ৔߹ɺ8JOEPXTͱ.BDɺ୆͕ඞཁ .BDσόΠεଆʹ͸9DPEF͕ඞਢ .BD্Ͱ࣮ߦ͍ͯ͠ΔγϛϡϨʔλʹ 8JOEPXT͔Β઀ଓ͠ɺΞϓϦͷ σόοά΋Մೳ 8JOEPXT NBD04 γϛϡϨʔλ 7JTVBM 4UVEJP

Slide 19

Slide 19 text

J04J1BEγϛϡϨʔλͱ7JTVBM4UVEJP ࢀߟྫJ.BDσόΠεͰͷ։ൃ J.BD͔Β3FNPUF%FTLUPQܦ༝Ͱ 8JOEPXT1$ʹ઀ଓ 8JOEPXT1$্Ͱ7JTVBM4UVEJPΛ ࣮ߦ͠ɺ8JOEPXT͔ΒJ.BDʹ઀ଓ /&5."6*ΞϓϦΛ J04γϛϡϨʔλ্Ͱ࣮ߦ J04J1BEγϛϡϨʔλ͸ J.BDଆͰ࣮ߦɺදࣔ

Slide 20

Slide 20 text

.BDJ04ΞϓϦ։ൃ7JTVBM4UVEJPGPS.BD 7JTVBM4UVEJPGPS.BDΛ࢖ͬͨ৔߹͸ .BD୆ͰϏϧυɺσόοάΛ࣮ߦ

Slide 21

Slide 21 text

"OESPJEΤϛϡϨʔλͱ7JTVBM4UVEJP ࢀߟྫ "OESPJE%FWJDF.BOBHFSͰ 1JYFMΤϛϡϨʔλΛߏ੒ ϋʔυ΢ΣΞΞΫηϥϨʔγϣϯඞਢ 8JOEPXT)ZQFSWJTPS1MBUGPSNΛ ༗ޮʹ͓ͯ͘͜͠ͱ )ZQFS7Λซ༻͠ͳ͍৔߹͸ɺ *OUFM".%ϓϩηοαΛ׆༻͢Δ ϞδϡʔϧΛΠϯετʔϧ https://learn.microsoft.com/ja-jp/dotnet/maui/android/emulator/hardware-acceleration?view=net-maui-7.0

Slide 22

Slide 22 text

"OESPJEΞϓϦ։ൃɺ7JTVBM4UVEJPGPS.BD 7JTVBM4UVEJPGPS.BDΛར༻ͯ͠ "OESPJEΤϛϡϨʔλʔΛ࢖͍ɺ .BD୆ͰϏϧυɺσόοάΛ࣮ߦ "OESPJE%FWJDF.BOBHFSͰ 1JYFMΤϛϡϨʔλΛߏ੒ NBD04্ͷΤϛϡϨʔλʔߴ଎Խ

Slide 23

Slide 23 text

.BQίϯτϩʔϧ https://learn.microsoft.com/ja-jp/dotnet/maui/user-interface/controls/map?view=net-maui-7.0

Slide 24

Slide 24 text

"41/&5 /&5ͱ $Λ࢖ͬͯ 8FCΞϓϦαʔϏεΛ ߏங͢ΔͨΊͷϑϨʔϜϫʔΫ ·ͣ͸ νϡʔτϦΞϧͰମݧ IUUQTEPUOFUNJDSPTPGUDPNKBKQMFBSOBTQOFUIFMMPXPSMEUVUPSJBMJOUSP https://dotnet.microsoft.com/ja-jp/apps/aspnet

Slide 25

Slide 25 text

"41/&5$PSFͷ৽ػೳ https://learn.microsoft.com/ja-jp/aspnet/core/release-notes/aspnetcore-7.0?view=aspnetcore-7.0 参考: https://learn.microsoft.com/en-us/events/dotnetconf-2022/dotnet-conf-2022-keynote-welcome-to-dotnet-7 )551ͷ׬શαϙʔτ 6%1ϙʔτɺ5-4Λ࢖ͬͨߴ଎௨৴ϓϩτίϧ H31$ )551Λ࢖ͬͨߴ଎ϦϞʔτϓϩγʔδϟʔίʔϧ +40/ίʔυม׵ʹΑΓH31$ͱ+40/8FC"1*Λཱ྆ +40/8FC5PLFOͷ؅ཧ EPUOFUVTFSKXUT ίϚϯυ 0QFO"1*αϙʔτ ͳͲɺͨ͘͞Μͷ৽ػೳ

Slide 26

Slide 26 text

"41/&5$PSFͰ؆୯ͳ8FC"1*Λ࡞Δ // ۭͷASP.NET CoreϓϩδΣΫτΛ࡞ΓɺProgram.csʹԼهͷίʔυΛίϐʔ var builder = WebApplication.CreateBuilder(args); var app = builder.Build(); app.MapGet("/", () => "Hello World!"); app.MapGet("/net", () => "Hello .NET!"); app.MapGet("/now", () => { var now = DateTime.Now; var currDate = now.ToLocalTime().ToLongDateString(); var currTime = now.ToLocalTime().ToLongTimeString(); return $"ࠓͷ೔෇͸{currDate}ɺ࣌ࠁ͸{currTime}Ͱ͢ɻ"; }); app.Run();

Slide 27

Slide 27 text

3B[PSߏจ 8FCϖʔδ಺Ͱɺ!ه߸Λ࢖͍ɺ $ͷίʔυ΍ΦϒδΣΫτΛ࣮ߦ࣌ʹධՁ͠ ݁ՌΛ)5.-ϖʔδʹग़ྗ͢Δํ๏ Q-BTUXFFLUIJTUJNF! %BUF5JNF/PX 5JNF4QBO'SPN%BZT Q !\ WBSKPFOFX1FSTPO z+PF ^ Q"HF! KPF"HF Q https://learn.microsoft.com/ja-jp/aspnet/core/mvc/views/razor?view=aspnetcore-6.0

Slide 28

Slide 28 text

#MB[PSɺ$Λ࢖༻ͨ͠ର࿩ܕ8FC6* https://dotnet.microsoft.com/ja-jp/apps/aspnet/web-apps/blazor Blazor Server を利⽤すると ・サーバー側で仮想DOMを作成 ・画⾯の変更はWebSocketで通信 Blazorチュートリアル: https://dotnet.microsoft.com/ja-jp/learn/aspnet/blazor-tutorial/intro CLIによるチュートリアル (Windows): https://dotnet.microsoft.com/ja-jp/learn/aspnet/blazor-cli-tutorial/intro

Slide 29

Slide 29 text

3B[PSߏจʹΑΔ)5.-ͱ$ͷࠞࡏ !QBHFGFUDIEBUB 1BHF5JUMF8FBUIFSGPSFDBTU1BHF5JUMF !VTJOHCT%BUB !JOKFDU8FBUIFS'PSFDBTU4FSWJDF 'PSFDBTU4FSWJDF I8FBUIFSGPSFDBTUI Q5IJTDPNQPOFOUEFNPOTUSBUFTGFUDIJOHEBUBGSPNBTFSWJDFQ !JG GPSFDBTUTOVMM \ QFN-PBEJOHFNQ ^ FMTF \ UBCMFDMBTTUBCMF UIFBE US UI%BUFUI UI5FNQ $ UI UI5FNQ ' UI UI4VNNBSZUI US UIFBE UCPEZ !GPSFBDI WBSGPSFDBTUJOGPSFDBTUT \ US UE!GPSFDBTU%BUF5P4IPSU%BUF4USJOH UE UE!GPSFDBTU5FNQFSBUVSF$UE UE!GPSFDBTU5FNQFSBUVSF'UE UE!GPSFDBTU4VNNBSZUE US ^ UCPEZ UBCMF ^ !DPEF\ QSJWBUF8FBUIFS'PSFDBTU<> GPSFDBTUT QSPUFDUFEPWFSSJEFBTZOD5BTL0O*OJUJBMJ[FE"TZOD \ GPSFDBTUTBXBJU'PSFDBTU4FSWJDF(FU'PSFDBTU"TZOD %BUF5JNF/PX ^ ^

Slide 30

Slide 30 text

/&5."6*#MB[PS #MB[PSͷٕज़ͱ#MB[PS8FC7JFXͰ6*Λ࡞Γͭͭɺ σόΠεͷػೳΛ׆༻͢ΔϋΠϒϦουΞϓϦ։ൃ

Slide 31

Slide 31 text

ίϯςφ࡞੒ɺల։ɺࣗಈԽΛҙࣝ͢Δ ࠷৽ͷιʔείʔυΛར༻ͯ͠ ϏϧυɺίϯςφΠϝʔδ࡞੒ɺΞϓϦͷల։ ιʔείʔυ ϦϙδτϦ ΞϓϦͷ Ϗϧυ ίϯςφ Πϝʔδͷ ࡞੒ ίϯςφ Πϝʔδͷ ൃߦ Πϝʔδ͔Β ίϯςφͷ ࣮ߦ EPUOFUQVCMJTIU1VCMJTI$POUBJOFS

Slide 32

Slide 32 text

/&5ΞϓϦͷίϯςφԽ /&5ΞϓϦΛ࡞੒͢Δ EPUOFUBEEQBDLBHF.JDSPTPGU/&5#VJME$POUBJOFST Λ࣮ߦ͢Δ ֦ுࢠ DTQSPK ϑΝΠϧΛΤσΟλͰ։͖ɺ 1SPQFSUZ(SPVQཁૉ಺ʹ $POUBJOFS*NBHF/BNFίϯςφΠϝʔδ໊$POUBJOFS*NBHF/BNF $POUBJOFS*NBHF5BHίϯςφΠϝʔδλά໊$POUBJOFS*NBHF5BH Λࢦఆ ྫ$POUBJOFS*NBHF/BNFEPUOFUXPSLFSJNBHF$POUBJOFS*NBHF/BNF $POUBJOFS*NBHF5BHBMQIB$POUBJOFS*NBHF5BH $POUBJOFS*NBHF5BHTBMQIBMBUFTU$POUBJOFS*NBHF5BHT EPUOFUQVCMJTIίϚϯυʹ U1VCMJTI$POUBJOFS Λࢦఆ͢Δ EPUOFUQVCMJTIPT MJOVY BSDIYU1VCMJTI$POUBJOFS D3FMFBTF ˞ ϩʔΧϧͷ%PDLFSϨδετϦʹൃߦ https://learn.microsoft.com/ja-jp/dotnet/core/docker/publish-as-container

Slide 33

Slide 33 text

ハイブリッド クラウド 環境 /&5Λ࢖ͬͨΞϓϦͷ࿈ܞ .NET MAUI クライアントアプリ開発 σεΫτοϓ ϞόΠϧ End Point1 JSON REST ASP.NET Core アプリ開発 End Point2 gRPC マイクロサービス開発 End Point3 SignalR Windows 10, Windows 11 macOS iOS, iPadOS Android Windows Server/Linux + Container Platform

Slide 34

Slide 34 text

·ͱΊ /&5ɺύϑΥʔϚϯε͕େ෯ʹվળ͞Εͨ ৽͍͠/&5 $BMMUP"DUJPO /&5ͷμ΢ϯϩʔυͱΠϯετʔϧ IUUQTEPUOFUNJDSPTPGUDPNKBKQEPXOMPBE /&5."6* "41/&5$PSFͷΞϓϦ࡞੒ "41/&5$PSFΞϓϦͷίϯςφΠϝʔδ࡞੒

Slide 35

Slide 35 text

ワークショップ、セッション、および資料は、IBMまたはセッション発表者によって準備され、それぞれ独⾃の⾒解を反映したものです。それらは情報 提供の⽬的のみで提供されており、いかなる参加者に対しても法律的またはその他の指導や助⾔を意図したものではなく、またそのような結果を⽣むも のでもありません。本講演資料に含まれている情報については、完全性と正確性を期するよう努⼒しましたが、「現状のまま」提供され、明⽰または暗 ⽰にかかわらずいかなる保証も伴わないものとします。本講演資料またはその他の資料の使⽤によって、あるいはその他の関連によって、いかなる損害 が⽣じた場合も、IBMは責任を負わないものとします。 本講演資料に含まれている内容は、IBMまたはそのサプライヤーやライセンス交付者からいかな る保証または表明を引きだすことを意図したものでも、IBMソフトウェアの使⽤を規定する適⽤ライセンス契約の条項を変更することを意図したもので もなく、またそのような結果を⽣むものでもありません。 本講演資料でIBM製品、プログラム、またはサービスに⾔及していても、IBMが営業活動を⾏っているすべての国でそれらが使⽤可能であることを暗⽰ するものではありません。本講演資料で⾔及している製品リリース⽇付や製品機能は、市場機会またはその他の要因に基づいてIBM独⾃の決定権をもっ ていつでも変更できるものとし、いかなる⽅法においても将来の製品または機能が使⽤可能になると確約することを意図したものではありません。本講 演資料に含まれている内容は、参加者が開始する活動によって特定の販売、売上⾼の向上、またはその他の結果が⽣じると述べる、または暗⽰すること を意図したものでも、またそのような結果を⽣むものでもありません。 パフォーマンスは、管理された環境において標準的なIBMベンチマークを使⽤し た測定と予測に基づいています。ユーザーが経験する実際のスループットやパフォーマンスは、ユーザーのジョブ・ストリームにおけるマルチプログラ ミングの量、⼊出⼒構成、ストレージ構成、および処理されるワークロードなどの考慮事項を含む、数多くの要因に応じて変化します。したがって、 個々のユーザーがここで述べられているものと同様の結果を得られると確約するものではありません。 記述されているすべてのお客様事例は、それらのお客様がどのようにIBM製品を使⽤したか、またそれらのお客様が達成した結果の実例として⽰された ものです。実際の環境コストおよびパフォーマンス特性は、お客様ごとに異なる場合があります。 IBM、IBM ロゴ、ibm.com、IBM Cloud、IBM Cloud Paksは、 世界の多くの国で登録されたInternational Business Machines Corporationの商標です。他 の製品名およびサービス名等は、それぞれIBMまたは各社の商標である場合があります。現時点での IBM の商標リストについては、 www.ibm.com/legal/copytrade.shtmlをご覧ください。 Microsoft, Windows, Windows Server, .NET Framework, .NET, .NET Coreは、Microsoft Corporationの商標または登録商標です。