Quantcast
Channel: C#タグが付けられた新着記事 - Qiita
Viewing all articles
Browse latest Browse all 9700

C#の他言語と比較して優位な点不利な点まとめ

$
0
0

C#についてメリット、デメリット

私はC#をおすすめしています
理由としては以下のメリットがあります

メリット

  • Microsoftが開発しているためWindowsとの相性がいい
  • オブジェクト指向プログラミングができる
  • 最新の技術が早く取り入られる
  • GUIアプリケーションの開発が簡単にできる
  • 人気が高いため情報が多い
  • Unityに対応しているためゲーム開発が可能
  • VisualStuidoといった強力なIDEがある
  • マルチプラットフォームに対応している
  • これから開発が進められていく
  • 実行速度が早い
  • .NET Frameworkがある環境であればどこでもコンパイルできる

デメリット

  • 開発環境の容量が多く低スペックPCにはきつい
  • AIには弱い
  • 基本的にはハードウェアに干渉できない
  • OS開発には使えない
  • Linuxでは開発環境を整えにくい
  • 構文が長くなってしまう

このようにC#はWindowsで開発実行する際はかなり良い言語です

C#のプラットフォームについて

C#のプラットフォームについては.NET Framework、.NET Core Mono
Xamarinが動く環境ではすべての環境で動きます
そのため以下の環境で動きます

  • Windows7以降(.NET Framework)
  • Linux (.NET Core、Mono)
  • Mac (.NET Core、Mono)
  • Android (Xamarin)
  • ios (Xamarin (Macが必要))

このようにC#はほぼすべてのプラットフォームに対応しております
しかしながら注意点があります。
.NET Frameworkが.NET系で今一番開発がすすんでいます。それに比べ.NET Coreはまだ実装されていない機能などがあります。

しかしながら、Microsoftが.NET Core ベースの.NET5を発表し2020年の11月にリリース予定です。これはマルチプラットフォームに対応する予定なので今後期待できます。

他言語との比較

ここからは他言語との比較をしていきます。

Java

JavaはC#の兄弟言語といっても過言ではないほど構文が似ています。

C#より優位な点

  • マルチプラットフォームを重視しておりすべてといってもいいくらい多くのプラットフォームに対応しています
  • MinecraftのModが作れる
  • 求人が多い

C#より不利な点

  • GUIが遅い
  • 機能の追加が遅い
  • あまりゲーム開発には向かない
  • C#に比べ開発環境を構築しにくい(勝手に思ってるだけ)

C#とJavaは似た言語なのでほとんど同じようになっています

C/C++

C#のもとになった言語でもある言語

C#より不利な点

  • ハードウェアを触ることができる
  • ポインタが使える
  • オブジェクト指向である

C#より不利な点

  • 多くの機能が実装されているので無法地帯と化しており
  • 実行ファイルをそのまま別のプラットフォームで実行できない
  • 構文が多くなってしまう

Python

最近はやりのスクリプト言語

C#より優位な点

  • サードパーティー製のライブラリが豊富
  • 構文が少なく実装できる

C#より不利な点

  • 実行速度が遅い
  • インデントが強制される

総評

C#は今後成長していく言語です
初心者の方はC#を始めていれば基本的にすべてのことができます。
また、サードパーティ製のDLLも多く配布されておりTwitterBotやDiscordBotの開発等も行います。
またC#では、AIのDLLもPythonほどの数のライブラリではないですが、AIを開発することができます。

これから、リリースされる予定の.NET5に期待していきたいと思います


Viewing all articles
Browse latest Browse all 9700

Trending Articles