36
Programmiertechniken Content Management -Systeme & -Frameworks Eine Übersicht der gängigsten Programmiertechniken und Frameworks Robin Stenger & Pia Linnemann

Programmiertechniken Content Management -Systeme & -Frameworkszefly.com/.../Pr_sentation_Pia...CMS__Frameworks.pdf · Content Management Systems & Frameworks Überblick, Besonderheiten

  • Upload
    others

  • View
    2

  • Download
    0

Embed Size (px)

Citation preview

Page 1: Programmiertechniken Content Management -Systeme & -Frameworkszefly.com/.../Pr_sentation_Pia...CMS__Frameworks.pdf · Content Management Systems & Frameworks Überblick, Besonderheiten

Programmiertechniken Content Management-Systeme & -Frameworks

Eine Übersicht der gängigsten Programmiertechniken und Frameworks

Robin Stenger & Pia Linnemann

Page 2: Programmiertechniken Content Management -Systeme & -Frameworkszefly.com/.../Pr_sentation_Pia...CMS__Frameworks.pdf · Content Management Systems & Frameworks Überblick, Besonderheiten

Agenda

Programmiertechniken

Was sind Programmiertechniken

Übersicht CMS/F und Programmiertechniken

Content Management Systems & Frameworks

Überblick, Besonderheiten und Anwendungsbeispiele CMS & CMF

1

Die gängigsten Sprachen

1.1

1.2

2

2.1

2.2

Robin Stenger & Pia Linnemann

Page 3: Programmiertechniken Content Management -Systeme & -Frameworkszefly.com/.../Pr_sentation_Pia...CMS__Frameworks.pdf · Content Management Systems & Frameworks Überblick, Besonderheiten

• Eine Programmiertechnik ist eine formale Sprache zur Formulierung von Datenstrukturen und Algorithmen, d. h. von Rechenvorschriften, die von einem Computer ausgeführt werden können.

• Sie setzen sich aus Anweisungen nach einem vorgegebenen Muster zusammen, der sogenannten Syntax.

Programmiertechnik – Was ist das?

Robin Stenger & Pia Linnemann

Page 4: Programmiertechniken Content Management -Systeme & -Frameworkszefly.com/.../Pr_sentation_Pia...CMS__Frameworks.pdf · Content Management Systems & Frameworks Überblick, Besonderheiten

Agenda

Programmiertechniken

Was sind Programmiertechniken

Übersicht CMS/F und Programmiertechniken

Content Management Systems & Frameworks

Überblick, Besonderheiten und Anwendungsbeispiele CMS & CMF

1

Die gängigsten Sprachen

1.1

1.2

2

2.1

2.2

Robin Stenger & Pia Linnemann

Page 5: Programmiertechniken Content Management -Systeme & -Frameworkszefly.com/.../Pr_sentation_Pia...CMS__Frameworks.pdf · Content Management Systems & Frameworks Überblick, Besonderheiten

Programmiertechniken – Welche sind die wichtigsten?

• Die Wikipedia verzeichnet Hunderte von Programmiersprachen, wirtschaftliche Bedeutung haben aber nur vergleichsweise wenige davon.

• TIOBE Index

Robin Stenger & Pia Linnemann

Page 6: Programmiertechniken Content Management -Systeme & -Frameworkszefly.com/.../Pr_sentation_Pia...CMS__Frameworks.pdf · Content Management Systems & Frameworks Überblick, Besonderheiten

Java

• Java ist eine objektorientierte Programmiersprache und eine eingetragene Marke des Unternehmens Sun Microsystems (Oracle)

• Plattformunabhängig

• Oracle selbst bietet Laufzeitumgebungen für die Betriebssysteme Linux, OS X, Solaris und Windows an.

• Andere Hersteller lassen eigene Java-Laufzeitumgebungen für ihre Plattform zertifizieren.

• Auch in Autos, HiFi-Anlagen und anderen elektronischen Geräten wird Java verwendet.

Robin Stenger & Pia Linnemann

Page 7: Programmiertechniken Content Management -Systeme & -Frameworkszefly.com/.../Pr_sentation_Pia...CMS__Frameworks.pdf · Content Management Systems & Frameworks Überblick, Besonderheiten

C / C++

• Imperative Programmiersprache

• 1970

• Anwendungsbereiche: System- und Anwendungsprogrammierung

• Zahlreiche Sprachen, wie C++, Objective-C, C#, Java oder PHP, orientieren sich an der Syntax und anderen Eigenschaften von C.

