Slide 1

Slide 1 text

C#および.NETに対する誤解をひも解く 1 .NET ラボ勉強会 9月

Slide 2

Slide 2 text

今日話すこと ● 自己紹介 ● おいおいおいおいおいおい(誤解一覧) ● 誤解についていくつか見ていく ※なお、感想・意見等は個人の見解であり、以下略 2

Slide 3

Slide 3 text

(山田顕人 == Kento.Yamada)==ymd65536 自己紹介 3 ● .NETラボ運営、AzPoC部、Multi Cloud (MSP) Developer ● 通信キャリア => クラウドインテグレーターの企業にジョインしてそろそろ2年 ● MSP向け運用分析プラットフォームの開発・次世代監視基盤の開発・新しいサービスの検証 ● 受賞歴 ○ LINE API Expert ○ Microsoft MVP for Developer Technologies ○ Google Cloud Partner Tech Blog Challenge 2023 Cloud AI/ML 部門受賞 ○ LAPRAS OUTPUT AWARD 2024 01

Slide 4

Slide 4 text

おいおいおいおいおいおい 4 C#は他の言語に比べて独自の優位性が少ない Windows以外のOSとの互換性や柔軟性に欠ける C#はコンパイルが必要 とある記事を読んだところ、こんなことが!

Slide 5

Slide 5 text

「独自の優位性=言語特有の強みがある」 という意味ではむしろ多い。 Windowsアプリ、モバイルアプリ、コンソールアプリ、Blazor、ASP.NET…etc マルチプラットフォームという独自の強みがある。独自性がありすぎて独自性の森 C#は他の言語に比べて独自の優位性が少ない 5

Slide 6

Slide 6 text

Windows以外のOSとの互換性 :比較対象にJavaやPythonが挙げられている ● どちら(JavaやPython)もランタイムで互換性を保っているのでC#と変わらない ● .NET Runtimeが互換性の問題を解消している Windows以外のOSとの互換性や柔軟性に欠ける 6

Slide 7

Slide 7 text

コンパイル/ビルドする必要もある。 開発レベルではdotnet runで実行できます。 参考:dotnet run - MS Learn https://learn.microsoft.com/ja-jp/dotnet/core/tools/dotnet-run アプリケーションを配布となるとコンパイル/ビルドする。 ※JavaやPythonについても同様 C#はコンパイルあるいはビルドが必要 7

Slide 8

Slide 8 text

● 独自の優位性はある、OSの互換性もある、コンパイルは必須ではない ● C#ひいては.NETはできることが多いため逆に学習の難易度は高い(ように思える) ○ 難易度の高さが誤解を生んでいる側面もある?かもしれない ● 誤解は多いが、C# はこれからもっと伸びる言語 まとめ 8

Slide 9

Slide 9 text

Japan Azure User Group 14周年イベント https://jazug.connpass.com/event/327273/ 次回予告 9