OptimizeLibrary.Library 1.3.0

There is a newer version of this package available.
See the version list below for details.
dotnet add package OptimizeLibrary.Library --version 1.3.0
                    
NuGet\Install-Package OptimizeLibrary.Library -Version 1.3.0
                    
This command is intended to be used within the Package Manager Console in Visual Studio, as it uses the NuGet module's version of Install-Package.
<PackageReference Include="OptimizeLibrary.Library" Version="1.3.0" />
                    
For projects that support PackageReference, copy this XML node into the project file to reference the package.
<PackageVersion Include="OptimizeLibrary.Library" Version="1.3.0" />
                    
Directory.Packages.props
<PackageReference Include="OptimizeLibrary.Library" />
                    
Project file
For projects that support Central Package Management (CPM), copy this XML node into the solution Directory.Packages.props file to version the package.
paket add OptimizeLibrary.Library --version 1.3.0
                    
#r "nuget: OptimizeLibrary.Library, 1.3.0"
                    
#r directive can be used in F# Interactive and Polyglot Notebooks. Copy this into the interactive tool or source code of the script to reference the package.
#:package OptimizeLibrary.Library@1.3.0
                    
#:package directive can be used in C# file-based apps starting in .NET 10 preview 4. Copy this into a .cs file before any lines of code to reference the package.
#addin nuget:?package=OptimizeLibrary.Library&version=1.3.0
                    
Install as a Cake Addin
#tool nuget:?package=OptimizeLibrary.Library&version=1.3.0
                    
Install as a Cake Tool

OptimizeLibrary.Library 🚀

OptimizeLibrary.Library — это набор высокопроизводительных структур данных для C#, оптимизированных для быстрого поиска, эффективного кэширования и работы под высокой нагрузкой.

Хватит использовать стандартный List.Find(), который заставляет ваш CPU потеть! Переходите на алгоритмически оптимальные решения.


🔥 Основные возможности

  • SmartCache (LRU + TTL): Кэш, который сам выкидывает старые данные и следит за временем жизни (Time To Live) объектов.
  • AutoSortedList: Список, который поддерживает себя в отсортированном состоянии, обеспечивая поиск за ****.
  • Zero-Dependency: Никаких лишних зависимостей. Только чистый и быстрый C#.

🚀 Быстрый старт

Установка

dotnet add package OptimizeLibrary.Library

Использование SmartCache (LRU + TTL)

Идеально подходит для кэширования ответов API или тяжелых запросов к БД.

// Емкость 100 элементов, время жизни каждого — 5 минут
var cache = new SmartCacheWithTtl<int, string>(100, TimeSpan.FromMinutes(5));

// Добавление данных
cache.Put(42, "Значение из глубокой базы данных");

// Мгновенное получение
string data = cache.Get(42); 

Использование AutoSortedList

Для данных, которые всегда должны быть под рукой в правильном порядке.

var sortedList = new AutoSortedList<int>();
sortedList.Add(10);
sortedList.Add(1);
sortedList.Add(5);

// Данные уже внутри: [1, 5, 10]
int index = sortedList.IndexOf(5); // Поиск за O(log n)


📊 Почему это быстрее?

Операция Стандартный List OptimizeLibrary.Library Профит
Поиск в 1 млн элементов ~500,000 проверок ~20 проверок В 25,000 раз быстрее
Удаление старого кэша Ручное/Полное Автоматическое (LRU) Экономия RAM


📄 Лицензия

Проект распространяется под лицензией MIT. Используйте его в своих коммерческих проектах совершенно бесплатно!


Product Compatible and additional computed target framework versions.
.NET net10.0-windows7.0 is compatible. 
Compatible target framework(s)
Included target framework(s) (in package)
Learn more about Target Frameworks and .NET Standard.

NuGet packages

This package is not used by any NuGet packages.

GitHub repositories

This package is not used by any popular GitHub repositories.

Version Downloads Last Updated
1.4.0 100 5/22/2026
1.3.0 106 5/18/2026
1.2.6 92 5/17/2026