DUICUO

Microsoft 公式マイクロサービス アーキテクチャ: 10 個の .NET オープンソース プロジェクト

1. 高性能、型安全、オープンソースの.NET列挙ユーティリティライブラリ

Enums.NETは、列挙型を操作するための豊富なメソッドを提供することに重点を置いた.NET列挙ユーティリティライブラリです。.NET Frameworkと.NET Coreの両方をサポートしています。主な利点は、型安全性、高いパフォーマンス、豊富なメソッド、そして使いやすさにあり、開発者にとってより便利で効率的な列挙型操作方法を提供します。

2. MKL.NET: .NET 開発者向けに高性能な数学計算サポートを提供するオープンソース ライブラリ。

MKL.NET は Intel MKL ライブラリの .NET バージョンであり、開発者は基礎となる C/C++ コードを処理することなく、.NET アプリケーションで MKL ライブラリの機能を簡単に使用できるようになります。

MKLは、科学、工学、金融などの分野における計算ニーズの解決に役立つ、高性能な数学関数ライブラリとアルゴリズムを提供します。MKL.NETは、MKLライブラリの高性能とスレッドセーフを継承しながら、.NET Coreのクロスプラットフォーム性を最大限に活用します。

MKL.NET は、Windows、Linux、macOS と互換性があります。

3. 複数のプラットフォームをサポートする .NET ベースで開発されたオープンソースのクラウド ストレージ ファイル マネージャー。

Camelotiaは、.NET UIフレームワークとReactiveUIフレームワークをベースに開発されたクラウドストレージファイルマネージャーです。現在、Yandex Disk、Google Drive、VK Documents、GitHub、FTP、SFTP、ローカルファイルシステムといったプラットフォームをサポートしています。

互換性のあるプラットフォーム: Windows、Linux、macOS、Xbox、Surface Hub、HoloLens。

このプロジェクトには、MVVM フレームワーク、FTP、自動ビルド、ユニット テスト、クロスプラットフォーム モバイル UI フレームワークなど、幅広いテクノロジが含まれており、学習に最適です。

4. C# を使用して開発されたオープンソースの Nintendo Switch エミュレーター。

RyujinxはオープンソースのNintendo Switchエミュレーターで、PC上でSwitchゲームをエミュレートできます。C#で開発され、.NET Coreフレームワークをベースにしているため、クロスプラットフォーム対応で、Windows、Linux、macOSなどのオペレーティングシステムで動作します。

このプロジェクトは、優れた精度とパフォーマンス、ユーザーフレンドリーなインターフェース、そして一貫したビルド品質を特徴としています。4,050以上のゲームでテストされており、そのうち3,400のゲームでプレイ可能であることが確認されています。

5. Excel ファイルを操作するための .NET オープンソース ライブラリ。

ClosedXMLは、Excel 2007以降のファイル(.xlsx、.xlsm)の読み取り、操作、書き込みをサポートするサードパーティ製のオープンソース.NETライブラリです。OpenXMLをベースとしており、開発者は基盤となるOpenXML APIを理解していなくても、プロジェクト開発で使用できます。

ファイルの保存: 250,000 行のファイルの保存には 6.343 秒かかり、1,000,000 行のプレーン テキスト ファイルの保存には 17.134 秒かかりました。

ファイルの読み込み: 250,000 行のワークブック ファイルの読み込みには 15.648 秒かかり、100 万行のプレーン テキスト ファイルの読み込みには 49.046 秒かかりました。

6. .NET 8 をサポートする Microsoft の公式マイクロサービス アーキテクチャ。

.NET 8 の新機能には多くの驚きがあり、そのすべてを十分に体験する前に、eShop も .NET 8 のリリースに合わせて大幅にアップグレードされたことを知りました。

eShop は、Microsoft が提供し、.NET に基づいて開発されたオープンソースの電子商取引システム プロジェクトです。

このアップグレードには、.NET 8、マイクロサービス、Aspire、OpenAI、アプリケーションなど、いくつかの主要な機能があります。

eShop は、コア、ID 認証、注文、カタログ、ショッピング カートのマイクロサービスに分かれたマイクロサービス アーキテクチャを採用しています。

データベースにはPostgreSQL、キャッシュにはRedisを採用し、新たにリリースされたAspireシステムも導入されています。

7. CSV、Excel などを含む、一般的に使用される .NET コレクションのオープンソース ユーティリティ ライブラリ。

このプロジェクトは主に5つの部分に分かれています。

  • 一般的に使用される用途: エンコード変換、共通列挙変数、マルチスレッド、リストのソートなど。
  • データベース: ADO.NET 用にカプセル化された一般的な操作。
  • CSV: CSV ライブラリの読み取りと書き込みを行います。
  • Excel: .xlsx、.xlsb、.xls 形式をサポートする Excel ファイルの読み取りと書き込み、および CSV 形式への変換をサポートします。
  • XBase: XBase データの高速読み取りをサポートします。

このプロジェクトで提供される機能は比較的シンプルで、小規模なプロジェクトに適しています。

8. C# メソッドの実行時間を監視するためのオープンソース ライブラリ。

.NET アプリケーションでのメソッド実行時間を測定および分析するための軽量の .NET ライブラリで、既存の .NET アプリケーションに簡単に統合できます。

メソッドの実行時間を正確に測定できる高精度のタイミング機能を提供し、カスタム ラベルを実行してメソッドをより適切に識別します。

9. 純粋に .NET で開発された JavaScript 実行エンジン。

Jurassicは、MS-PLライセンスに基づくオープンソースのマネージドJavaScript実行エンジンです。.NETプラットフォーム上で最も強力かつ標準的なJavaScriptエンジンとなることを目指しています。

 var engine = new Jurassic.ScriptEngine(); //输出11 Console.WriteLine(engine.Evaluate("var a = 5; var b = 6; a + b;")); engine.Evaluate("function add(a,b){return a+b;}"); var result = engine.CallGlobalFunction<int>("add", 5, 6); //输入11 Console.WriteLine(result);

10. PDFドキュメントジェネレーター.NETライブラリ

これは PDF ドキュメントを生成するためのオープンソースの .NET ライブラリであり、ページ区切り機能を完全にサポートするレイアウト エンジンを提供します。

ただし、最新バージョンは有料化されましたが、2022.12.Xより前のバージョンは引き続き無料でご利用いただけます。また、能力のある方はソースコードをダウンロードして、ご自身で修正・最適化することも可能です。

このページでは次の要素がサポートされています。

  • 視覚要素:テキスト、画像、ページ背景、境界線、行の高さ、キャンバス、プレースホルダー。
  • スタイル:幅と高さ、パディング、左右のフローティング、回転、最小コンテナー、その他の CSS のようなスタイル。
  • レイアウト:ページ区切り、表、行、列、グリッド、インライン要素、タブ、リスト、階層など。

全体的に、ページ レイアウトは HTML レイアウトと非常に似ているため、開発者はすぐに作業を開始できます。