Logo: connexo websolutions
connexo websolutions
Dipl.-Inform. (FH) F. Topel
Zur Windmühle 2
58313 Herdecke
Deutschland

Fon +49 2330 892052
Mobil +49 170 1814131
info@connexo.de
http://www.connexo.de/



Web-Technologie

Wir möchten Ihnen an dieser Stelle einen kleinen Überblick über die zur Entwicklung von Websites von uns eingesetzten Technologien geben.

XHTML/CSS

Javascript

AJAX

PHP/MySQL

Frameworks

XHTML

XHTML ist die "Sprache" des World Wide Web und dient der Strukturierung von Dokumenten in Überschriften, Absätze, Listen, Tabellen etc. Als solches sollte es nicht für gestalterische Zwecke herhalten. Die semantische Verwendung von XHTML bringt sozusagen "en passant" eine Reihe von Vorteilen:

  • Schlanker und schnell ladender Quellcode;
  • maschinelle Lesbarkeit -> inhärente Suchmaschinenoptimierung;
  • verbesserte Zugänglichkeit (Stichwort Barrierefreiheit/BITV);
  • durch zentrale Steuerung von Gestaltung und Layout eine gute Pflegbarkeit.

CSS

Gestaltung und Layout hingegen sind die Aufgabe von CSS. Dort werden Regeln hinterlegt, wie z. B. Überschriften, Listen und andere Dokument-Strukturen auf dem Bildschirm (oder Drucker, oder Projektor, oder anderen Ausgabegeräten) dargestellt werden sollen.

CSS-Dateien, sogenannte Stylesheets, entfernt vergleichbar etwa mit Formatvorlagen in Word, werden zentral angelegt und in jede Seite eingebunden. Änderungen, die das Layout betreffen, sind also nur noch in einer einzigen Datei durchzuführen, was den Wartungsaufwand enorm verringert, zugleich für eine website-weite, einheitliche Gestaltung sorgt und nebenbei die Ladezeiten der Website verringert.

» mehr zu den Themen XHTML und CSS

Webstandards

Valid CSS!Valid XHTML 1.0 TransitionalSowohl XHTML (und sein Vorgänger HTML) als auch CSS wird von einem weitgehend herstellerunabhängigen Konsortium normiert: Dem World Wide Web Consortium, kurz W3C. Die Einhaltung dieser Standards garantiert eine weitgehend einheitliche Darstellung in verschiedenen Browsern und zudem eine Zukunftssicherheit, da auch künftige Browsergenerationen diese Standards implementieren werden.

Standardkonformität stellt für uns keine Leistung, sondern eine Selbstverständlichkeit dar. Wir schmücken unsere Site nicht nur mit dem "Valid XHTML 1.0"-Button unten rechts - Sie dürfen auch gern mal draufklicken und sich überzeugen. Stellen, an denen wichtige Browser von den Standards abweichen, sind uns natürlich bekannt, ebenso wie Wege, diese Unterschiede auszubügeln, ohne die Standards zu verletzen.

» mehr zum Thema Webstandards

Javascript

Frau hält Globus in der HandJavascript wurde ursprünglich von der Firma Netscape entwickelt und ist eine sogenannte "clientseitige Skriptsprache". In der Anfangszeit des WWW wurden immer wieder eklatante Sicherheitslücken bekannt, was Javascript für lange Zeit einen (inzwischen vollkommen zu Unrecht) schlechten Ruf einbrachte. Javascript füllt die Lücke, die XHTML und CSS nicht besetzen kann: Es ermöglicht Interaktion mit Eingaben des Benutzers. Der "Client" ist hier der Webbrowser des Surfers. Vor allem ist heute aber Javascript der Motor von AJAX (siehe nächster Reiter).

Javascript kommt beispielsweise immer dann zum Einsatz, wenn Formulareingaben auf Korrektheit und Vollständigkeit geprüft werden sollen, bevor die Formulardaten an den Server geschickt werden. Das beschleunigt das Antwortverhalten der Website, vereinfacht die Kommunikation mit dem Benutzer und ermöglicht somit eine angenehmere Benutzererfahrung. Darüberhinaus finden vermehrt auch grafische Effekte Verwendung, die von Javascript gesteuert werden. In vielen Fällen, in denen früher Flash eingesetzt wurde, reicht heute die Verwendung einer der zahlreichen, frei verfügbaren Effektbibliotheken wie den auf prototype aufsetzenden script.aculo.us und moo.fx².

