Seminarbeschreibung
Eigene R-Pakete schaffen einen klaren Rahmen für gemeinsam genutzte Funktionen. Das Seminar führt von einer Sammlung vorhandener Skripte zu einem installierbaren, dokumentierten und prüfbaren Paket. Dabei werden öffentliche Schnittstellen, interne Hilfsfunktionen und externe Abhängigkeiten bewusst voneinander getrennt.
Ein kleines Teamprojekt bildet den roten Faden. Änderungen werden versioniert, Tests um fachliche Grenzfälle ergänzt und Fehlermeldungen aus der Paketprüfung bearbeitet. Die kontinuierliche Integration wird anhand einer vorbereiteten Umgebung eingeübt. Im Mittelpunkt steht ein internes Paket; eine Veröffentlichung auf CRAN wird als eigener Freigabeprozess eingeordnet und ist kein zugesagtes Seminarergebnis.
Zielgruppe
R-Entwickler, Data Scientists und analytische Teams mit gemeinsam genutzten Funktionen oder wiederkehrenden Auswertungsverfahren.
Voraussetzungen
Sicheres R und Erfahrung mit eigenen Funktionen, Fehlerbehandlung und Listen. Kenntnisse entsprechend dem Seminar Fortgeschrittene Programmierung. Grundkenntnisse eines Terminals sind hilfreich; Git wird im erforderlichen Umfang eingeführt.
Lernziele
- Eine nachvollziehbare Paketstruktur mit begrenzten Schnittstellen anlegen.
- Funktionen und Beispiele mit roxygen2 dokumentieren.
- Fachliche Eigenschaften, Grenzfälle und erwartete Fehler mit testthat prüfen.
- Änderungen mit Git bearbeiten und Paketprüfungen automatisiert ausführen.
Inhaltsübersicht
- Paketstruktur und Schnittstellen
- Dokumentation und Beispiele
- Automatisierte Tests
- Paketprüfung und Abhängigkeiten
- Git und gemeinsame Änderungen
- Automatisierte Prüfung und Bereitstellung
Seminarinhalte
Paketstruktur und Schnittstellen
Aus Funktionen wird eine klar gegliederte, installierbare Einheit.
- DESCRIPTION, NAMESPACE und die üblichen Paketverzeichnisse einordnen.
- Mit usethis und devtools ein Paketgerüst erstellen.
- Exportierte Funktionen, interne Helfer und Abhängigkeiten bewusst festlegen.
Dokumentation und Beispiele
Die Nutzung des Pakets wird ohne Kenntnis seiner Implementierung verständlich.
- Argumente, Rückgaben und Randbedingungen mit roxygen2 beschreiben.
- Ausführbare Beispiele und eine kurze Anwendungsvignette erstellen.
- Dokumentation generieren und auf Übereinstimmung mit den Funktionen prüfen.
Automatisierte Tests
Tests sichern fachliches Verhalten und bekannte Fehlerfälle ab.
- Mit testthat Normalfälle, Grenzfälle und erwartete Fehler formulieren.
- Abhängigkeiten von Uhrzeit, Netzwerk und Zufall kontrollieren.
- Regressionstests für einen behobenen Fehler hinzufügen; fragile Detailtests vermeiden.
Paketprüfung und Abhängigkeiten
Ein installierbares Paket wird unter definierten Bedingungen geprüft.
- R CMD check ausführen und Fehler, Warnungen und Hinweise einordnen.
- Imports, Suggests und die Verwendung vollständig qualifizierter Funktionsnamen prüfen.
- Paketabhängigkeiten von einer mit renv dokumentierten Projektumgebung unterscheiden.
Git und gemeinsame Änderungen
Änderungen erhalten eine nachvollziehbare Geschichte und Prüfung.
- Commits, Branches und Zusammenführungen anhand des Beispielpakets durchführen.
- Einen überschaubaren Konflikt auflösen und die fachliche Änderung kontrollieren.
- Code-Reviews, Versionsnummern und Änderungsnotizen sinnvoll einsetzen.
Automatisierte Prüfung und Bereitstellung
Die Qualitätssicherung wird außerhalb des Entwicklerrechners wiederholbar.
- Einen vorbereiteten CI-Workflow für Installation, Tests und Paketprüfung anpassen.
- Systemabhängigkeiten und vertrauliche Konfiguration vom Quellcode trennen.
- Ein Paketarchiv erzeugen, in einer sauberen Umgebung installieren und eine interne Freigabe vorbereiten.
Praxisprojekt
- Eine vorhandene Auswertungsfunktion in ein neues Paket überführen.
- Die Schnittstelle dokumentieren und einen bewusst eingebauten Fehler mit einem Test aufdecken.
- Den Fehler beheben und die Änderung in einem eigenen Git-Branch festhalten.
- Paketprüfung und vorbereitete CI-Prüfung durchführen.
- Das erzeugte Paket in einer getrennten Umgebung installieren und das Anwendungsbeispiel ausführen.
Fachbereichsleiter / Leiter der Trainer / Ihre Ansprechpartner
-