Robin Stenger & Pia Linnemann

Page 8: Programmiertechniken Content Management -Systeme & -Frameworkszefly.com/.../Pr_sentation_Pia...CMS__Frameworks.pdf · Content Management Systems & Frameworks Überblick, Besonderheiten

C# (C-Sharp)

• typsichere, objektorientierte Allzweck-Programmiersprache

• Plattformunabhängig

• .NET

• Ursprünglich exklusiv für Windows

• OS X, iOS und Android auch möglich

Robin Stenger & Pia Linnemann

Page 9: Programmiertechniken Content Management -Systeme & -Frameworkszefly.com/.../Pr_sentation_Pia...CMS__Frameworks.pdf · Content Management Systems & Frameworks Überblick, Besonderheiten

Phyton

• ist eine universelle, üblicherweise interpretierte höhere Programmiersprache

• Ihre Entwurfsphilosophie betont Programmlesbarkeit, außerdem ist Python-Code im Vergleich zu anderssprachigem Code teilweise deutlich kürzer

• Eine Reihe von Web-Application-Frameworks nutzt Python

• Ferner gibt es einen Python-Interpreter für das Symbian-Betriebssystem, so dass Python auf verschiedenen Mobiltelefonen verfügbar ist.

• Außerdem basieren mehrere bekannte kommerzielle Projekte, etwa Google und YouTube, in Teilen auf Python.

• Auch in der Spieleindustrie findet die Sprache bisweilen Einsatz

Robin Stenger & Pia Linnemann

Page 10: Programmiertechniken Content Management -Systeme & -Frameworkszefly.com/.../Pr_sentation_Pia...CMS__Frameworks.pdf · Content Management Systems & Frameworks Überblick, Besonderheiten

PHP

• „Hypertext Preprocessor“, ursprünglich „Personal Home Page Tools“

• Skriptsprache mit einer an C angelehnten Syntax, die hauptsächlich zur Erstellung dynamischer Webseiten oder Webanwendungen verwendet wird.

• PHP zeichnet sich durch breite Datenbankunterstützung und Internet-Protokolleinbindung sowie die Verfügbarkeit zahlreicher Funktionsbibliotheken aus.

• PHP wurde Anfang 2013 auf etwa 244 Millionen Websites eingesetzt und Ende 2015 von 82 % aller Websites als serverseitige Programmiersprache verwendet. PHP ist die am häufigsten verwendete Programmiersprache zum Erstellen von Websites. Zudem ist sie bei den meisten Webhostern vorinstalliert.

Robin Stenger & Pia Linnemann

Page 11: Programmiertechniken Content Management -Systeme & -Frameworkszefly.com/.../Pr_sentation_Pia...CMS__Frameworks.pdf · Content Management Systems & Frameworks Überblick, Besonderheiten

Visual Basic .NET

• ist eine Programmiersprache, die auf dem Microsoft .NET Framework aufbaut (objektorientiert)

• Visual Basic .NET produziert einen Zwischencode für eine von Microsoft entwickelte virtuelle Maschine, die Common Language Runtime (CLR)

• Diese Maschine ist im .NET Framework enthalten.

• Der Zwischencode wird erst zur Laufzeit in Maschinencode übersetzt, durch diese Zwischenstufe der virtuellen Maschine bleibt sie mit anderen .NET-Sprachen interoperabel, zur Ausführung wird jedoch das .NET Framework benötigt.

Robin Stenger & Pia Linnemann

Page 12: Programmiertechniken Content Management -Systeme & -Frameworkszefly.com/.../Pr_sentation_Pia...CMS__Frameworks.pdf · Content Management Systems & Frameworks Überblick, Besonderheiten

HTML (Hypertext Markup Language)

Robin Stenger & Pia Linnemann

• ist eine textbasierte Auszeichnungssprache zur Strukturierung digitaler Dokumente wie Texte mit Hyperlinks, Bildern und anderen Inhalten.

• HTML-Dokumente sind die Grundlage des World Wide Web und werden von Webbrowsern dargestellt. Neben den vom Browser angezeigten Inhalten können HTML-Dateien zusätzliche Angaben in Form von Metainformationen enthalten, z. B. über die im Text verwendeten Sprachen, den Autor oder den zusammengefassten Inhalt des Textes.