Nicht in jeder Umgebung ist Javascript jedoch verfügbar. So gibt es Browser, die kein Javascript verstehen (sehr exotische Browser, meist rein textbasierte, nicht-grafische Systeme wie z. B. Lynx). In sicherheitskritischen Umgebungen wird Javascript auch heute noch oft deaktiviert. Beides zusammengenommen macht es erforderlich, dass Funktionalität, die auch ohne Javascript möglich ist, auch ohne diese verfügbar bleibt. Probieren Sie es aus - deaktivieren Sie einmal Javascript und laden Sie unsere Seite neu. Sie werden sehen, dass Sie immer noch uneingeschränkten Zugang zu denselben Informationen haben wie mit Javascript.

Aus Sicht des Seitenbetreibers ist dies auch deswegen sehr wichtig, da die sogenannten Suchmaschinenroboter (auch Spiders genannt), welche sich permanent im Web von Link zu Link hangeln und die Informationen dabei für Suchmaschinen indizieren, kein Javascript verstehen. Inhalte, die ohne Javascript nicht verfügbar sind, können somit nicht in Suchmaschinen aufgenommen werden bzw. für die Indizierung ausgewertet werden.

AJAX

AJAX ist eines der zentralen Schlagworte der letzten zwei Jahre in der Branche und aus technologischer Sicht der Motor des vielbeschworenen "Web 2.0". Dabei handelt es sich nicht etwa um etwas grundlegend neues, sondern um die intelligente Kombination der bereits lange verfügbaren Technologien Javascript und XML.

Vereinfacht gesagt ermöglicht AJAX interaktive Änderungen in der angezeigten Seite im Hintergrund, ohne dass diese dazu komplett neu geladen werden muss. Das verbessert in drastischer Art und Weise das Antwortverhalten der gesamten Website und ermöglicht erst desktopähnliche Anwendungen wie z. B. Google Text, eine kollaborative Textverarbeitung die im Webbrowser läuft, so dass der Benutzer nichts anderes als einen funktionierenden und halbwegs modernen Browser auf seinem Rechner benötigt. Dies macht den Anwender zugleich unabhängig vom verwendeten Betriebssystem und somit auch von der verwendeten Hardware.

PHP

PHP ist eine serverseitige Programmiersprache, d. h. sie wird im Gegensatz zu Javascript, welches im Browser des Benutzers abläuft, vom Webserver ausgeführt und dient der dynamischen Generierung von Webseiten. PHP ist die verbreitetste Skriptsprache und so gut wie auf jedem günstigen Webhosting-Paket verfügbar. Wie alle von uns verwendeten Technologien ist auch PHP quelloffen ("Open Source") und als solches ohne Lizenzkosten verfügbar. Diente PHP anfangs nur als Werkzeug, um häufig benötigte Funktionalität auf dem Webserver zu automatisieren und zu vereinfachen, so wurde es in den vergangenen Jahren zu einer vollwertigen, auch für unternehmenskritische Anwendungen geeigneten, objektorientierten Programmiersprache erweitert. Für PHP existieren darüberhinaus inzwischen unzählige ausgereifte Erweiterungen und Frameworks (z.B. PEAR, PECL, RAD).

Die meisten quelloffenen Content-Management-Systeme sind in PHP entwickelt, darunter z. B.

Typo 3 LogoMambo CMS LogoJoomla CMS LogoDrupal CMS LogoContenido Logo

Auch sehr bekannte Forensysteme wie phpBB, vBulletin (kommerziell) und BurningBoard (kommerziell), Online-Shop-Lösungen wie xt:Commerce und osCommerce und auch Wikipedia basieren auf PHP. Nicht unerwähnt bleiben darf auch die mit großem Abstand weitverbreitetste Blog-Software Wordpress, die ebenfalls in PHP unter der Haube hat. Darüberhinaus gibt es Lösungen für Bildergalerien, Dokumentenmanagement (DMS), Online-Kollaboration und E-Projekt-Management sowie für nahezu jede andere denkbare Aufgabe.

MySQL

