
HA Framework ist PHP 7.1 -Framework für Fachleute mit strenger Typen. Es ist ein wirklich flexibler Rahmen ohne Ballast und basiert auf Schnittstellen und einigen vordefinierten Instanzen, die jederzeit geändert werden können. Dieses Framework ist ein Anbieterpaket, das über einen Komponist mit einer kleinen Standardfunktionalität installiert werden kann, die alle Komponenten zusammenhält, um die Anforderungen an die serviceorientierten Architektur auf Codeebene zu erfüllen. Und Sie können dieses Konzept alles, was Sie brauchen, leicht hinzufügen - benutzerdefinierte Pakete, benutzerdefinierte ORM, benutzerdefinierte Treiber ...
Die Framework -Architektur basiert auf dem Zugriffstyp: Die Anwendungslogik ist streng von der Ansatzmethode und der Zugriffsmethode (z. B. HTTP -Anwendung, REST -API -Anwendung, mobile Seite, Website, Konsole, ...) getrennt.
Bitte lesen Sie die Framework -Dokumentation für weitere Details.
Installation
Framework kann über HA -Projektskelett installiert werden. Framework ist nur ein Komponistpaket und erfordert Bootstrap aus diesem einfachen Skelett.
Framework -Highlights
- Basierend auf PHP 7.1
- Immer strenge Tippen, alles hat eine Schnittstelle, alles hat auch skalare Tipp- und Rückgabewert -Tipps (automatisch reduziert> 50% Entwickler Fehler)
- SEO bereit (zusätzliches Routing in Fällen, wenn MVC schlecht ist)
- Präzise HTTP -Handhabung (Header Controll, Anforderungsmethodeprüfung, ...)
- Bereit für mehrere Datenquellen (sehr gute Unterstützung für mehrere Instanzen desselben Typs und auch unterschiedliche Treibertypen)
- Cascade -Daten IO -Operationen (z.
- Standard nicht implementiert, die Manipulation mit Daten ist geöffnet (wir können sehr komplexe Objekte haben, in denen die Komponenten aus anderen Datenquellen abgerufen werden als Primärdaten)
- Extreme IDE -Unterstützung (alles ist automatisch vervollständigt, z. B. im PHP -Sturm )
- Leichter und immer wiederverwendbarer Code (keine nutzlosen Pakete in der Kernfunktionalität)
- Basierend auf Schnittstellen (alles kann geändert oder erweitert werden, ohne dass große Code -Umschreibungen umgehen)
- Alles ist Beispiel, nirgends werden statische Anrufe verwendet (sehr gute Abhängigkeitsinjektion)
- Niedriger Speicherkonsruption
- Modelle Sammlungen mit Typschutz (z. B. Kategorie konnte nicht zur Sammlung der Produkte hinzugefügt werden)
- Modelleigenschaftsart Typin
- Der Zugriff auf Modelleigenschaften ist unempfindlich und camelcase/Dash_Case unempfindlich (sehr nützlich für Fälle, in denen DB -Felder DASH_CADED- und JALRECTAUSE -Eigenschaften usw. sind.)
- Die Anwendungsstruktur ist unabhängig von der Verwendung (dieselbe Funktionalität mit unterschiedlichen Zugriffsmethoden und Rendering, wie API, Webseite, mobile Seite, Shell Access, ...; Projekt ist nicht nur eine Website, Webiste kann nur ein kleiner Teil unseres Projekts sein)
- Funktionenversionierung (dasselbe Projekt kann mit versionierten Klassen nach Umgebung funktionieren)
- Alles kann in Konfigurationsdateien konfiguriert werden und die Anwendung wird aus der Konfigurationsdatei erstellt (es funktioniert ähnlich wie Docker-compose.yml )
- Simulierte String [], int [], float [], bool [] Sammlungen für eine bessere Array -Typ -Überprüfung in PHP