• HTML dient als Auszeichnungssprache dazu, einen Text semantisch zu strukturieren, nicht aber zu formatieren. Die visuelle Darstellung ist nicht Teil der HTML-Spezifikationen und wird durch den Webbrowser und Gestaltungsvorlagen wie CSS bestimmt.

Page 13: Programmiertechniken Content Management -Systeme & -Frameworkszefly.com/.../Pr_sentation_Pia...CMS__Frameworks.pdf · Content Management Systems & Frameworks Überblick, Besonderheiten

JavaScript

Robin Stenger & Pia Linnemann

• JavaScript ist eine Skriptsprache, die ursprünglich für dynamisches HTML in Webbrowsern entwickelt wurde, um Benutzerinteraktionen auszuwerten, Inhalte zu verändern, nachzuladen oder zu generieren und so die Möglichkeiten von HTML und CSS zu erweitern.

• Heute findet JavaScript auch außerhalb von Browsern Anwendung, so etwa auf Servern und in Microcontrollern.

• In JavaScript lässt sich je nach Bedarf objektorientiert, prozedural oder funktional programmieren.

Page 14: Programmiertechniken Content Management -Systeme & -Frameworkszefly.com/.../Pr_sentation_Pia...CMS__Frameworks.pdf · Content Management Systems & Frameworks Überblick, Besonderheiten

JavaScript

Robin Stenger & Pia Linnemann

Typische Anwendungsgebiete von JavaScript im Webbrowser sind:

• dynamische Manipulation von Webseiten über das Document Object Model

• Plausibilitätsprüfung (Datenvalidierung) von Formulareingaben noch vor der Übertragung zum Server

• Anzeige von Dialogfenstern

• Senden und Empfangen von Daten, ohne dass der Browser die Seite neu laden muss (Ajax)

• Vorschlagen von Suchbegriffen während der Eingabe

• Werbebanner oder Laufschriften

• Verschleierung von E-Mail-Adressen zur Bekämpfung von Spam

• mehrere Frames auf einmal wechseln oder die Seite aus dem Frameset lösen

• Schreib- und Lesezugriff auf Cookies und den Web Storage innerhalb des Browsers

Page 15: Programmiertechniken Content Management -Systeme & -Frameworkszefly.com/.../Pr_sentation_Pia...CMS__Frameworks.pdf · Content Management Systems & Frameworks Überblick, Besonderheiten

Agenda

Programmiertechniken

Was sind Programmiertechniken

Übersicht CMS/F und Programmiertechniken

Content Management Systems & Frameworks

Überblick, Besonderheiten und Anwendungsbeispiele CMS & CMF

1

Die gängigsten Sprachen

1.1

1.2

2

2.1

2.2

Robin Stenger & Pia Linnemann

Page 16: Programmiertechniken Content Management -Systeme & -Frameworkszefly.com/.../Pr_sentation_Pia...CMS__Frameworks.pdf · Content Management Systems & Frameworks Überblick, Besonderheiten

Was ist ein CMS?

• Content-Management-System (CMS)

• Ortsunabhängige Web Software

• zur gemeinschaftlichen Erstellung, Bearbeitung und Darstellung von Websiteinhalten

• Meistens ohne Programmierkenntnisse bedienbar grafische Oberfläche

• je nach System verschiedene Spezialisierung (Content, Shop usw.)

• Zuteilung von individuellen Bearbeitungsrechten

• Basieren auf CMF

Robin Stenger & Pia Linnemann

Page 17: Programmiertechniken Content Management -Systeme & -Frameworkszefly.com/.../Pr_sentation_Pia...CMS__Frameworks.pdf · Content Management Systems & Frameworks Überblick, Besonderheiten

Welche CMS gibt es?

Robin Stenger & Pia Linnemann

Page 18: Programmiertechniken Content Management -Systeme & -Frameworkszefly.com/.../Pr_sentation_Pia...CMS__Frameworks.pdf · Content Management Systems & Frameworks Überblick, Besonderheiten

Wann ist ein CMS nötig?

• Content-Management-System (CMS)

• Wenn Seiteninhalte häufig geändert werden z.B. Content News, Blogs, größere Online Shops, Communitys usw.

• Basic-Websites ohne große spezielle Bedürfnisse

Robin Stenger & Pia Linnemann

Page 19: Programmiertechniken Content Management -Systeme & -Frameworkszefly.com/.../Pr_sentation_Pia...CMS__Frameworks.pdf · Content Management Systems & Frameworks Überblick, Besonderheiten

