Coder Social home page Coder Social logo

muellerferdi / hsro-inf-fpk.github.io Goto Github PK

View Code? Open in Web Editor NEW

This project forked from daschub/hsro-inf-prg3.github.io

0.0 1.0 0.0 15.42 MB

Materialien zum Pflichtmodul "Fortgeschrittene Programmierkonzepte" (Programmieren 3)

Home Page: https://hsro-inf-fpk.github.io/

License: MIT License

Ruby 0.16% HTML 52.10% CSS 27.56% C# 10.13% Shell 0.65% Python 8.01% TeX 1.40%

hsro-inf-fpk.github.io's Introduction

Fortgeschrittene Programmierkonzepte (aka Programmieren 3)

Pflichtmodul im Bachelorstudiengang Informatik an der Hochschule Rosenheim.

Literatur

ausserdem hilfreich

Vorlesungen

  • Einführung und Organisatorisches (Slides, Pdf,Übungen)

    Nach einer kurzen Einführung werden wir uns an Hand einiger Beispiele die notwendigen Tools im Java Umfeld ansehen, damit wir für das Semester das Rüstzeug eines Softwareingenieur zur Hand haben: Git, IntelliJ, Google, SO und Java docs. Fehlt noch was?.

  • Klassen und Interfaces (als Wiederholung!) (Slides, Pdf, Skript, Übungen)

    In dieser Session sehen wir uns verschiedene Typen von Klassen an: inner, anonymous, local, und static Klassen. Wann wird was benutzt und welche Sichtbarkeit haben sie? Ausserdem: @FunctionalInterface und Lambda-Expressions.

  • Vererbung (Wiederholung!) (Slides, Skript, Pdf, Übungen)

    Eine weitere Session, die sich mit Klassen beschäftigt. Allerdings mehr aus Sicht der Vererbung (ein wichtiges Konzept der OOP!). Hierzu sehen wir uns final und abstract Classes an, sowie virtuelle Funktionen und defaults. Mit einem ersten Design-Pattern (Decorator) sollte das Thema dann abgerundet sein.

  • Mixins (Teil 1) und Generics (Teil 1) (Slides, Skript, Pdf, Übungen)

    Nach einem kurzen Ausflug zu Mixins, stürzen wir uns natürlich voller Freude in das Thema "Generics". Wie werden diese in Datastrukturen und Algorithmen angewendet.

  • Mixins (Teil 2) und Generics (Teil 2) (Slides, Pdf, Skript, Übungen)

    Mixins zum zweiten und ein paar Sonderfälle bei Generics (Bounds und Wildcards) bestimmen diese Session.

  • Reflection und Annotations (Slides, Pdf, Skript, Übungen)

    Mit dem Reflection API und Annotationen werden wir uns in dieser Session beschäftigen. Das gelingt am Besten an Hand von einigen Beispielen: Unit Tests mit (JUnit5), Serialization mit (gson) und Networking mit (retrofit).

  • Design Pattern (Teil 1) (Slides, Pdf, Skript, Übungen: JavaFX (recommended) or Android (advanced))

    Fun with Pattern! In dieser Session starten wir endlich mit Design-Pattern im Software Engeneering: Composite-, Iterator- und Observer-Pattern (ach ja, und wie kann man damit ein UI implementieren auf Android). Was ist eigentlich MVC/MVVC?

  • Design Pattern, pt. 2 (Slides, Pdf, Skript, Übungen: JavaFX or Android)

    Mehr Pattern: Singleton-, Factory-, Strategy- und Command-Pattern.

  • Design Pattern, pt. 3 (Slides, Pdf, Skript, Übungen: JavaFX, Android)

    Last but not least! Zum Abschluß der Pattern-Reihe: Proxy-, Adapter- und Flyweight-Pattern.

  • Parallel Processing (Teil 1) (Slides, Pdf, Skript, Übungen: JavaFX or Android)

    Parallele Ausführung von Programcode ist ein wichtiges Konzept. In dieser Session steigen wir ein in Threads und parallele Verarbeitung.

  • Parallel Processing (Teil 2) (Slides, Skript, Übungen: Terminal or Android)

    Threads are clunky--- erweiterte Konzepte, wie Future oder Promises werden in dieser Session behandelt.

  • Einführung in die funktionale Programmierung (Slides, Pdf, Skript, Übungen)

    Nachdem wir uns nun fast 3 Semester mit der imperativen und objektorientierten Programmierung beschäftigt haben, verlassen wir nun unsere Komfortzone und schauen uns Konzepte der funktionalen Programmierung an. Natürlich haben wir zunächst ein wenig Spaß mit der Theorie bevor wir uns so tollen Dingen wie filter, map und forEach zu wenden.

  • Functional programming in Java (Slides, Pdf, Skript, Übungen)

    Eine weitere Session zu funktionaler Programmierung. Was ist besonders und wo sind die Grenzen? Warum ist es gerade gar so populär? Ein nette Besonderheit, wie funktionale Programmierung in OO-Sprachen integriert wird, sind natürlich Klassen und Interfaces. Das schauen wir uns an Hand von ´streams´ und wie reduce und collect darauf angewendet wird.

  • Zusammenfassung und Klausurvorbereitung

    Diese Session nutzen wir, um das Semester noch mal grob zu überfliegen und das als Klausurvorbereitung zu nutzen. Sicher eine gute Chance Fragen loszuwerden.

hsro-inf-fpk.github.io's People

Contributors

sikoried avatar matworx avatar prskr avatar

Watchers

James Cloos avatar

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.