{"beispielaufgaben":[{"artefakt_id":"artefakt.freitextantwort","aufgabe":[{"text":"Ein junges Technologieunternehmen entwickelt eine Software zur Auswertung von Sensordaten aus einer automatisierten Fertigungshalle. Im Entwicklungsteam wird darüber diskutiert, nach welchem grundlegenden Programmierstil die Anwendung umgesetzt werden soll. Nennen Sie drei unterschiedliche Programmierparadigmen, die für die Umsetzung einer solchen Software grundsätzlich in Betracht kommen.","typ":"absatz"}],"beispiel_id":"bsp-programmiersprachen-und-programmierparadigmen-nennen-freitextantwort-01","freigabeart":"maschinell","loesung":[{"text":"Je zutreffend genanntem Programmierparadigma 1 Punkt, maximal 3 Punkte. Anerkannt werden z. B.: imperatives/prozedurales Paradigma, objektorientiertes Paradigma, funktionales Paradigma, deklaratives Paradigma, logisches Paradigma. Fachlich gleichwertige, korrekt bezeichnete Paradigmen sind ebenfalls anzuerkennen; bloße Sprachnamen ohne Paradigmenbezug zählen nicht.","typ":"absatz"}],"operator_id":"operator.nennen","pruefungszuordnung":{"berufe":[],"teil":"AP1"},"punkte":3,"punkterahmen":{"max":3,"min":3},"quellen":["ap1-2024-herbst-gesamt-a02-b","ap1-2025-fruehjahr-gesamt-a03-c"]},{"artefakt_id":"artefakt.freitextantwort","aufgabe":[{"text":"Ein Ingenieurbüro plant eine Anwendung zur numerischen Auswertung umfangreicher Messreihen und zur Berechnung statistischer Kennzahlen. Die Projektleitung möchte eine für dieses Einsatzgebiet gut geeignete Programmiersprache festlegen und bittet Sie um Vorschläge. Nennen Sie drei Programmiersprachen, die sich für die Verarbeitung und statistische Analyse solcher Datenmengen eignen.","typ":"absatz"}],"beispiel_id":"bsp-programmiersprachen-und-programmierparadigmen-nennen-freitextantwort-02","freigabeart":"maschinell","loesung":[{"text":"Je zutreffend genannter, für Datenverarbeitung und statistische Analyse geeigneter Programmiersprache 1 Punkt, maximal 3 Punkte. Anerkannt werden z. B.: Python, R, Julia, MATLAB, Java, Scala. Ungefragte Eignungsbegründungen werden nicht zusätzlich bewertet; reine Auszeichnungs- oder Formatierungssprachen sind keine Programmiersprachen.","typ":"absatz"}],"operator_id":"operator.nennen","pruefungszuordnung":{"berufe":[],"teil":"AP1"},"punkte":3,"punkterahmen":{"max":3,"min":3},"quellen":["ap1-2024-herbst-gesamt-a02-b","ap1-2025-fruehjahr-gesamt-a03-c"]},{"artefakt_id":"artefakt.freitextantwort","aufgabe":[{"text":"Ein mittelständischer Maschinenbauer möchte eine plattformübergreifende Auswertungssoftware für seine Produktionsdaten von Grund auf neu entwickeln. Das Entwicklungsteam entscheidet sich nach ausführlicher Diskussion bewusst für das objektorientierte Programmierparadigma, um die Software später gut wartbar und erweiterbar zu halten. Nennen Sie drei objektorientierte Programmiersprachen, die für dieses Entwicklungsvorhaben grundsätzlich in Frage kommen.","typ":"absatz"}],"beispiel_id":"bsp-programmiersprachen-und-programmierparadigmen-nennen-freitextantwort-03","freigabeart":"maschinell","loesung":[{"text":"Je zutreffend genannte objektorientierte Programmiersprache 1 Punkt, insgesamt 3 Punkte. Anzuerkennen sind fachlich gleichwertig z. B. Java, C++, C#, Python, Ruby, Kotlin oder Swift. Reine Auszeichnungs- oder Abfragesprachen wie HTML, CSS oder SQL sind keine Programmiersprachen und werden nicht gewertet.","typ":"absatz"}],"operator_id":"operator.nennen","pruefungszuordnung":{"berufe":[],"teil":"AP1"},"punkte":3,"punkterahmen":{"max":3,"min":3},"quellen":["ap1-2024-herbst-gesamt-a02-b","ap1-2025-fruehjahr-gesamt-a03-c"]},{"artefakt_id":"artefakt.freitextantwort","aufgabe":[{"text":"Ein Sportverein lässt eine Trainings-App entwickeln. Die App soll sowohl auf Android- als auch auf iPhone-Geräten laufen, muss die Bewegungsdaten des eingebauten Beschleunigungssensors auswerten und ist wegen eines knappen Abgabetermins in kurzer Zeit fertigzustellen. Für die Auswahl der Programmiersprache sind die drei Kriterien plattformübergreifende Einsetzbarkeit, Verfügbarkeit fertiger Bibliotheken zur Sensordatenverarbeitung sowie im Team bereits vorhandene Sprachkenntnisse vorgegeben. Begründen Sie zu jedem dieser drei vorgegebenen Kriterien seine Bedeutung, indem Sie es auf jeweils genau eine der ausdrücklich genannten Projektanforderungen beziehen.","typ":"absatz"}],"beispiel_id":"bsp-programmiersprachen-und-programmierparadigmen-begruenden-freitextantwort-01","freigabeart":"maschinell","loesung":[{"text":"Je Begründung 1 Punkt, insgesamt 3 Punkte. Fachlich gleichwertige Formulierungen sind anzuerkennen. (1) Plattformübergreifende Einsetzbarkeit ist bedeutsam, weil die App laut Anforderung auf Android und iPhone laufen soll; eine für beide Systeme geeignete Sprache vermeidet doppelte Entwicklung (1 Punkt). (2) Verfügbarkeit von Sensor-Bibliotheken ist bedeutsam, weil die geforderte Auswertung der Beschleunigungsdaten mit fertigen Bausteinen schneller und zuverlässiger umsetzbar ist (1 Punkt). (3) Vorhandene Sprachkenntnisse sind bedeutsam, weil der knappe Abgabetermin nur mit einer dem Team bereits vertrauten Sprache einzuhalten ist (1 Punkt).","typ":"absatz"}],"operator_id":"operator.begruenden","pruefungszuordnung":{"berufe":[],"teil":"AP1"},"punkte":3,"punkterahmen":{"max":3,"min":3},"quellen":["ap1-2024-herbst-gesamt-a02-b"]},{"artefakt_id":"artefakt.freitextantwort","aufgabe":[{"text":"Für ein Gewächshaus soll eine Steuerungssoftware entstehen, die Lüftung und Bewässerung regelt. Die Software läuft auf einem ressourcenarmen Mikrocontroller mit sehr wenig Arbeitsspeicher, muss auf gemessene Temperatur- und Feuchtewerte ohne Verzögerung reagieren und wird ausschließlich für einen fest vorgegebenen Mikrocontrollertyp entwickelt. Für die Auswahl der Programmiersprache sind die drei Kriterien geringer Speicherbedarf, deterministisches Zeitverhalten sowie vorhandene Werkzeugunterstützung für den Zielmikrocontroller vorgegeben. Begründen Sie zu jedem dieser drei vorgegebenen Kriterien seine Bedeutung, indem Sie es auf jeweils genau eine der ausdrücklich genannten Projektanforderungen beziehen.","typ":"absatz"}],"beispiel_id":"bsp-programmiersprachen-und-programmierparadigmen-begruenden-freitextantwort-02","freigabeart":"maschinell","loesung":[{"text":"Je Begründung 1 Punkt, insgesamt 3 Punkte. Fachlich gleichwertige Formulierungen sind anzuerkennen. (1) Geringer Speicherbedarf ist bedeutsam, weil der Mikrocontroller laut Anforderung nur sehr wenig Arbeitsspeicher bietet und die Sprache sparsam damit umgehen muss (1 Punkt). (2) Deterministisches Zeitverhalten ist bedeutsam, weil die geforderte verzögerungsfreie Reaktion auf Sensorwerte ein vorhersagbares Ausführungsverhalten voraussetzt (1 Punkt). (3) Werkzeugunterstützung für den Zielmikrocontroller ist bedeutsam, weil der fest vorgegebene Controllertyp eine passende Übersetzungs- und Aufspielkette der Sprache benötigt (1 Punkt).","typ":"absatz"}],"operator_id":"operator.begruenden","pruefungszuordnung":{"berufe":[],"teil":"AP1"},"punkte":3,"punkterahmen":{"max":3,"min":3},"quellen":["ap1-2024-herbst-gesamt-a02-b"]},{"artefakt_id":"artefakt.freitextantwort","aufgabe":[{"text":"Ein Logistikunternehmen lässt eine Software zur Auswertung seiner Sendungsdaten entwickeln. Das Programm muss sehr große Datenmengen statistisch auswerten, soll über viele Jahre gepflegt und erweitert werden und muss an das bereits vorhandene Datenbanksystem angebunden werden. Für die Auswahl der Programmiersprache sind die drei Kriterien Verfügbarkeit von Statistik- und Analysebibliotheken, langfristige Pflege und Unterstützung der Sprache sowie vorhandene Anbindungsmöglichkeiten an bestehende Datenbanken vorgegeben. Begründen Sie zu jedem dieser drei vorgegebenen Kriterien seine Bedeutung, indem Sie es auf jeweils genau eine der ausdrücklich genannten Projektanforderungen beziehen.","typ":"absatz"}],"beispiel_id":"bsp-programmiersprachen-und-programmierparadigmen-begruenden-freitextantwort-03","freigabeart":"maschinell","loesung":[{"text":"Je Begründung 1 Punkt, insgesamt 3 Punkte. Fachlich gleichwertige Formulierungen sind anzuerkennen. (1) Verfügbarkeit von Statistik- und Analysebibliotheken ist bedeutsam, weil die geforderte statistische Auswertung großer Datenmengen mit erprobten Bausteinen effizient gelingt (1 Punkt). (2) Langfristige Pflege und Unterstützung der Sprache ist bedeutsam, weil die Software über viele Jahre gewartet und erweitert werden soll und dafür eine weiterhin gepflegte Sprache nötig ist (1 Punkt). (3) Anbindungsmöglichkeiten an bestehende Datenbanken sind bedeutsam, weil die Anforderung die Integration mit dem vorhandenen Datenbanksystem verlangt (1 Punkt).","typ":"absatz"}],"operator_id":"operator.begruenden","pruefungszuordnung":{"berufe":[],"teil":"AP1"},"punkte":3,"punkterahmen":{"max":3,"min":3},"quellen":["ap1-2024-herbst-gesamt-a02-b"]}],"konzept_id":"fachkonzept.programmiersprachen-und-programmierparadigmen","schema_version":3}