Projektimporte
Teile eine wachsende Anwendung in gut lesbare Quelldateien. Importpfade werden innerhalb des Projekts aufgelöst und gemeinsam mit der Anwendung geprüft. import "./billing.zyl" as billing
Wiederverwendung mit System
Baue eine Funktion einmal, prüfe sie mit dem Compiler und setze sie in der nächsten Anwendung wieder ein. Zelyra-Pakete halten Schnittstellen typisiert, Effekte sichtbar und Projektstände reproduzierbar.
Drei Wege zum Zusammensetzen
Eine gemeinsame Datei, ein lokales Paket oder ein signiertes Quellartefakt: Wähle die Wiederverwendung, die zu Team und Bereitstellung passt.
Teile eine wachsende Anwendung in gut lesbare Quelldateien. Importpfade werden innerhalb des Projekts aufgelöst und gemeinsam mit der Anwendung geprüft. import "./billing.zyl" as billing
Gib einer wiederverwendbaren Fähigkeit ein eigenes Manifest, eine Version, öffentliche Exporte und eine Effektobergrenze. Sperre den Quellstand und importiere den Paketnamensraum. import "pkg:money" as money
Veröffentliche ein Quellartefakt und einen deterministischen Index für kontrollierte Verteilung. Hinzufügen und Aktualisieren geschehen ausdrücklich; Prüfen und Ausführen eines gesperrten Projekts funktionieren offline. Paket-Handbuch
Ein greifbares Geschäftsbeispiel
Das Paket enthält die Berechnung; die Rechnungsanwendung verantwortet Beleg und Kundenablauf. Die Verbindung ist eine typisierte Funktion. So kann sich jede Seite weiterentwickeln, ohne die Berechnung zu kopieren.
Die Funktion verwendet exakte Decimal-Werte, beschreibt ihre Eingabebedingungen und liefert den berechneten Bruttobetrag. Zelyra prüft Paket und Aufrufer als gemeinsamen Abhängigkeitsgraphen.
pub fn calculate_gross(net: Decimal, rate: Decimal) -> Decimal
requires { net >= decimal("0.00") && rate >= decimal("0.00") }
ensures { result >= net }
{
tax = (net * rate) / decimal("100.00")
return net + tax
}
import "pkg:money" as money
fn main() {
gross = money::calculate_gross(decimal("1250.00"), decimal("19.00"))
print(gross)
}
Vom Quelltext zur gemeinsamen Fähigkeit
Starte mit einem lokalen Paket. Das Paketmanifest nennt das Paket; das Anwendungsmanifest deklariert Pfad und passende Version.
Erzeuge ein kleines Startmodul, ohne bestehende Dateien zu überschreiben.
zelyra module init packages/money --name money --version 0.1.0Trage lokalen Pfad und Versionsbereich im Projektmanifest ein.
[dependencies.money]
path = "packages/money"Halte den aufgelösten Paketquellstand fest, damit das Team denselben Abhängigkeitsstand reproduziert.
zelyra package lock .Prüfe die Anwendung auf Typen, sieh Exporte ein und analysiere den Modulplan.
zelyra check main.zyl
zelyra module list main.zylTeil des Arbeitsablaufs
Die Paketwerkzeuge zeigen Quellcode, Exporte, Effekte, Einstellungen und Verteilung, bevor ein Modul Teil einer Anwendung wird.
`module list` und `module plan` zeigen Aliase, öffentliche Exporte, Quellprüfsummen und den gewählten Abhängigkeitsgraphen als stabile Text- oder JSON-Ausgabe.
Nur ausdrücklich öffentliche Symbole überschreiten die Paketgrenze. Typen, Importe, Contracts und deklarierte Capabilities prüft Zelyra.
Beschreibe unterstützte Einstellungen im Manifest und konfiguriere sie je Anwendung. Geheimnisse werden über Umgebungsvariablen referenziert.
Prüfe Quellumfang und offene Referenzen vor dem Bündeln. Ergänze und validiere damit die deploymentspezifische Konfiguration.
Vertrauen, das du prüfen kannst
Eine Prüfsumme im Lockfile macht Quelländerungen sichtbar. Ein vertrauenswürdiger Signaturschlüssel bestätigt die Signatur des Artefakts. Beides ersetzt weder die Codeprüfung noch bewusst erteilte Anwendungscapabilities oder Tests im eigenen Projekt.
Details zur Paketsicherheit lesenEin wachsendes Modulumfeld
Ein Modul kann eine Geschäftsregel, einen Datenadapter oder einen wiederverwendbaren Ablauf kapseln. Halte Pakete fokussiert, gib ihnen eine typisierte öffentliche Schnittstelle und setze größere Anwendungen daraus zusammen.
Bündle Berechnungen und Regeln, die in Rechnungen, Angeboten und Auswertungen einheitlich gelten sollen.
Halte Parsing, Zuordnung und Validierung an einer typisierten Schnittstelle; die Anwendung legt fest, wie sie Aufrufe autorisiert und ausführt.
Setze Dokumenterzeugung und Versand mit den Berechtigungen, der Outbox und der Deployment-Konfiguration der Anwendung zusammen.
Beginne mit dem geprüften Steuerbeispiel und sieh dir danach das Paket-Handbuch und ein echtes Projekt mit mehreren Paketen an.