Was ist ein Content Management Framework?

• Content-Management-Framework (CMF)

• Basis zur Entwicklung von CMS

• beschleunigt Programmierung einer Website

• Baukastensystem: Software Bausteine stellen grundlegende Funktionalitäten bereit wie z.B.:

Zugriffsschutz, Datenbankschnittstellen, Templates & Suchfunktionalitäten

• meisten CMF sind mittels Skriptsprachen abgebildet

• Programmierkenntnisse nötig

• anfangs teure Entwicklungskosten, langfristig günstiger

• flexibler, da eigene Bedürfnisse besser im Code bearbeitet werden können

• Vorzüge: geringer zeitlicher Aufwand & Budget schnell sehr professionelle

Oberflächen anzulegenRobin Stenger & Pia Linnemann

Page 20: Programmiertechniken Content Management -Systeme & -Frameworkszefly.com/.../Pr_sentation_Pia...CMS__Frameworks.pdf · Content Management Systems & Frameworks Überblick, Besonderheiten

Snstige Technologien

jQuery

• größte Java-Skript Bibliothek, teilweise bei CMS mitgeliefert wie bei Joomla, Wordpress & Drupal

• JavaScript-Datei, in der alle grundlegenden Ereignis-, Effekt- und Ajax-Funktionen enthalten sind

• Framework-Datei wird in HTML eingebaut

Bootstrap

• Gestaltungsvorlagen für Typografie, Formulare, Buttons, Tabellen & Navigationsgestaltungselemente & optional Java Skript Elemente

• z.B. von NASA, und US-Nachrichtensender MSNBC genutzt

Robin Stenger & Pia Linnemann

Page 21: Programmiertechniken Content Management -Systeme & -Frameworkszefly.com/.../Pr_sentation_Pia...CMS__Frameworks.pdf · Content Management Systems & Frameworks Überblick, Besonderheiten

• Seit 2003, kostenlos & plattformunabhängig, 60% Marktanteil weltweit

• besonders geeignet zum Aufbau und zur Pflege für Webblogs & einfacher

Websites, da jeder Beitrag einer oder mehrerer Kategorien zuordnen kann

• Besonderheiten: u.a Leserkommentare zu prüfen, Linkverwaltung, Zugriffe für

Benutzerrollen & Möglichkeit externer Plug-ins

• große Community die ständig neue Module & Templates entwickelt

• kostenlose Hilfe bei Community

• Beispiel Websites: Crack Magazine, Vouge India

Robin Stenger & Pia Linnemann

Page 22: Programmiertechniken Content Management -Systeme & -Frameworkszefly.com/.../Pr_sentation_Pia...CMS__Frameworks.pdf · Content Management Systems & Frameworks Überblick, Besonderheiten

Robin Stenger & Pia Linnemann

Page 23: Programmiertechniken Content Management -Systeme & -Frameworkszefly.com/.../Pr_sentation_Pia...CMS__Frameworks.pdf · Content Management Systems & Frameworks Überblick, Besonderheiten

Robin Stenger & Pia Linnemann

Page 24: Programmiertechniken Content Management -Systeme & -Frameworkszefly.com/.../Pr_sentation_Pia...CMS__Frameworks.pdf · Content Management Systems & Frameworks Überblick, Besonderheiten

Robin Stenger & Pia Linnemann

Page 25: Programmiertechniken Content Management -Systeme & -Frameworkszefly.com/.../Pr_sentation_Pia...CMS__Frameworks.pdf · Content Management Systems & Frameworks Überblick, Besonderheiten

Joomla!

• Seit 2005, kostenlos & plattformübergreifend, 7% Marktanteil weltweit

• Durch lange Präsenz – ausgereiftes System

• große Community die ständig neue Module & Templates entwickelt

• Erweiterungen wie Plugins, Komponenten, Module und Templates meist kostenfrei vorhanden

• kostenlose Hilfe bei Community

• Beispiel Website: IKEA & Ebay

Robin Stenger & Pia Linnemann

Page 26: Programmiertechniken Content Management -Systeme & -Frameworkszefly.com/.../Pr_sentation_Pia...CMS__Frameworks.pdf · Content Management Systems & Frameworks Überblick, Besonderheiten

Robin Stenger & Pia Linnemann

Page 27: Programmiertechniken Content Management -Systeme & -Frameworkszefly.com/.../Pr_sentation_Pia...CMS__Frameworks.pdf · Content Management Systems & Frameworks Überblick, Besonderheiten