Lucas Beich
Telefon: + 49 (221) 74740055
E-Mail: lucas.beich@seminar-experts.de -

Paul Goldschmidt
Telefon: + 49 (221) 74740055
E-Mail: paul.goldschmidt@seminar-experts.de
Seminardetails
| Dauer: | 3 Tage ca. 6 h/Tag, Beginn 1. Tag: 10:00 Uhr, weitere Tage 09:00 Uhr |
|---|---|
| Preis: |
Öffentlich oder Live Stream: € 1.797 zzgl. MwSt. Inhaus: € 5.100 zzgl. MwSt. |
| Teilnehmeranzahl: | min. 2 - max. 8 |
| Teilnehmer: | R-Entwickler, Data Scientists und analytische Teams mit gemeinsam genutzten Funktionen oder wiederkehrenden Auswertungsverfahren. |
| Voraussetzungen: | Sicheres R und Erfahrung mit eigenen Funktionen, Fehlerbehandlung und Listen. Kenntnisse entsprechend dem Seminar Fortgeschrittene Programmierung. Grundkenntnisse eines Terminals sind hilfreich; Git wird im erforderlichen Umfang eingeführt. |
| Standorte: | Stream Live, Inhaus/Firmenseminar, Berlin, Bremen, Darmstadt, Dresden, Erfurt, Essen, Flensburg, Frankfurt, Freiburg, Friedrichshafen, Hamburg, Hamm, Hannover, Jena, Kassel, Köln, Konstanz, Leipzig, Luxemburg, Magdeburg, Mainz, München, Münster, Nürnberg, Paderborn, Potsdam, Regensburg, Rostock, Stuttgart, Trier, Ulm, Wuppertal, Würzburg |
| Methoden: | Vortrag, Demonstrationen, praktische Übungen am System |
| Seminararten: | Öffentlich, Webinar, Inhaus, Workshop - Alle Seminare mit Trainer vor Ort, Webinar nur wenn ausdrücklich gewünscht |
| Durchführungsgarantie: | ja, ab 2 Teilnehmern |
| Sprache: | Deutsch - bei Firmenseminaren ist auch Englisch möglich |
| Seminarunterlage: | Dokumentation auf Datenträger oder als Download |
| Teilnahmezertifikat: | ja, selbstverständlich |
| Verpflegung: | Kalt- / Warmgetränke, Mittagessen (wahlweise vegetarisch) |
| Support: | 3 Anrufe im Seminarpreis enthalten |
| Barrierefreier Zugang: | an den meisten Standorten verfügbar |
| Weitere Informationen unter + 49 (221) 74740055 |
Seminartermine
Die Ergebnissliste kann durch Anklicken der Überschrift neu sortiert werden.
