|
|
Dozenten |
Prof. Dr. Oliver Vornberger,
Nils Haldenwang, B.Sc. |
Vorlesung |
donnerstags, 10:05 - 11:35 Uhr, Raum 31/449a
|
Inhalt |
Agile Softwareentwicklung, Behaviour-Driven Development (BDD), Representational
State Transfer (REST), Resource-Oriented Architecture (ROA), GIT, Ruby, Ruby on
Rails
Die Teilnehmer lernen an praktischen Beispielen die effiziente Verwendung des
Frameworks Ruby on Rails zur Entwicklung von Webapplikationen. Zum
hinreichenden Verständnis müssen zunächst die dem Framework zugrunde liegenden
Konzepte und Prinzipien (Agile Softwareentwicklung, Resource-Oriented
Architecture) und natürlich die Sprache Ruby eingeführt werden. Am Ende der
Veranstaltung entwickeln die Teilnehmer selbst eine vollständige Applikation,
um das erarbeitete Wissen unter realen Bedingungen einzusetzen und zu erproben.
|
Ablauf |
Do, 19.04. |
1-1 |
Organisatorisches, Einführung in die Ruby-Syntax (Zahlen, Strings, Symbole, Arrays, Hashes, Methoden, Blöcke) |
1-1
|
1-1 |
- |
Do, 26.04. |
1-2 |
Regular Expressions, Klassendefinition, LOAD_PATH, require, Editoren und IDEs |
1-2
|
1-2 |
Blatt 1
|
Loesung 1
|
Do, 03.05. |
1-3 |
Exceptions, Module, Object Model |
1-3
|
1-3 |
Blatt 2
|
Loesung 2
|
Do, 10.05. |
1-4 |
Methoden, Blocks, Procs und Lambdas |
1-4
|
1-4 |
Blatt 3
|
Loesung 3
|
Do, 17.05. |
- |
Fällt aus wegen Himmelfahrt |
|
-
|
-
|
Do, 24.05. |
2 |
Git: Grundlagen, Workflows, Branching und Merging |
2
|
2 |
- |
- |
Do, 31.05. |
3, 4-1 |
Web Application Architecture (HTTP, REST, Roa), Rails Konzepte (MVC, DRY, COC) |
3,4-1
|
3, 4-1 |
- |
- |
Do, 07.06. |
4-2 |
Rails Grundlagen (Scaffold, Model, View, Controller und Routing) |
4-2
|
4-2 |
Blatt 4 |
Loesung 4 |
Do, 14.06. |
4-3, 4-4 |
Rails Konfiguration (Environments, Bundler), Active Record Grundlagen (Associations, Validations, Callbacks) |
4-3, 4-4
|
4-3, 4-4 |
Blatt 5 |
Loesung 5 |
Do, 21.06. |
4-5 |
View (Asset Pipeline, Partials, Helper), Controller (Filter, Rendering), Anti-Patterns (Law of Demeter), Design-Patterns (Presenter) |
4-5
|
4-5 |
Blatt 6 |
Loesung 6 |
Do, 28.06. |
4-6, 5-1 |
Nested Resources, Authentication (Devise), Authorization (CanCan), Agile Softwareentwicklung (TDD, BDD) |
4-6,6-1
|
4-5, 5-1 |
Blatt 7 |
Loesung 7 |
Do, 05.07 |
6 |
Behaviour-Driven Rails (RSpec, Cucumber, Factory Girl) |
6
|
6 |
- |
- |
Do, 12.07 |
6 |
Behaviour-Driven Rails Demo, Projektinformationen, Evaluation |
6
|
6 |
- |
- |
|
Mailingliste |
Interessenten tragen sich bitte selbst über die
Listenverwaltung
ein und melden sich dann bei mir zwecks Freischaltung.
|
Ruby |
|
Rails |
|
Vim |
|
Git |
|
Literatur |
-
D. Thomas, C. Fowler, and A. Hunt.
"Programming Ruby". Pragmatic Books-
helf, 2009.
-
P. Perrotta.
"Metaprogramming Ruby". Pragmatic Bookshelf, 2010.
-
L. Richardson and S. Ruby.
"RESTful web services". O'Reilly Media, 2007.
-
D. Chelimsky, D. Astels, Z. Dennis, A. Hellesoy, B. Helmkamp, and
D. North.
"The RSpec Book: Behaviour-Driven Development with RSpec,
Cucumber, and Friends". The Pragmatic Programmers, LLC., 2010
-
S. Ruby, D. Thomas, D. Hansson, et al.
"Agile web development with Rails".
Pragmatic Bookshelf, 2011.
-
O. Fernandez.
"The Rails 3 Way". Addison-Wesley Professional, 2010.
-
C. Pytel and T. Saleh.
"Rails Antipatterns: Best Practice Ruby on Rails
Refactoring". Addison-Wesley Professional, 2010.
-
M. Fowler and K. Beck.
"Refactoring: Improving the design of existing code".
Addison-Wesley Professional, 1999.
-
R. C. Martin.
"Clean Code: A Handbook of Agile Software Craftsmanship".
Pearson Education, 2009.
|
Leistungsnachweis |
Für den Leistungsnachweis muss in Kleingruppen im Rahmen der an die Vorlesung
anschließenden vorlesungsfreien Zeit eine Webapplikation mittels der erlernten
Konzepte und Werkzeuge entwickelt und nach Fertigstellung präsentiert werden.
|