Robin Stenger & Pia Linnemann

Page 28: Programmiertechniken Content Management -Systeme & -Frameworkszefly.com/.../Pr_sentation_Pia...CMS__Frameworks.pdf · Content Management Systems & Frameworks Überblick, Besonderheiten

Robin Stenger & Pia Linnemann

Page 29: Programmiertechniken Content Management -Systeme & -Frameworkszefly.com/.../Pr_sentation_Pia...CMS__Frameworks.pdf · Content Management Systems & Frameworks Überblick, Besonderheiten

• Seit 1998, kostenlos & plattformunabhängig, 2% Marktanteil weltweit

• besonders viele Erweiterungen, ohne eigenen Programmcode geschrieben werden muss wie Shopsysteme, Galerien, Gästebuch

• allerdings vergleichsweise hohe Komplexität und hohe Einarbeitungszeit

• Oft genutzt von öffentl. Organisationen wie Beispielseite die Grüne

Robin Stenger & Pia Linnemann

Page 30: Programmiertechniken Content Management -Systeme & -Frameworkszefly.com/.../Pr_sentation_Pia...CMS__Frameworks.pdf · Content Management Systems & Frameworks Überblick, Besonderheiten

Robin Stenger & Pia Linnemann

Page 31: Programmiertechniken Content Management -Systeme & -Frameworkszefly.com/.../Pr_sentation_Pia...CMS__Frameworks.pdf · Content Management Systems & Frameworks Überblick, Besonderheiten

Robin Stenger & Pia Linnemann

Page 32: Programmiertechniken Content Management -Systeme & -Frameworkszefly.com/.../Pr_sentation_Pia...CMS__Frameworks.pdf · Content Management Systems & Frameworks Überblick, Besonderheiten

• Seit 2001, kostenlos & serverunabhängig, 5% Marktanteil weltweit

• Umsetzung von Ansätzen einer Social Software

• unterstützt den Aufbau von Communitys, die gemeinsam an Inhalten arbeiten, austauschen und informieren wollen

• Nutzer eigene Weblogs anlegen, sich in Foren austauschen oder Artikel veröffentlichen

• Beispielwebsites: 11 Freunde, die Zeit, Flixbus usw.

Robin Stenger & Pia Linnemann

Page 33: Programmiertechniken Content Management -Systeme & -Frameworkszefly.com/.../Pr_sentation_Pia...CMS__Frameworks.pdf · Content Management Systems & Frameworks Überblick, Besonderheiten

Robin Stenger & Pia Linnemann

Page 34: Programmiertechniken Content Management -Systeme & -Frameworkszefly.com/.../Pr_sentation_Pia...CMS__Frameworks.pdf · Content Management Systems & Frameworks Überblick, Besonderheiten

Robin Stenger & Pia Linnemann

Page 35: Programmiertechniken Content Management -Systeme & -Frameworkszefly.com/.../Pr_sentation_Pia...CMS__Frameworks.pdf · Content Management Systems & Frameworks Überblick, Besonderheiten

Agenda

Programmiertechniken

Was sind Programmiertechniken

Übersicht CMS/F und Programmiertechniken

Content Management Systems & Frameworks

Überblick, Besonderheiten und Anwendungsbeispiele CMS & CMF

1

Die gängigsten Sprachen

1.1

1.2

2

2.1

2.2

Robin Stenger & Pia Linnemann

Page 36: Programmiertechniken Content Management -Systeme & -Frameworkszefly.com/.../Pr_sentation_Pia...CMS__Frameworks.pdf · Content Management Systems & Frameworks Überblick, Besonderheiten

Übersicht

Content ManagementSysteme

Techniken

Wordpress PHP, MySQL

Typo3 PHP, MySQL, PostgreSQL, Microsoft SQL Server

Joomla! PHO, MySQL

Drupal PHP, MySQL, MariaDB, PostgreSQL, SQLite

MS Sharepoint .NET Framework, SQL Server, Windows Internal Database

MODX PHP, MySQL

Mombo PHP, MySQL

Midgard GLib, D-Bus, PHP, Python, MySQL

eZ Publish PHP5, MySQL, PostgreSQL, SQL Server

Symphony PHP, NoSQL, RDBMS through PHOCR

Silverstripe PHP5, MySQL, PostgreSQL, SQL ServerRobin Stenger & Pia Linnemann