Im vorherigen Artikel SmartExtensions: Einstieg haben wir uns über die Frameworks, Werkezuge und Hilfmitteln beschätigt. Der nun folgende Artikel beleuchtet das Framework selbst und zeigt auf, was man wo findet. Wie die Struktur der Projektes aussieht und alles im Verhältnis steht. Dies macht es einfacher, für den Einstieg in das neue Framework und bringt die Idee dahinter näher.
Die Verzeichnisstruktur ist wie folgt aufgebaut bzw. in verschieden Bereiche aufgeteilt:
EXTENSIONS
├───archive
├───backup
├───build
├───development
└───releases
Nun die Erläuterung der jeweiligen Aufgabe bzw. Funktionen der Ordner auf der ersten Ebene:
Die Struktur im Ordner development sieht wie folgt aus:
EXTENSIONS
├───...
├───development
│ ├───components
│ │ ├───controller
│ │ └───libraries
│ ├───config
│ ├───embedded
│ │ ├───config
│ │ ├───css
│ │ ├───img
│ │ └───js
│ ├───extensions
│ │ ├───{extension-name}
│ │ │ ├───config
│ │ │ ├───css
│ │ │ ├───img
│ │ │ └───js
│ ├───global
│ │ ├───config
│ │ ├───css
│ │ ├───img
│ │ └───js
│ ├───includes
│ ├───libraries
│ │ ├───bootstrap
│ │ │ └───4.3.1-dist
│ │ │ ├───css
│ │ │ └───js
│ │ ├───clipboardjs
│ │ │ └───2.0.4
│ │ ├───font-awesome
│ │ │ └───5.8.1
│ │ │ ├───css
│ │ │ └───webfonts
│ │ ├───gijgo
│ │ │ ├───1.9.13
│ │ │ │ ├───css
│ │ │ │ ├───fonts
│ │ │ │ └───js
│ │ │ │ └───messages
│ │ │ └───1.9.6a
│ │ │ ├───css
│ │ │ ├───fonts
│ │ │ └───js
│ │ │ └───messages
│ │ ├───handlebars
│ │ │ └───4.1.2
│ │ ├───jquery
│ │ │ ├───3.4.0
│ │ │ └───plugins
│ │ │ ├───freeze-table
│ │ │ │ └───1.2.0
│ │ │ │ └───dist
│ │ │ │ └───js
│ │ │ └───scrolling-tabs
│ │ │ └───2.5.0
│ │ │ └───dist
│ │ ├───js-cookie
│ │ │ └───2.2.0
│ │ ├───lodash
│ │ │ └───4.17.11
│ │ └───moment
│ │ ├───js
│ │ │ └───2.24.0
│ │ ├───msdate
│ │ │ └───2.0.1
│ │ └───timezone
│ │ └───0.5.25-2019a
│ └───other
└───...
Hier die Erläuterung der jeweiligen Funktionen der Ordner innerhalb von development:
Der Build-Prozess verarbeitet diese Struktur und erzeugt dann automatisch die jeweiligen, kompakten und passend zugeschnitten Pakete. Doch dazu später mehr in einem eigenen Artikel. ;)
Aktuell bin ich mir nicht zu 100% sicher, ob die o.g. Struktur für die kommenden Jahre ausreichend ist. Jedoch habe ich in den letzten 12 Monaten gemerkt, dass man sehr flexibel damit zu arbeiten und sie ist nicht zu komplex. Doch wenn es eine Verbesserung dazu gibt, bin ich jederzeit offen dazu und würde das gerne im Slack in Ruhe besprechen ;)
Im nächsten Artikel beschäftigen wir uns mit SmartExtensions: RQL-Connector inkl. Session- und Objektaufbau ;)
... ist Senior Site Reliability Engineer bei der Vodafone GmbH in Düsseldorf. Seit dem Jahr 2007 betreut er zusammen mit seinen Kollegen die OpenText- (vormals RedDot-) Plattform Web Site Management für die deutsche Konzernzentrale.
Er entwickelt Erweiterungen in Form von Plug-Ins und PowerShell Skripten. Seit den Anfängen in 2001 (RedDot CMS 4.0) kennt er sich speziell mit der Arbeitweise und den Funktionen des Management Server aus.