Slide 1

Slide 1 text

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

Slide 2

Slide 2 text

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

Slide 3

Slide 3 text

ίϯςφ%PKPୈճͷൣғ ؆୯ͳνϡʔτϦΞϧͱ߹Θͤͯ $ʹΑΔ"41/&5$PSFΞϓϦ࡞੒ͷجૅ #MB[PS 4FSWFSΞϓϦͷίϯςφԽͱల։ ˞ମݧ͕த৺ͷͨΊɺͦΕͧΕͷٕज़Λ ໢ཏతʹղઆ͢ΔηογϣϯͰ͸͋Γ·ͤΜɻ

Slide 4

Slide 4 text

ࠓ೔ͷ࿩୊ /&5Ͱ"41/&5$PSFΛ࢖ͬͨ8FCΞϓϦͷ࡞੒ͷجૅΛֶͼɺ -JOVYίϯςφ্ͰΞϓϦΛల։͢Δ·Ͱͷํ๏ͷ֓ཁΛ஌Γ·͢ ϋʔυ΢ΣΞ -JOVY04 %PDLFSDSJP ίϯςφϓϥοτϑΥʔϜ ίϯςφ /&5 ΞϓϦ" ίϯςφ /&5 ΞϓϦ# ϋʔυ΢ΣΞ 8JOEPXT.BD-JOVY04 /&5ϓϥοτϑΥʔϜ ΞϓϦ" ΞϓϦ#

Slide 5

Slide 5 text

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

Slide 6

Slide 6 text

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

Slide 7

Slide 7 text

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

Slide 8

Slide 8 text

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

Slide 9

Slide 9 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 10

Slide 10 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 11

Slide 11 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 12

Slide 12 text

/&5ΞϓϦͷ -JOVYίϯςφԽɺબ୒ࢶ ϕʔεͷίϯςφΛ࣮ߦ؀ڥʹQVMMͯ͠ɺ ϑΝΠϧΛΞοϓσʔτͯ͠EPDLFSDPNNJU ͋͘·Ͱࢼݧ༻ͷ࡞ۀɺ܁Γฦ͠ʹऑ͍ खಈͰ%PDLFS'JMFΛॻ͍ͯ$-*ͰϏϧυ Ͱ͖Ε͹͋·Γ΍Γͨ͘ͳ͍࡞ۀɺ܁Γฦ͠ʹऑ͍ 7JTVBM4UVEJPͰ %PDLFSαϙʔτ෇Ͱ *%&্ͰͷϏϧυ ඞཁͳ%PDLFSGJMF͕ੜ੒͞ΕΔ 1BLFUP #VJME1BDLΛ࢖ͬͯ$-*ͰϏϧυ %PDLFSGJMFͷ࡞੒͕ෆཁͰɺ܁Γฦ͠ʹڧ͍ ιʔείʔυ͔Β௚઀Ϗϧυͱల։ 0QFO4IJGUͷ4PVSDF*NBHFɺ܁Γฦ͠ʹڧ͍

Slide 13

Slide 13 text

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

Slide 14

Slide 14 text

/&5ΞϓϦͷίϯςφԽ7JTVBM4UVEJP %PDLFSͷαϙʔτΛ༗ޮʹ͢Δ

Slide 15

Slide 15 text

7JTVBM4UVEJP಺ͷ%PDLFSGJMF dotnet restore dotnet build dotnet Ϗϧυ४උ ΞϓϦͷϏϧυ ΞϓϦͷ࣮ߦ

Slide 16

Slide 16 text

1BLFUP #VJME1BDL https://paketo.io/ ιʔείʔυΛϏϧυͯ͠ɺΞϓϦΛؚΜͩ ίϯςφΠϝʔδΛࣗಈੜ੒͢Δ࢓૊Έ #VJME1BDLIUUQTCVJMEQBDLTJP 1BLFUP͸$MPVE'PVOESZΦʔϓϯιʔεϓϩδΣΫτ +BWB (SBBM7. (P /&5$PSF /HJOY /PEFKT 1)1 "QBDIFIUUQE 3VCZ 1ZUIPOʹରԠ

Slide 17

Slide 17 text

/&5ίϯςφԽ1BLFUP #VJMEQBDL https://paketo.io/docs/ Pack CLI: https://buildpacks.io/docs/tools/pack/

Slide 18

Slide 18 text

