はじめに
過去にサイトで紹介してきたC#のライブラリの中で、特にいいと感じたライブラリ5選を紹介します。ほとんどがGitHubでオープンソースとして公開されており、商用も含んて無料で使用できます。すべてNuGetで自動でインストールできるので、グラフ・JSONなどのおすすめライブラリが知りたい!という方は是非ご覧ください。
- ScottPlot (グラフ)
- NewtonSoft.JSON (JSON)
- SpreadsheetLight (Excel)
- Csv (CSV)
- RestSharp (REST API)
ライブラリを選んだポイント
ライブラリを選んだ際のポイントは以下の通りです。
- NuGetでのダウンロード数が多い。
- 無料、できればMITライセンス。
- 短いコードで機能が使える
- 公式ページにサンプル・ドキュメントが多い
- Microsoftや有名ライブラリと比べて早い・機能が多い。
ScottPlot (グラフライブラリ)
見た目もよくて高速なグラフの表示/操作を、数行のコードで作成することができるライブラリです。
MicrosoftのChartでは、グラフの拡大・縮小などは自分で実装する必要がありますが、
ScottPlotでは実装なしで使用できます。また、Chartに比べて速度も2倍早く動作し、機能の使い方も簡単です。
- 短いコードで見た目も良くて高速なグラフが作れる
- 拡大・縮小は実装不要。
- MS.Chartに比べて2倍早い
人気度やラインセンスなど、より詳しい内容は以下の記事をご覧ください。
SpreadsheetLight (Excelファイル読み/書き/操作)
xlsxの形式のエクセル・LibreOfficeのファイルの「読み込み」・「書き込み」・「操作」が簡単にできるライブラリです。
他のライブラリは、「エクセルが必要」「読み込みのみ」「グラフの操作不可」など、制約が多いものでしたが、このライブラリであれば全ての操作を行うことができます。
プロジェクトはオープンソースですが、ソースはGitHubではなく公式サイトで公開されています。
今回の趣旨と少しそれてしまいますが、ライブラリとしてかなり使い勝手がいいものであるため、例外的に紹介したいと思います。
使用方法も簡単で、公式サイトではコードと合わせて、豊富なサンプルやチュートリアルが用意されているので、是非おすすめしたいライブラリです。
- Excelのインストール不要
- Excelの「読み」「書き」「操作」が全部できる
- 使い方が簡単
- 公式サイトに豊富なサンプル・チュートリアルあり
人気度やラインセンスなど、より詳しい内容は以下の記事をご覧ください。
NewtonSoft.JSON (JSONファイル読み/書き)
JSON形式の処理(シリアライズ・デシリアライズなど)を簡単にしてくれるライブラリです。
NuGetでのダウンロード数が8.7億回と、NuGetの全ライブラリの中でもダントツ1位となっています。
JSONデータのシリアライズ / デシリアライズが、1~2行で実装でき、速度もMicrosoft純正と比べて1.5倍で早く動作します。
- NuGetでのダウンロード数が8.7億回
- シリアライズ・デシリアライズが1,2行でかける。
- MS 純正より1.5倍早い
人気度やラインセンスなど、より詳しい内容は以下の記事をご覧ください。
CSV (Csvの読み/書き)
CSV形式のファイルを簡単に処理できるライブラリです。
CSVといば「CsvHelper」が有名で人気ですが、このブログではあえてこの「Csv」をおすすめします。
データクラスへのマッピングなど高度な機能はありませんが、トリムや改行コードの取り扱いなどCSVファイルを使う場合に欲しくなる機能は一通りそろっています。
シンプルな操作で、サクッとCsvを使いたいという方におすすめです。
- 機能は多くないが、その分シンプルに使える
- トリムや改行など、欲しい機能はそろっている。
人気度やラインセンスなど、より詳しい内容は以下の記事をご覧ください。
RestSharp ( Rest API )
C#でREST APIを簡単に使うためのクライアントライブラリです。
NuGetでのダウンロード数も多く、C#でREST APIを扱うライブラリ中で一番人気のライブラリです。
REST APIへ簡単にアクセスできるのはもちろん、APIとやり取りする JSON・XMLデータのシリアライズ・デシリアライズの機能も備えているので、これ一つで簡単にREST APIとのやり取りを作成することができます。
- REST API用ライブラリの中で一番人気
- REST APIに簡単にアクセス可能
- JSON/XMLのシリアライズ・デシリアライズ機能もあり。
人気度やラインセンスなど、より詳しい内容は以下の記事をご覧ください。
まとめ
過去に紹介してきたライブラリの中で、特にいいと感じたライブラリ5選を紹介しました。使い方を細かく解説しているものも多いので、使ってみたい方は是非記事中のリンクから覗いてみてください。以上参考になればうれしいです。
お知らせ
今月号のSoftware Designは「もっとTypeScriptの力を引き出そう」
JavaScriptの拡張言語でしょ?と思っているかたへ、Union型などTypeScriptの持つ秘めたる力を解説する特集となっています。
個人的には第2特集の「Ubuntuの現代的な使い方」がの方が気になりました。より詳しい内容は以下のリンクからご覧ください。
質問・要望 大歓迎です
「こんな解説記事作って」「こんなことがしたいけど、〇〇で困ってる」など、コメント欄で教えてください。 質問・要望に、中の人ができる限り対応します。
使えたよ・設定できたよの一言コメントも大歓迎。気軽に足跡を残してみてください。記事を紹介したい方はブログ、SNSにバシバシ貼ってもらってOKです。