extprot

Compact, efficiënt, uitgebreid binaire serialisatie-indeling
Download nu

extprot Rangschikking & Samenvatting

Advertentie

  • Rating:
  • Vergunning:
  • MIT/X Consortium Lic...
  • Prijs:
  • FREE
  • Naam uitgever:
  • Ryan Kelly
  • Uitgever website:

extprot Tags


extprot Beschrijving

Compacte, efficiënte, uitbreidbare binaire serialisatie-indeling EXTPROT is een compacte, uitbreidbare en efficiënte binaire serialisatie-indeling. Dit is een implementatie van Python van het serialisatieschema 'EXTPROT', waarvan de details in detail zijn beschreven op: http://eigenenclass.org/r2/writings/extprot-extensibel -Protocols-introsimilar voor de protocolbuffers van Google en Apache Thrift, EXTPROT maakt de definitie van gestructureerde gegevens 'berichten' mogelijk. Berichten zijn in wezen een reeks getypte sleutelwaardeparen die efficiënt kunnen worden geserialiseerd naar / van een compact binair formaat en worden gedefinieerd in een taal-neutraal "protocol" -bestand. Hier is een eenvoudig voorbeeld van een extprot-bericht: bericht persoon = {ID: int; Naam: string; E-mails: } Hier bevat het bericht 'Persoon' drie velden: 'ID' is een geheel getal, 'Name' is een touw en 'e-mails' is een lijst met snaren. Dergelijke protocolomschrijvingen worden samengesteld in een set Python-klassen die kunnen worden gemanipuleerd met behulp van standaardsyntaxis en idioom. Als het bovenstaande protocol wordt vastgelegd in het bestand "Person.proto", is hier een eenvoudig voorbeeld van hoe het kan worden gebruikt: >>> EXTPROT.IMPORT_PROTOCOL ("PERSOON.PROTO", GLOBALS ()) >>> P1 = PERSOON ( 1, "Guido") >>> Print P1.Emails # Velden Gebruik een verstandige standaard indien mogelijk [] >>> P1.emails.appdry ("Guido@python.org") >>> P1.emails.Append (7 ) # Alle velden zijn dynamisch typischecked traceback (de meeste recente oproep Laatste): ... ValueError: geen geldige tekenreeks: 7 >>> Print Rep (P1.TO_SSTRING ()) 'X01X1FX03X00X05X03X05GUIDOX05X13X01X03X10GUIDO@PYTHON.ORD' >>> Print Persoon .from_string (P1.to_string ()). Naam 'Guido' >>> EXTPROT Vergelijkt gunstig aan gerelateerde serialisatietechnologieën: * Krachtig type systeem; sterk getypte tuples en lijsten, getagde disjo-vakbonden, parametrische polymorfisme. * Self-delimitng-gegevens; Alle geserialiseerde berichten geven hun lengte aan, waardoor gemakkelijk streaming en overslaan van berichten kunnen worden gestreefd. * Zelf-beschrijving van gegevens; Het 'skeleton' van een bericht kan worden gereconstrueerd zonder de definitie van de protocol te hebben. * Compact binair formaat; Vergelijkbaar met protocol-buffers / spaarzaamheid, maar met enige overhead als gevolg van self-delimiting natuur. Deze kenmerken combineren om EXTPROT sterk te maken, vaak het toestaan dat berichten achterwaarts kunnen handhaven * en * voorwaartse compatibiliteit tussen protocolextensies die omvatten: velden toevoegen aan een bericht , elementen toevoegen aan een tuple, het toevoegen van zaken aan een disjunctie-Unie en het bevorderen van een primitief type in een tuple, lijst of unie. Vereisten: · Python


extprot Gerelateerde software