Skip to content
/ Freud Public

Простой и быстрый сериализатор для C#

License

Notifications You must be signed in to change notification settings

k0dep/Freud

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

17 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

BuildStatus Nugetstatus


Freud

Freud - сериализатор/десериализатор C# объектов в массив байт. Цель freud - предоставить простой инструмент для быстрой сериализации и десериализации не сложных объектов.

Возможности

  • Сериализация без подготовки классов(без атрибутов, без регистрации в фреймворке)
  • Эффективность(~1.3x быстрее protobuf-net)
  • Простота
  • Возможность расширения

Что не умеет

  • Не поддерживает полиморфизм, из этого следует:
    • В классах не должно быть свойств или полей с типом интерфейс/абстрактный класс
  • Dictionary<K, V> (скоро будет)
  • List (скоро будет)

Пример использования

public class Foo
{
    public int field;
    public string Property { get; set; }
}

...

var instance = new Foo()
{
    field = 1324,
    Property = stringDatas
};

var freud = new FreudManager();
var bytes = freud.Serialize(instance);
var instanceReconstruct = freud.Deserialize<Foo>(bytes);

About

Простой и быстрый сериализатор для C#

Topics

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages