www.wikidata.de-de.nina.az
Ein Webframework auch Web Application Framework kurz WAF oder WF ist ein Framework das fur die Entwicklung von dynamischen Webseiten Webanwendungen oder Webservices ausgelegt ist Sich wiederholende Tatigkeiten werden vereinfacht und die Wiederverwendung von Code und die Selbstdokumentation der Software Entwicklung gefordert Durch Konzepte wie Don t repeat yourself KISS oder Konvention vor Konfiguration werden einfache klare und mit wenig Aufwand wartbare Strukturen angeboten Durch vordefinierte und vorgefertigte Klassen werden haufig gebrauchte Funktionen wie Mailversand 1 sichere Authentifizierung und Authentisierung 2 Sicherheitsfunktionen Lokalisierung Performance z B HTTP Caching oder grundlegende Funktionen fur Webformulare vom Framework mitgebracht Webframeworks sind darauf ausgelegt sehr schnell lauffahige Webanwendungen zu erstellen Dazu bieten heutige Webframeworks einen Datenbankzugriff Templating Mechanismen eine saubere Trennung von Prasentation und Code durch Verwendung des Model View Controllers oder Model View Presenters als Architekturmuster sowie oft auch Moglichkeiten zum Rapid Prototyping durch Scaffolding Inhaltsverzeichnis 1 Datenbankzugriff 2 Templatesysteme 3 Scaffolding 4 Routing 5 Siehe auch 6 EinzelnachweiseDatenbankzugriff BearbeitenDie meisten Webframeworks bieten einen Datenbankzugriff meist uber eine objektrelationale Abbildung an Fur die einfache Handhabung gibt es haufig einen objektrelationalen Mapper der sich um die Persistierung kummert und fertige Klassen zur Verwendung anbietet Dies kann explizit wie z B in Django geschehen oder aber auch implizit uber Introspektion wie z B in Ruby on Rails Einige Webframeworks enthalten eine Datenbankabstraktionsschicht als eigenstandiges Framework wie z B Doctrine in Symfony Eine bestehende und bereits mit Daten beschriebene Datenbank kann nicht wie die Software selbst einfach ersetzt werden Viele Webframeworks bieten migrations Unterprogramme welche die Datenbankstruktur anpasst mit an um notige Datenbankanderungen automatisch auszufuhren Der Datenbankzugriff aus dem GUI heraus wird in der Informatik generell kontrovers betrachtet Die oft anzutreffende strikte Schichtenarchitektur mit drei Schichten verbietet beispielsweise generell den Zugriff von der Prasentationsschicht auf die Persistenzschicht Auch das oft bei Webframeworks eingesetzte MVC Pattern erlaubt keinen Datenbankzugriff aus dem GUI heraus sondern nur uber das Model Templatesysteme BearbeitenEin Webframework bietet auch meist die Moglichkeit die Anzeige uber eine Template Engine zu steuern Dazu werden auf Abruf HTML Seiten generiert die mit den dynamischen Inhalten gefullt werden An dieser Stelle kann auch meist zwischen statischen und dynamischen Inhalten getrennt werden so dass etwa ein Designer das Aussehen festlegt indem er eine Vorlage entwirft die der Anwendungs Entwickler dann mit Daten befullt Die Syntax der Template Sprachen ist meist an HTML angelehnt oder erweitert dieses nur geringfugig Scaffolding BearbeitenScaffolding auf Deutsch Gerustbau unterstutzt den Entwickler durch die Generierung von CRUD Pages Create Read Update Delete bei der Entwicklung und im Prototyping Dadurch ist es moglich direkt aus dem Entwurf eines Modells etwa ein Web Interface anzubieten uber das Daten sofort in die Datenbank eingegeben und verwaltet werden konnen Auf diese Weise kann bereits mit Beispieldaten entwickelt und getestet werden Auch die Verwaltungs Sichten Admin interface einer Webanwendung konnen teils mit Scaffolding generiert werden da diese haufig nur grundlegende Bedienelemente benotigen Routing BearbeitenDie Definition der URLs der Webanwendung kann meist ahnlich der htaccess im Webframework konfiguriert werden Es konnen Clean URLs Weiterleitungen und Fehlermeldungen festgelegt werden Siehe auch BearbeitenListe von Webframeworks CSS FrameworkEinzelnachweise Bearbeiten Action Mailer Basics User authentication in Django Abgerufen von https de wikipedia org w index php title Webframework amp oldid 224573426