#VJMEQBDLΛ࢖ͬͨ/&5ίϯςφ࡞੒ ճઃఆ͢Ε͹ɺҎ߱͸ࢦఆෆཁ QBDLDPOGJHEFGBVMUCVJMEFSQBLFUPCVJMEQBDLTCVJMEFSCBTF #MB[PSΞϓϦͷ࡞੒ EPUOFUOFXCMB[PSTFSWFS P#MB[PS"QQ OPIUUQTGOFU ιʔείʔυͷϑΥϧμ΁Ҡಈ DE#MB[PS"QQ ΞϓϦಈ࡞֬ೝ EPUOFUXBUDI ίϯςφͷϏϧυ QBDLCVJMENZBQQ ग़དྷ্͕ͬͨίϯςφͷ࣮ߦ EPDLFSSVOQNZBQQ Windowsの場合、Docker Desktopを Linux Containerモードに切り替えておくこと

Slide 19

Slide 19 text

0QFO4IJGU4PVSDFUP*NBHF 4* ࣗಈԽʹΑΔίϯςφΞϓϦల։ ιʔείʔυΛ௚઀Πϯϙʔτ 0QFO4IJGUͷ؀ڥ಺ͰΞϓϦΛϏϧυ ίϯςφΠϝʔδΛϏϧυ ίϯςφΛσϓϩΠ ϧʔτ 63- Λ࢖ͬͯΞϓϦΛެ։

Slide 20

Slide 20 text

(JU͔ΒͷΠϯϙʔτ https://github.com/dotnet/blazor-samples $MPOF༻ͷ63-Λݟ͚ͭͯίϐʔ͢Δ https://github.com/dotnet/blazor-samples.git

Slide 21

Slide 21 text

(JU͔ΒͷΠϯϙʔτ ビルドしたいアプリのソースコードが ⼊っているディレクトリを⾒つける /tree/main の右側にある⽂字列を 控えておく /6.0/BlazorServerEFCoreSample/BlazorServerDbContextExample https://github.com/dotnet/blazor-samples/tree/main/6.0/BlazorServerEFCoreSample/BlazorServerDbContextExample

Slide 22

Slide 22 text

(JU͔ΒͷΠϯϙʔτ (JUϦϙδτϦʔ63- IUUQTHJUIVCDPNEPUOFUCMB[PSTBNQMFTHJU ίϯςΩετσΟϨΫτϦʔ #MB[PS4FSWFS&'$PSF4BNQMF#MB[PS4FSWFS%C$POUFYU&YBNQMF <(JUϦϙδτϦʔ63->ͱ <ίϯςΩετσΟϨΫτϦʔ>Λࢦఆ 0QFO4PVSDF͕ιʔείʔυΛεΩϟϯ͠ ΠϯϙʔτετϥςδʔΛܾఆɺ ͦͷ݁Ռɺ /&5ΛϕʔεΠϝʔδͱͯ͠બ୒

Slide 23

Slide 23 text

(JU͔ΒͷΠϯϙʔτ ΞϓϦέʔγϣϯ໊ άϧʔϐϯά༻ͷ໊લ CMB[PSTBNQMF ໊લ αʔϏεΛࣝผ͢ΔͨΊʹར༻ FGTBNQMF <ΞϓϦέʔγϣϯ໊>ͱ<໊લ>Λࢦఆ

Slide 24

Slide 24 text

(JU͔ΒͷΠϯϙʔτ λʔήοτϙʔτ <࡞੒>ΛΫϦοΫͯ͠Ϗϧυͱల։

Slide 25

Slide 25 text

/&5 ࠷৽ͷ/&5ɺ೥݄ʹϦϦʔε༧ఆ $ɿଟ͘ͷ৽ػೳΛఏڙ /BUJWF"05ωΠςΟϒόΠφϦʹΑΔ࣮ߦ )551ɿ"41/&5$PSFطఆͰαϙʔτ #VJMUJOίϯςφαϙʔτEPUOFUQVCMJTI

Slide 26

Slide 26 text

·ͱΊ "41/&5$PSF #MB[PS 4FSWFSɺίϯςφԽ $BMMUP"DUJPO 7JTVBM4UVEJPΛ࢖ͬͨίϯςφΞϓϦ࡞੒ 1BLFUP #VJMEQBDLTΛ࢖ͬͨίϯςφ࡞੒ 0QFO4IJGU4PVSDFUPJNBHFΛ࢖ͬͨΞϓϦల։

Slide 27

Slide 27 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の商標または登録商標です。