MySQL ist ein quelloffenes, relationales Datenbankmanagementsystem (DBMS) und dient der Speicherung von textuellen und binären Inhalten, aus denen mithilfe von PHP oder einer anderen serverseitigen Programmiersprache dynamisch Inhalte generiert werden können. Die Generierung von Inhalten aus einer Datenbank anstelle der statischen Speicherung in einzelnen Dokumenten bietet eine Reihe von Vorteilen:

  • die Inhalte können
    • indiziert,
    • durchsucht
    • und sortiert werden;
  • es können verschiedenste Dokumenttypen erzeugt werden wie zum Beispiel
    • XHTML,
    • PDF,
    • XML,
    • ODT;
  • Zugriffe können feingranular über Rechte gesteuert werden;
  • Transaktionen stellen die Integrität der Daten zu jeder Zeit sicher;
  • automatisierte Backups der Daten sind sehr leicht möglich.

Darüberhinaus lassen sich viele Dinge garnicht mit vertretbarem Aufwand ohne eine Datenbank lösen. Daher findet auch in allen oben unter PHP genannten Softwareprodukten MySQL als Datenbank Anwendung. MySQL ist

  • sehr schnell
  • absolut zuverlässig
  • sehr weit verbreitet
  • und somit auf kostengünstigen Webhosting-Paketen verfügbar.

Zusammenspiel

PHP und MySQL - ein gutes TeamPHP und MySQL gehen meist Hand in Hand und geben dabei ein bewährtes und perfekt harmonierendes Paar ab. Seit der PHP-Version 5.0 ist die mysqli-Erweiterung fester Bestandteil von PHP, welcher den objektorientierten und auf aktuellere Versionen von MySQL zugeschnittenen Zugriff erlaubt.

PHP besitzt natürlich auch Schnittstellen für nahezu jedes größere Datenbankmanagementsystem wie Oracle, MSSQL und DB2. Genauso lässt sich MySQL auch von anderen Skriptsprachen wie C#, ASP.NET und JSP ansprechen und steuern. Mit Creole steht für PHP ein an JDBC angelehntes Datenbank-Abstraktions-Framework zur Verfügung, so dass Applikationen weitestgehend datenbankunabhängig entwickelt werden können. Die so entstehenden Anwendungen lassen sich somit leicht von einer Datenbank auf eine andere umstellen, ohne dass dazu die ganze Anwendung umgebaut werden muss.

Datenbankspezifische Programmierung kommt immer dann zum Einsatz, wenn es um performanzkritische Anwendungen geht und die jeweilige Datenbank nativ ausgereizt werden muss. Dies gilt für sehr zeitkritische Anwendungen ebenso wie für sehr hochfrequentierte Websites mit extrem vielen Datenbankzugriffen. Native Programmierung wird jedoch auch dann oft verwendet, wenn es sich um sehr kleine Anwendungen handelt, und der Aufwand für das Einbinden einer Datenbankabstraktionsschicht unverhältnismäßig hoch wäre.

Seit PHP 5.10: PDO

Seit PHP 5.10 ist mit PDO eine solche Datenbankabstraktionsschicht im Standardumfang von PHP enthalten. Zuvor war PDO als PECL-Paket verfügbar.

Frameworks

Frameworks bieten i. d. R. vorgefertigte, getestete und bewährte Lösungen für häufig auftretende Probleme und Problemfelder in der Softwareentwicklung. So finden im Bereich AJAX kaum vollkommene Eigenentwicklungen statt, da es sehr viele augereifte Frameworks in dem Bereich gibt, die dem Entwickler eine Menge Arbeit abnehmen und meist einen sehr großen Funktionsumfang haben. connexo setzt z. B. im AJAX-Bereich auf Clientseite je nach Projekt prototype oder jquery ein. Auf PHP-/Serverseite hat sich xajax bewährt.

Zur Trennung von Präsentation und Logik setzen wir Smarty ein.


Related Links

Hier finden Sie von uns ausgewählte Links zu den Themen der Seite.

XHTML

CSS

Standards

Javascript

AJAX

PHP/MySQL

Frameworks


 
connexo websolutions Frank Topel | Zur Windmühle 2 | D-58313 Herdecke

Mobil +49 170 18 14 13 1