-
Notifications
You must be signed in to change notification settings - Fork 0
Erlangen-pm/mojolicious-tutorial
Folders and files
Name | Name | Last commit message | Last commit date | |
---|---|---|---|---|
Repository files navigation
Einführung in das Webframework Mojolicious in der Programmiersprache Perl Projekt-URL: https://github.com/bedivere/mojolicious-tutorial Einleitung ========== Dies ist ein einfaches Hands-On-Tutorial für moderne Webprogrammierung in Perl am Beispiel des Mojolcious-Frameworks. Das Tutorial richtet sich an Programmierer, die zumindest mal von Webprogrammierung, relationalen Datenbanken und Perl gehört haben. Im Tutorial soll in etwa einer Stunde allgemein etwas zu Perl, Webentwicklung, MVC-Konzept und unsere Arbeitsumgebung gesagt werden. Das ist zugegebenermaßen keine sehr lange Zeit, deswegen sind Vorkenntnisse wie unten beschrieben unumgänglich. Anschließend soll an einem kleinen Beispiel eine Webanwendung in Perl mit Mojolicious auf Grundlage einer SQLite-Datenbank erstellt werden. Das füllt den rest des Tages aus (5 bis 7 Stunden). Während dieses Praktischen Teiles wird neben der eigentlichen Webprogrammierung auch immer wieder das Programmieren in Perl angesprochen, allerdings kann das wegen der geringen Zeit doch nur oberflächlich erfolgen. Für den ersten theoretischen Teil sind hübbsche bunte Folien vorgesehen (doc/slides). Der zweite Teil ist praktischer Natur und findet dann als live-Demo im Texteditor der Wahl sowie im Kommandozeilenprogramm aka Terminalemulator der Wahl statt. Am Ende des praktischen Teiles steht eine Webanwendung, die sich vorrangig auf die Umsetzung der zugrundeliegenden Funktionen bezieht. Ästethische Ansprüche sowie weiterführenden belangen von Usability oder lustige Effekte mittels Javascript/ JQuery und Ajax werden hier ausgeklammert. Die Webanwendung, die im praktischen Teil erstellt wird, befasst sich inhaltlich mit dem Thema Prüfungsverwaltung. Es sollen in einer relationalen Datenbank Listen von Professoren, Studierenden und Prüfungen gepflegt werden, die in geeignerter Weise verknüpft sind: - Ein Professor hat mehrere Prüfungen auszugestalten - Ein Studierender nimmt an mehreren Prüfungen teil - Eine Prüfung wird von genau einem Professor durchgeführt - An einer Prüfung nehmen mehrere Studierende teil Eine genauere Beschreibung der Inhalte des Datenmodells hinter dieser Aufgabe ist dem Datenschema unter "src/Schema.sql" zu entnehmen. Vorraussetzungen: ================= Perl >= 5.16.1 http://perldoc.perl.org http://metacpan.org http://www.perl-community.de/bat/content/view/home http://perl-tutorial.org/ Mojolicious >= 3.52 http://mojolicio.us/ DBI >= 1.662 http://dbi.perl.org/ DBIx::Class >= 0.08203 http://www.dbix-class.org/ DBD::SQLite >= 1.37 https://metacpan.org/module/DBD::SQLite SQLite >= 3.7.14.1 http://sqlite.org/ Empfehlungen: ============= Strawberryperl Perl für Windows-Benutzer http://strawberryperl.com Enthält bereits: Perl, DBI, DBD::SQLite, cpanminus cpanminus https://metacpan.org/module/App::cpanminus PerlTidy https://metacpan.org/module/perltidy Quellcode-Filter zum nachträglichen Formatieren von Perl-Code gemäß der Empfehlungen aus dem Buch "Perl Best Practices" von Damian Conway Padre http://padre-ide.de/blog/ Perl-IDE für verschiedene Plattformen Moose, Mouse, Moo, Mo https://metacpan.org/module/Moose https://metacpan.org/module/Mouse https://metacpan.org/module/Moo https://metacpan.org/module/Mo Falls jemand richtige Objektorientierung in Perl machen will Je mehr Buchstaben, desto mehr Features, aber eben mit Performance-Einbußen Starman https://metacpan.org/module/Starman Hochperformanter preforking Webserver in Perl Zielgruppenbeschreibung: ======================== Bei der Zielgruppe für dieses Tutorials sollten folgende Wissens- und Kenntnisse vorrausgesetzt werden könne, um dem Tutorial gut folgen zu können: + Ausgezeichnete Kenntnisse: - Umgang mit dem Computer - Umgang mit dem Betriebssystem seiner Wahl - Umgang mit einem Texteditor für Programmieraufgaben (Syntaxhighlighting!) - Umgang mit der Konsole/dem Terminalemulator seiner Wahl - Umgang mit einem Webbrowser + Gute Kenntnisse: - Programmierung allgemein - Objektorientiertes Programmieren - Imparatives Programmieren - Webprogrammierung Allgemein - HTML, CSS + Grundkenntnisse: - MVC - Perl - Reguläre Ausdrücke - Relationale Datenbanken - Objektrelationale Mapper für relationale Datenbanken - SQL - Funktionales Programmieren - Javascript/JQuery
About
Einführung in das Webframework Mojolicious in der Programmiersprache Perl
Resources
Stars
Watchers
Forks
Releases
No releases published
Packages 0
No packages published