{"id":31272,"date":"2023-02-14T12:10:33","date_gmt":"2023-02-14T20:10:33","guid":{"rendered":"https:\/\/teach.udemy.com\/?page_id=31272"},"modified":"2024-08-13T07:57:44","modified_gmt":"2024-08-13T14:57:44","slug":"instructor-guide-coding-exercises","status":"publish","type":"page","link":"https:\/\/teach.udemy.com\/de\/instructor-guide-coding-exercises\/","title":{"rendered":"Anleitung zur Erstellung von Programmier\u00fcbungen f\u00fcr Dozent:innen"},"content":{"rendered":"<h4 data-pm-slice=\"1 1 []\"><span style=\"color: #a435f0;\">Mit <strong>Programmier\u00fcbungen<\/strong> gibst du deinen Kursteilnehmer:innen die M\u00f6glichkeit, ihre Programmierkenntnisse in kurzen, gezielten \u00dcbungen praktisch anzuwenden.<\/span><\/h4>\n<p>Die Nutzer:innen m\u00f6chten das Gelernte am liebsten sofort \u00fcben und eine direkte R\u00fcckmeldung erhalten, ob sie alles richtig verstanden haben. Mithilfe von Programmier\u00fcbungen kannst du ihnen genau dies ohne gro\u00dfen Aufwand erm\u00f6glichen.<\/p>\n<p>\u00a0<\/p>\n<hr \/>\n<p>\u00a0<\/p>\n<h1>H\u00e4ufig gestellte Fragen zu Programmier\u00fcbungen<\/h1>\n<p>\u00a0<\/p>\n<p data-pm-slice=\"1 1 []\"><strong><u>Was ist eine Programmier\u00fcbung?<\/u><\/strong><\/p>\n<div class=\"fabric-editor-block-mark fabric-editor-indentation-mark\" data-level=\"1\">\n<p>\ud83d\udcd6 Eine Programmier\u00fcbung ist eine praktische Aufgabe, die die Nutzer:innen mithilfe einer bestimmten Programmiersprache oder eines bestimmten Frameworks l\u00f6sen. Damit k\u00f6nnen sie \u00fcberpr\u00fcfen, wie gut sie die in deinem Kurs vermittelten Konzepte verstanden haben, und erhalten nach dem Abschluss der \u00dcbung eine automatische Auswertung.<\/p>\n<p data-renderer-start-pos=\"601\"><strong data-renderer-mark=\"true\"><span class=\"fabric-text-color-mark\" data-renderer-mark=\"true\" data-text-custom-color=\"#ff5630\"><u data-renderer-mark=\"true\">Wie fange ich an?<\/u><\/span><\/strong><\/p>\n<p data-renderer-start-pos=\"624\"><a class=\"css-tgpl01\" title=\"https:\/\/support.udemy.com\/hc\/articles\/4413994712471\" href=\"https:\/\/support.udemy.com\/hc\/articles\/4413994712471\" data-testid=\"link-with-safety\" data-renderer-mark=\"true\"><span class=\"fabric-text-color-mark\" data-renderer-mark=\"true\" data-text-custom-color=\"#ff5630\"><u data-renderer-mark=\"true\">\u00d6ffne die Seite \u201eKursplan\u201c<\/u><\/span><\/a><span class=\"fabric-text-color-mark\" data-renderer-mark=\"true\" data-text-custom-color=\"#ff5630\"> deines Kurses. Klicke auf den Button \u201e+\u00a0Kursplanelement\u201c und dann auf <\/span><strong data-renderer-mark=\"true\"><span class=\"fabric-text-color-mark\" data-renderer-mark=\"true\" data-text-custom-color=\"#ff5630\">Programmier\u00fcbung<\/span><\/strong><span class=\"fabric-text-color-mark\" data-renderer-mark=\"true\" data-text-custom-color=\"#ff5630\">. Ausf\u00fchrliche Infos findest du <\/span><a class=\"css-tgpl01\" title=\"https:\/\/support.udemy.com\/hc\/articles\/115002883587-How-to-Create-a-Coding-Exercise\" href=\"https:\/\/support.udemy.com\/hc\/articles\/115002883587-How-to-Create-a-Coding-Exercise\" data-testid=\"link-with-safety\" data-renderer-mark=\"true\"><span class=\"fabric-text-color-mark\" data-renderer-mark=\"true\" data-text-custom-color=\"#ff5630\">in diesem Support-Artikel<\/span><\/a><span class=\"fabric-text-color-mark\" data-renderer-mark=\"true\" data-text-custom-color=\"#ff5630\">.<\/span><\/p>\n<\/div>\n<p><strong><u>Wann sollte ich Programmier\u00fcbungen zu meinem Kurs hinzuf\u00fcgen?<\/u><\/strong><\/p>\n<p><span class=\"fabric-editor-annotation\" data-mark-type=\"annotation\" data-mark-annotation-type=\"inlineComment\" data-id=\"52be9556-1caa-479e-a0a3-a0ae2d797e7a\">P<\/span>rogrammier\u00fcbungen solltest du f\u00fcr alle wichtigen Themen und Skills in deinem Kurs anbieten, die sich auf Programmierung beziehen. Besonders wenn:<\/p>\n<ul class=\"ak-ul\">\n<li>eine Kurslektion mindestens ein Lernziel aufweist, das sich auf das Schreiben von Code bezieht<\/li>\n<li>das in einer Lektion vermittelte Konzept mithilfe einer Programmier\u00fcbung bewertet werden kann<\/li>\n<\/ul>\n<p><strong><u>Wie viele Programmier\u00fcbungen sollte ich zu meinem Kurs hinzuf\u00fcgen?<\/u><\/strong><\/p>\n<p>Die Anzahl der Programmier\u00fcbungen pro Kurs ist nicht begrenzt, aber es hat sich bew\u00e4hrt, die \u00dcbungen im gesamten Kurs in gewissen Abst\u00e4nden einzustreuen, um den \u00dcbungseffekt zu erh\u00f6hen. Hier einige Ideen zur Anordnung der Programmier\u00fcbungen in deinem Kurs:<\/p>\n<ul class=\"ak-ul\">\n<li>F\u00fcge mindestens eine Programmier\u00fcbung pro Abschnitt ein.<\/li>\n<li>Biete mehrere Programmier\u00fcbungen f\u00fcr dasselbe Lernziel an. Dabei sollten sich jedoch die Programmier\u00fcbungen nicht an einer Stelle ballen, es sei denn, du bietest mehrere \u00dcbungen f\u00fcr dasselbe Lernziel an.<\/li>\n<li>Du k\u00f6nntest beispielsweise einige Abschnitte mit einer Programmier\u00fcbung beginnen, an der die Nutzer:innen ihr Vorwissen testen k\u00f6nnen. Dann folgt eine Lektion, in der du das Konzept ausf\u00fchrlich erkl\u00e4rst, und dann stellst du eine weitere Programmier\u00fcbung in einem neuen Kontext zur praktischen Anwendung des Gelernten bereit. Das motiviert die Nutzer:innen herauszufinden, <em>warum <\/em>sie sich den Inhalt der Lektionen in diesem Abschnitt ansehen sollten.<\/li>\n<\/ul>\n<p><strong><u>Lohnt sich die Erstellung von Programmier\u00fcbungen f\u00fcr mich finanziell?<\/u><\/strong><\/p>\n<p>Wenn dein Kurs im Rahmen von Udemy-Abos angeboten wird, dann wird die von den Nutzer:innen mit Programmier\u00fcbungen verbrachte Zeit bei der Berechnung deines <span class=\"fabric-editor-annotation\" data-mark-type=\"annotation\" data-mark-annotation-type=\"inlineComment\" data-id=\"c9647b9e-42f2-4fc4-954c-069bf34fa90c\">Umsatzanteils<\/span> ber\u00fccksichtigt.<\/p>\n<p><strong><u>Welche Sprachen sind f\u00fcr Programmier\u00fcbungen verf\u00fcgbar?<\/u><\/strong><\/p>\n<p><span style=\"font-weight: 400;\">Zurzeit kannst du Programmier\u00fcbungen in den folgenden Sprachen erstellen: C#, C#\u00a011, C++\u00a020, CSV-Verarbeitung (mit Python), Java\u00a017 (mit JUnit5), Java\u00a011, Java\u00a09, Kotlin, PHP\u00a07, PHP\u00a05, Python\u00a03.10, Python\u00a03.8, Python\u00a03.5, R\u00a03.6, React\u00a016, React\u00a018, Ruby, SciPy\u00a01.4 (NumPy, Pandas, SymPy) und SciKit Learn\u00a00.23, SQL, SQLite\u00a03, Swift\u00a05, Swift\u00a03 und Webentwicklung (HTML, CSS, JavaScript, TypeScript).<\/span><\/p>\n<p>\u00a0<\/p>\n<hr \/>\n<p>\u00a0<\/p>\n<h1>So erstellst du eine Programmier\u00fcbung<\/h1>\n<p><span class=\"fabric-editor-annotation\" data-mark-type=\"annotation\" data-mark-annotation-type=\"inlineComment\" data-id=\"01040c74-e455-4fb6-9078-76d6018bba44\">E<\/span>ine Programmier\u00fcbung erstellst (oder aktualisierst) du wie folgt: <a href=\"#ce-objective\"><u>Ziel und Ergebnis planen<\/u><\/a>, <a href=\"#ce-solution\"><u>L\u00f6sung erstellen<\/u><\/a>, <a href=\"#ce-frame\"><u>\u00dcbung gestalten<\/u><\/a> und <a href=\"#ce-guidance\"><u>Hinweise und Testf\u00e4lle hinzuf\u00fcgen<\/u><\/a>, um die Nutzer:innen bei der Bearbeitung zu unterst\u00fctzen.<\/p>\n<p>\u00a0<\/p>\n<h2 id=\"ce-objective\"><span class=\"fabric-text-color-mark\" style=\"color: #a435f0;\" data-text-custom-color=\"#6554c0\">Programmier\u00fcbung planen<\/span><\/h2>\n<p data-pm-slice=\"1 3 []\">Definiere zuallererst das Lernziel. Beantworte daf\u00fcr die folgenden Fragen:<\/p>\n<ul class=\"ak-ul\">\n<li>Was sollten die Nutzer:innen beherrschen, wenn sie diese Programmier\u00fcbung korrekt abgeschlossen haben?<\/li>\n<li>Welcher Skill bzw. welche Skills werden mit dieser \u00dcbung trainiert? Welcher Skill bzw. welche Skills werden \u00fcberpr\u00fcft?<\/li>\n<\/ul>\n<p>Denke dir an dieser Stelle ein Problem f\u00fcr die Programmier\u00fcbung aus, das zu den gew\u00fcnschten Lernergebnissen f\u00fchrt. Dieses Problem sollte ein kurzer Ausschnitt aus einer realistischen Aufgabe sein, die ein:e Ingenieur:in oder technische:r Mitarbeiter:in bearbeiten w\u00fcrde.<\/p>\n<p><span contenteditable=\"false\" data-emoji-short-name=\":bulb:\" data-emoji-id=\"1f4a1\" data-emoji-text=\"\ud83d\udca1\">\ud83d\udca1<\/span><strong><u> Tipp!<\/u> Konzipiere die Programmier\u00fcbungen so, dass sie in kurzer Zeit zu schaffen sind.<\/strong><\/p>\n<ul>\n<li style=\"list-style-type: none;\">\n<ul class=\"ak-ul\">\n<li>Idealerweise sollte ein:e durchschnittlicher Nutzer:in maximal 15\u00a0Minuten Bearbeitungszeit pro Programmier\u00fcbung aufwenden. Das ist die optimale Zeitspanne f\u00fcrs <a href=\"https:\/\/blog.udemy.com\/why-microlearning-works\/\">Microlearning<\/a>. Au\u00dferdem wird auf diese Weise sichergestellt, dass sich die \u00dcbung auch f\u00fcr Nutzer:innen mit engem Zeitplan eignet.<\/li>\n<\/ul>\n<\/li>\n<\/ul>\n<p>\u00a0<\/p>\n<h2 id=\"ce-solution\"><span class=\"fabric-text-color-mark\" style=\"color: #a435f0;\" data-text-custom-color=\"#6554c0\"><span class=\"fabric-editor-annotation\" data-mark-type=\"annotation\" data-mark-annotation-type=\"inlineComment\" data-id=\"0c4f186a-a4c9-4e38-b717-bee78f6ea14a\">Mit der L\u00f6sung <span style=\"color: #a435f0;\">beginnen<\/span><\/span><\/span><\/h2>\n<p data-pm-slice=\"1 1 []\">F\u00fcr den Aufbau deiner Programmier\u00fcbung empfiehlt sich die R\u00fcckw\u00e4rtsplanung. Daher solltest du, nachdem du dich auf ein Problem festgelegt hast, die gew\u00fcnschte L\u00f6sung vollst\u00e4ndig ausarbeiten, d.\u00a0h. einschlie\u00dflich Auswertungs- und L\u00f6sungsdatei.<\/p>\n<div class=\"fabric-editor-block-mark fabric-editor-indentation-mark\" data-level=\"1\">\n<p style=\"padding-left: 40px;\">\ud83d\udcd6 Die <strong>L\u00f6sungsdatei<\/strong> enth\u00e4lt die L\u00f6sung f\u00fcr das definierte Problem. Von den Nutzer:innen wird erwartet, dass sie eine \u00e4hnliche L\u00f6sung (nicht zwangsl\u00e4ufig die gleiche) finden. Anhand dieser Datei wird \u00fcberpr\u00fcft, ob die Auswertungsdatei (\u201eUnit Test\u201c) richtig ist.<\/p>\n<p style=\"padding-left: 40px;\">\ud83d\udcd6 Die <strong>Auswertungsdatei<\/strong> ist die Unit-Test-Datei, anhand derer \u00fcberpr\u00fcft wird, ob das Problem mit der Nutzerl\u00f6sung tats\u00e4chlich gel\u00f6st werden kann. Zur Verifizierung der L\u00f6sung sind Assertionsanweisungen erforderlich.<\/p>\n<\/div>\n<p>Um eine neue Programmier\u00fcbung zu erstellen, musst du L\u00f6sungs- und Auswertungsdateien bereitstellen, die vom System verifiziert werden k\u00f6nnen. Zur Erinnerung: Mit der L\u00f6sungsdatei wird die Auswertungsdatei selbst verifiziert und mit der Auswertungsdatei wird verifiziert, ob die Nutzerl\u00f6sung korrekt ist.<\/p>\n<p data-renderer-start-pos=\"4618\"><strong data-renderer-mark=\"true\"><span class=\"fabric-text-color-mark\" data-renderer-mark=\"true\" data-text-custom-color=\"#ff5630\"><span contenteditable=\"false\" data-emoji-short-name=\":bulb:\" data-emoji-id=\"1f4a1\" data-emoji-text=\"\ud83d\udca1\">\ud83d\udca1<\/span><u> Tipp!<\/u> Mit KI generieren<\/span><\/strong><\/p>\n<p data-renderer-start-pos=\"4643\"><span style=\"font-weight: 400;\">F\u00fcr Programmier\u00fcbungen auf Englisch oder Spanisch in Python, C++, Java und <\/span><span style=\"font-weight: 400;\">Webentwicklung (HTML, CSS, JavaScript und TypeScript)<\/span><span style=\"font-weight: 400;\"> kannst du dich bei der Erstellung der \u00dcbungsdateien jetzt durch k\u00fcnstliche Intelligenz eines Drittanbieters unterst\u00fctzen lassen.<\/span><\/p>\n<p data-renderer-start-pos=\"4643\"><a href=\"https:\/\/teach.udemy.com\/wp-content\/uploads\/2023\/09\/Coding-Exercises-Image-AI.png\"><img loading=\"lazy\" decoding=\"async\" class=\"size-large wp-image-32598 aligncenter\" src=\"https:\/\/teach.udemy.com\/wp-content\/uploads\/2023\/09\/Coding-Exercises-Image-AI-1024x482.png\" alt=\"\" width=\"600\" height=\"282\" srcset=\"https:\/\/teach.udemy.com\/wp-content\/uploads\/2023\/09\/Coding-Exercises-Image-AI-1024x482.png 1024w, https:\/\/teach.udemy.com\/wp-content\/uploads\/2023\/09\/Coding-Exercises-Image-AI-300x141.png 300w, https:\/\/teach.udemy.com\/wp-content\/uploads\/2023\/09\/Coding-Exercises-Image-AI-768x361.png 768w, https:\/\/teach.udemy.com\/wp-content\/uploads\/2023\/09\/Coding-Exercises-Image-AI-1536x723.png 1536w, https:\/\/teach.udemy.com\/wp-content\/uploads\/2023\/09\/Coding-Exercises-Image-AI-2048x964.png 2048w\" sizes=\"auto, (max-width: 600px) 100vw, 600px\" \/><\/a><\/p>\n<ol class=\"ak-ol\" start=\"1\" data-indent-level=\"1\">\n<li>\n<p data-renderer-start-pos=\"4821\"><span class=\"fabric-text-color-mark\" data-renderer-mark=\"true\" data-text-custom-color=\"#ff5630\">\u00d6ffne die Kursplanseite deines Kurses und beginne mit der Erstellung einer neuen Programmier\u00fcbung in Python, C++, Java oder <span style=\"font-weight: 400;\">Webentwicklung (HTML, CSS, JavaScript oder TypeScript).<\/span><\/span><\/p>\n<\/li>\n<li>\n<p data-renderer-start-pos=\"4938\"><span class=\"fabric-text-color-mark\" data-renderer-mark=\"true\" data-text-custom-color=\"#ff5630\">Gib auf dem Tab \u201e\u00dcbung planen\u201c den Titel und das Lernziel der \u00dcbung an und gehe dann auf den zweiten Tab \u201eL\u00f6sung ausarbeiten\u201c.<\/span><\/p>\n<\/li>\n<li>\n<p data-renderer-start-pos=\"5075\"><span class=\"fabric-text-color-mark\" data-renderer-mark=\"true\" data-text-custom-color=\"#ff5630\">Klicke auf den neuen Button \u201eMit KI generieren\u201c und f\u00fcge die Anweisungen f\u00fcr dein Problem hinzu.<\/span><\/p>\n<\/li>\n<li>\n<p data-renderer-start-pos=\"5164\"><span class=\"fabric-text-color-mark\" data-renderer-mark=\"true\" data-text-custom-color=\"#ff5630\">Nachdem du die Problemstellung eingegeben hast, klickst du auf den Button \u201eMit KI generieren\u201c. Nun werden in Sekundenschnelle die L\u00f6sungs- und Auswertungsdateien f\u00fcr deine \u00dcbung erstellt.<\/span><\/p>\n<\/li>\n<li>\n<p data-renderer-start-pos=\"5322\"><span class=\"fabric-text-color-mark\" data-renderer-mark=\"true\" data-text-custom-color=\"#ff5630\">Pr\u00fcfe diese Dateien sorgf\u00e4ltig und nimm alle n\u00f6tigen \u00c4nderungen vor, um die \u00dcbung zu perfektionieren. Gehe dann zum Abschnitt \u201eAnleitung f\u00fcr die Nutzer:innen\u201c.<\/span><\/p>\n<\/li>\n<\/ol>\n<p>\u00a0<\/p>\n<h2 id=\"ce-frame\"><span class=\"fabric-text-color-mark\" style=\"color: #a435f0;\" data-text-custom-color=\"#6554c0\">\u00dcbung gestalten<\/span><\/h2>\n<p><a href=\"https:\/\/teach.udemy.com\/wp-content\/uploads\/2023\/04\/CodingExercises_1.png\"><img loading=\"lazy\" decoding=\"async\" class=\"size-large wp-image-31888 aligncenter\" src=\"https:\/\/teach.udemy.com\/wp-content\/uploads\/2023\/04\/CodingExercises_1-1024x620.png\" alt=\"\" width=\"600\" height=\"363\" srcset=\"https:\/\/teach.udemy.com\/wp-content\/uploads\/2023\/04\/CodingExercises_1-1024x620.png 1024w, https:\/\/teach.udemy.com\/wp-content\/uploads\/2023\/04\/CodingExercises_1-300x182.png 300w, https:\/\/teach.udemy.com\/wp-content\/uploads\/2023\/04\/CodingExercises_1-768x465.png 768w, https:\/\/teach.udemy.com\/wp-content\/uploads\/2023\/04\/CodingExercises_1-1536x929.png 1536w, https:\/\/teach.udemy.com\/wp-content\/uploads\/2023\/04\/CodingExercises_1.png 1666w\" sizes=\"auto, (max-width: 600px) 100vw, 600px\" \/><\/a><\/p>\n<p data-pm-slice=\"1 1 []\">Der n\u00e4chste Schritt nach der Erstellung der L\u00f6sung besteht darin, den Zweck und die Problemstellung der \u00dcbung klar zu formulieren. Wir empfehlen die folgenden Schritte:<\/p>\n<ol class=\"ak-ol\">\n<li>Beschreibe, was die Nutzer:innen beherrschen sollten, wenn sie diese Programmier\u00fcbung korrekt abgeschlossen haben, und welche Skills damit trainiert werden. Diese Antworten solltest du bereits in der Planungsphase definiert haben.<\/li>\n<li>Formuliere die Problembeschreibung so ausf\u00fchrlich und verst\u00e4ndlich wie m\u00f6glich. Achte darauf, gen\u00fcgend Informationen anzugeben, damit die Nutzer:innen die \u00dcbung problemlos l\u00f6sen k\u00f6nnen. \u00dcbertreibe es aber nicht und lasse ihnen gen\u00fcgend Raum, den gefragten Skill zu \u00fcben bzw. zu zeigen, dass sie die Aufgabe l\u00f6sen k\u00f6nnen.<\/li>\n<li>Erstelle die Startdatei.<br \/>\n\ud83d\udcd6 Die <strong>Startdatei<\/strong> enth\u00e4lt den Ausgangscode f\u00fcr die \u00dcbung. Damit sorgst du daf\u00fcr, dass sich die Nutzer:innen auf den gew\u00fcnschten Skill konzentrieren k\u00f6nnen.<\/li>\n<\/ol>\n<p><span contenteditable=\"false\" data-emoji-short-name=\":bulb:\" data-emoji-id=\"1f4a1\" data-emoji-text=\"\ud83d\udca1\">\ud83d\udca1<\/span><strong><u> Tipp!<\/u> Gew\u00f6hne dir ein aussagekr\u00e4ftiges und einheitliches Benennungsschema f\u00fcr deine Programmier\u00fcbungen an.<\/strong><\/p>\n<ul>\n<li style=\"list-style-type: none;\">\n<ul>\n<li>Verwende ein einheitliches und eindeutiges Benennungsschema f\u00fcr alle Programmier\u00fcbungen. So k\u00f6nnten beispielsweise die Namen aller Programmier\u00fcbungen mit \u201eProgrammier\u00fcbung\u201c beginnen, damit die Nutzer:innen sie im Kurs leicht finden k\u00f6nnen.<\/li>\n<\/ul>\n<\/li>\n<\/ul>\n<p><span contenteditable=\"false\" data-emoji-short-name=\":pencil:\" data-emoji-id=\"1f4dd\" data-emoji-text=\"\ud83d\udcdd\">\ud83d\udcdd<\/span> <strong><u>Hinweis:<\/u><\/strong> Achte wie bei der gesamten Kommunikation mit deinen Nutzer:innen darauf, dass deine Anweisungen frei von Schreib- und Grammatikfehlern, pr\u00e4zise und <a href=\"https:\/\/www.thoughtco.com\/what-is-biased-language-1689168\"><u>unvoreingenommen<\/u><\/a> formuliert sind.<\/p>\n<p>\u00a0<\/p>\n<h2 id=\"ce-guidance\"><span class=\"fabric-text-color-mark\" style=\"color: #a435f0;\" data-text-custom-color=\"#6554c0\">Unterst\u00fctzung deiner Nutzer:innen<\/span><\/h2>\n<h3><span style=\"color: #5022c3;\"><strong><span class=\"fabric-editor-annotation\" data-mark-type=\"annotation\" data-mark-annotation-type=\"inlineComment\" data-id=\"85739b6d-d32e-4f3c-b9ed-39c2458c2d25\">Testf\u00e4lle<\/span><\/strong><\/span><\/h3>\n<div class=\"fabric-editor-block-mark fabric-editor-indentation-mark\" data-level=\"1\">\n<div class=\"fabric-editor-block-mark fabric-editor-indentation-mark\" data-level=\"1\" data-pm-slice=\"1 3 []\">\n<p style=\"padding-left: 40px;\">\ud83d\udcd6 Mit einem \u201e<strong>Unit Test<\/strong>\u201c kann die kleinste Code-Einheit gepr\u00fcft werden, die logisch im System isoliert werden kann. In den meisten Programmiersprachen ist das eine Funktion, Subroutine, Methode oder Eigenschaft.<\/p>\n<\/div>\n<p>Du solltest einen Unit Test f\u00fcr deine L\u00f6sung der Programmier\u00fcbung bereitstellen, damit die Nutzer:innen ein Feedback erhalten, wenn sie auf \u201eL\u00f6sung pr\u00fcfen\u201c klicken. In diesem Feedback sehen sie, welche Fehler sie gemacht haben, und wenn sie die Aufgabe erfolgreich abschlie\u00dfen konnten, erhalten sie eine wichtige Best\u00e4tigung ihrer Lernfortschritte.<\/p>\n<div data-node-type=\"mediaSingle\" data-layout=\"center\" data-width=\"\">\n<div title=\"Anhang\" data-id=\"7142dc0d-da42-4cca-83dd-db3206ceb7f6\" data-node-type=\"media\" data-type=\"file\" data-collection=\"contentId-3001680226\" data-width=\"1793\" data-height=\"867\" data-alt=\"\" data-file-name=\"test cases.png\" data-file-size=\"384778\" data-file-mime-type=\"image\/png\" data-context-id=\"3001680226\"><a href=\"https:\/\/teach.udemy.com\/wp-content\/uploads\/2023\/02\/Coding-Exercises-Image-2.png\"><img loading=\"lazy\" decoding=\"async\" class=\"aligncenter wp-image-28640 size-large\" src=\"https:\/\/teach.udemy.com\/wp-content\/uploads\/2023\/02\/Coding-Exercises-Image-2-1024x495.png\" alt=\"\" width=\"600\" height=\"290\" srcset=\"https:\/\/teach.udemy.com\/wp-content\/uploads\/2023\/02\/Coding-Exercises-Image-2-1024x495.png 1024w, https:\/\/teach.udemy.com\/wp-content\/uploads\/2023\/02\/Coding-Exercises-Image-2-300x145.png 300w, https:\/\/teach.udemy.com\/wp-content\/uploads\/2023\/02\/Coding-Exercises-Image-2-768x371.png 768w, https:\/\/teach.udemy.com\/wp-content\/uploads\/2023\/02\/Coding-Exercises-Image-2-1536x743.png 1536w, https:\/\/teach.udemy.com\/wp-content\/uploads\/2023\/02\/Coding-Exercises-Image-2-2048x990.png 2048w\" sizes=\"auto, (max-width: 600px) 100vw, 600px\" \/><\/a><\/div>\n<\/div>\n<p>Gehe zur Erstellung von Testf\u00e4llen am besten wie folgt vor:<\/p>\n<ul class=\"ak-ul\">\n<li>Spezifische Pr\u00fcfung. Ein Unit Test sollte nur eine logische Assertion enthalten, d.\u00a0h., es wird nur eine Ausgabe des getesteten Codes gepr\u00fcft.<\/li>\n<li>Umfassender Test. Alle externen Dienste und Zust\u00e4nde werden ausgeblendet, d.\u00a0h., das gesamte erforderliche Verhalten wird getestet.\u00a0Mit einem Unit Test sollte breitfl\u00e4chig getestet werden, sodass er auch Grenzf\u00e4lle erfasst.<\/li>\n<li>Aussagekr\u00e4ftiges Benennungsschema. Du solltest jedem Test einen aussagekr\u00e4ftigen Namen geben, damit sich die Nutzer:innen in der Liste leicht zurechtfinden.<\/li>\n<\/ul>\n<\/div>\n<p>\u00a0<\/p>\n<h3><span style=\"color: #5022c3;\">Zugeh\u00f6rige <\/span><span style=\"color: #5022c3;\"> Lektion<\/span><\/h3>\n<p>Verlinke eine empfohlene Lektion in deinem Kurs, in der sich die Nutzer:innen \u00fcber den Skill, den sie gerade \u00fcben, eingehend informieren k\u00f6nnen.<\/p>\n<p>\u00a0<\/p>\n<h3><span style=\"color: #5022c3;\">Hinweise<\/span><\/h3>\n<p><a href=\"https:\/\/teach.udemy.com\/wp-content\/uploads\/2023\/02\/Coding-Exercises-Image-3.png\"><img loading=\"lazy\" decoding=\"async\" class=\"aligncenter wp-image-28653 size-large\" src=\"https:\/\/teach.udemy.com\/wp-content\/uploads\/2023\/02\/Coding-Exercises-Image-3-1024x495.png\" alt=\"\" width=\"600\" height=\"290\" srcset=\"https:\/\/teach.udemy.com\/wp-content\/uploads\/2023\/02\/Coding-Exercises-Image-3-1024x495.png 1024w, https:\/\/teach.udemy.com\/wp-content\/uploads\/2023\/02\/Coding-Exercises-Image-3-300x145.png 300w, https:\/\/teach.udemy.com\/wp-content\/uploads\/2023\/02\/Coding-Exercises-Image-3-768x372.png 768w, https:\/\/teach.udemy.com\/wp-content\/uploads\/2023\/02\/Coding-Exercises-Image-3-1536x743.png 1536w, https:\/\/teach.udemy.com\/wp-content\/uploads\/2023\/02\/Coding-Exercises-Image-3-2048x991.png 2048w\" sizes=\"auto, (max-width: 600px) 100vw, 600px\" \/><\/a><\/p>\n<div class=\"fabric-editor-block-mark fabric-editor-indentation-mark\" data-level=\"1\">\n<div class=\"fabric-editor-block-mark fabric-editor-indentation-mark\" data-level=\"1\" data-pm-slice=\"1 1 []\">\n<p style=\"padding-left: 40px;\">\ud83d\udcd6 Mit einem <strong>Hinweis<\/strong> kannst du den Nutzer:innen kleine Tipps geben, wenn sie bei einer \u00dcbung nicht weiterkommen.<\/p>\n<\/div>\n<p>W\u00e4hrend der Titel des Hinweises nat\u00fcrlich meistens schon einen Tipp enth\u00e4lt, solltest du im Abschnitt \u201eHinweise\u201c zus\u00e4tzliche Informationen angeben, die nicht in den Anweisungen oder im Unit Test angegeben sind.<\/p>\n<p>Gehe zur Erstellung von Hinweisen am besten wie folgt vor:<\/p>\n<ul class=\"ak-ul\">\n<li>Ein Hinweis soll das Ged\u00e4chtnis der Nutzer:innen zu dem jeweiligen Konzept auffrischen.<\/li>\n<li>Der Hinweis sollte nur ein Denkansto\u00df sein und nicht die gesamte Antwort enthalten.<\/li>\n<li>Wenn du mehrere Hinweise vorbereitest, solltest du sie gestaffelt anordnen, d.\u00a0h. du beginnst mit einem kleinen Hinweis und wirst dann immer konkreter, um die Nutzer:innen zu motivieren, die Aufgabe eigenst\u00e4ndig zu l\u00f6sen.<\/li>\n<\/ul>\n<p><span contenteditable=\"false\" data-emoji-short-name=\":pencil:\" data-emoji-id=\"1f4dd\" data-emoji-text=\"\ud83d\udcdd\">\ud83d\udcdd<\/span> <strong><u>Hinweis:<\/u><\/strong> Da die Hinweise momentan w\u00e4hrend der gesamten Bearbeitung der \u00dcbung f\u00fcr die Nutzer:innen angezeigt werden, solltest du Zusatzinformationen nur im Bereich \u201eHinweise\u201c eingeben. So stehen sie f\u00fcr Nutzer:innen zur Verf\u00fcgung, die Unterst\u00fctzung ben\u00f6tigen, ohne die korrekte L\u00f6sung der \u00dcbung vorwegzunehmen.<\/p>\n<\/div>\n<p>\u00a0<\/p>\n<h3><span class=\"fabric-editor-annotation\" style=\"color: #5022c3;\" data-mark-type=\"annotation\" data-mark-annotation-type=\"inlineComment\" data-id=\"b5b436de-9958-4222-8090-928dcb06154c\">Erkl\u00e4rung der L\u00f6sung<\/span><\/h3>\n<div class=\"fabric-editor-block-mark fabric-editor-indentation-mark\" data-level=\"1\">\n<p style=\"padding-left: 40px;\">\ud83d\udcd6 Unter <strong>Erkl\u00e4rung der L\u00f6sung<\/strong> kannst du die korrekte L\u00f6sung der Programmier\u00fcbung ausf\u00fchrlich erl\u00e4utern.<\/p>\n<\/div>\n<p data-pm-slice=\"1 3 []\">So eine Erkl\u00e4rung kann hilfreich f\u00fcr Nutzer:innen sein, die mehr Informationen ben\u00f6tigen, um zu verstehen, was sie falsch gemacht haben. Wenn ein:e Nutzer:in deine Programmier\u00fcbung absolviert und nicht sicher ist, warum ausgerechnet mit dieser L\u00f6sung das Problem korrekt gel\u00f6st wird, kannst du es an dieser Stelle erkl\u00e4ren. Au\u00dferdem hilft dies auch Nutzer:innen, die die \u00dcbung richtig gel\u00f6st haben, aber nicht genau wissen, warum. Damit k\u00f6nnen sie nachvollziehen, was sie genau gemacht haben, und damit ihr Verst\u00e4ndnis dieses Konzepts f\u00fcr zuk\u00fcnftige Anwendungen festigen.<\/p>\n<p>Gehe zur Erstellung von L\u00f6sungserkl\u00e4rungen am besten wie folgt vor:<\/p>\n<ul class=\"ak-ul\">\n<li>Dieser Abschnitt kann Schritt-f\u00fcr-Schritt-Anweisungen mit Code-Ausschnitten enthalten.<\/li>\n<li>Erkl\u00e4re immer, warum die einzelnen Schritte so ausgef\u00fchrt werden. Dadurch k\u00f6nnen die Nutzer:innen nachvollziehen, was sie gemacht haben und was sie beim n\u00e4chsten Versuch anders machen m\u00fcssen.<\/li>\n<\/ul>\n<p>\u00a0<\/p>\n<hr \/>\n<p>\u00a0<\/p>\n<p><span class=\"fabric-editor-annotation\" data-mark-type=\"annotation\" data-mark-annotation-type=\"inlineComment\" data-id=\"45fccd12-566d-480d-8b06-d29aed9c4ed4\">W<\/span>eitere Informationen zu den Verbesserungen an unseren Programmier\u00fcbungen findest du in diesem <a href=\"https:\/\/teach.udemy.com\/de\/whats-new-with-coding-exercises\/\">Artikel im Teaching Center<\/a>. Au\u00dferdem findest du in diesem <a href=\"https:\/\/support.udemy.com\/hc\/articles\/115002883587-How-to-Create-a-Coding-Exercise\">Support-Artikel<\/a> weitere Infos \u00fcber die Nutzung des Programmier\u00fcbungs-Tools.<\/p>\n<p>\u00a0<\/p>\n","protected":false},"excerpt":{"rendered":"<p>Mit Programmier\u00fcbungen gibst du deinen Kursteilnehmer:innen die M\u00f6glichkeit, ihre Programmierkenntnisse in kurzen, gezielten \u00dcbungen praktisch anzuwenden. Die Nutzer:innen m\u00f6chten das Gelernte am liebsten sofort \u00fcben und eine direkte R\u00fcckmeldung erhalten, ob sie alles richtig verstanden haben. Mithilfe von Programmier\u00fcbungen kannst du ihnen genau dies ohne gro\u00dfen Aufwand erm\u00f6glichen. \u00a0 \u00a0 H\u00e4ufig gestellte Fragen zu Programmier\u00fcbungen [&hellip;]<\/p>\n","protected":false},"author":104,"featured_media":0,"parent":0,"menu_order":0,"comment_status":"closed","ping_status":"closed","template":"","meta":{"_acf_changed":false,"footnotes":""},"class_list":["post-31272","page","type-page","status-publish","hentry"],"acf":[],"aioseo_notices":[],"_links":{"self":[{"href":"https:\/\/teach.udemy.com\/de\/wp-json\/wp\/v2\/pages\/31272","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/teach.udemy.com\/de\/wp-json\/wp\/v2\/pages"}],"about":[{"href":"https:\/\/teach.udemy.com\/de\/wp-json\/wp\/v2\/types\/page"}],"author":[{"embeddable":true,"href":"https:\/\/teach.udemy.com\/de\/wp-json\/wp\/v2\/users\/104"}],"replies":[{"embeddable":true,"href":"https:\/\/teach.udemy.com\/de\/wp-json\/wp\/v2\/comments?post=31272"}],"version-history":[{"count":0,"href":"https:\/\/teach.udemy.com\/de\/wp-json\/wp\/v2\/pages\/31272\/revisions"}],"wp:attachment":[{"href":"https:\/\/teach.udemy.com\/de\/wp-json\/wp\/v2\/media?parent=31272"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}