Klausur Web-Anwendungen, SS17

Ähnliche Dokumente
Web-Anwendungen, SS17 - Probeklausur

Web-Anwendungen, SS17 - Fragentypen

Klausur Web-Technologien, SS18

Klausur Informatik Programmierung, Seite 1 von 8 HS OWL, FB 7, Malte Wattenberg

Klausurteilnehmer. Wichtige Hinweise. Note: Klausur Informatik Programmierung, Seite 1 von 8 HS OWL, FB 7, Malte Wattenberg.

2. WWW-Protokolle und -Formate

CSS in HTML-Elementen. Syntax und Grammatik von CSS

Webdesign-Multimedia HTML und CSS

Modul 8: Browser-Processing- Pipeline

Klausur im Modul: Softwaretechnik (SWT) - WEB

Klausur: Internet-Technologien

1. Ordnen Sie bei der angegebenen URI den einzelnen Teilen die entsprechenden Begriffe zu. [ ] fragment [ ] path [ ] scheme [ ] query [ ] authority

Inhaltsverzeichnis. Florian Bauer CSS Seite 2 von 10

33 CSS in HTML einbinden

E-Commerce: IT-Werkzeuge. Web-Programmierung. Kapitel 3: Webdesign mit CSS Stand: Übung WS 2015/2016. Benedikt Schumm M.Sc.

Allgemeine Technologien II Sommersemester Mai 2011 CSS

CSS. Cascading Style Sheets

Typo3 & QFQ. Carsten Rose, I-MATH, University of Zurich, 2017

CSS - Cascading Stylesheets

Funktionen. - sind kleine, meist ausgelagerte Programme bzw. Programmfragmente. - können Werte zurückgeben, z.b. Berechnungen

4. Februar 2008 Klausur EWA

Klausur Einführung in die Informatik I für Elektrotechniker 16. Juli 2003

Klausur Grundlagen der Programmierung

Prüfung Informatik D-MATH/D-PHYS :00 17:00

Prüfung A Informatik D-MATH/D-PHYS :15 14:55

Probeklausur. Grundlagen der Medieninformatik. Wintersemester 2018/19

4. Briefing zur Übung IT-Systeme

Objekte haben eine eigene Notation, also Schreibweise, beim Aufruf:

Probeklausur Digitale Medien

"Die HTML-PHP-Schnittstelle -- Ein- und Ausgabe der Daten"

JavaScript clientseitige Programmiersprache zur Dynamisierung von Internetseiten

Viel Erfolg bei der Bearbeitung der Aufgaben!

Übung zur Vorlesung Digitale Medien. Hanna Schneider Ludwig-Maximilians-Universität München Wintersemester 2014/2015

HTML und CSS. Eine kurze Einführung

INFORMATIK FÜR BIOLOGEN

Klausur zur Vorlesung Algorithmen und Datenstrukturen

3. Briefing zur Übung IT-Systeme

XML light. XML bearbeiten. Jörn Clausen

Probeklausur: Programmierung WS04/05

Eine Schnelleinführung in CSS

Internet-Technologien

Gruppe A PRÜFUNG AUS SEMISTRUKTURIERTE DATEN Kennnr. Matrikelnr. Familienname Vorname

php Hier soll ein Überblick über das Erstellen von php Programmen gegeben werden. Inhaltsverzeichnis 1.Überblick Parameterübergabe...

Inhaltsverzeichnis. Einleitung 1. Teil I Workshop Schritt für Schritt zum professionellen HTML-CSS-Design. 1 So geht der Workshop vor 6

Klausur zu Grundlagen der Programmierung in C

Computergrundlagen HTML Hypertext Markup Language

Einführung in die Web-bezogenen Sprachen Wintersemester 2015/16 Klausur 1,

Klausur zu Grundlagen der Programmierung in C

Inhalt: 1)Header-Widget, 2)Footer-Widget, 3)Buttons, 4)Übung: Wohnungskauf, 5)Controlgroups, 6)Listview, 7)Panel-Widget

Klausur "ADP" SS 2016

Web-Techniken Einführung in JavaScript

Einführung in HTML. Tutorium. Präsentation der Sitzung vom 2./9. Juni 2004 Martin Stricker

Tabellenfreies Layout in HTML

a) Erklären Sie, was die folgenden Eigenschaften eines XML-Dokumentes aussagen? wohlgeformt gültig

Aufbau einer HTML Seite:

PHP, Ajax und JavaScript

Vorlesung Grundlagen des World Wide Web Klausur

HTML5 & SCC3. PC-Treff-BB VHS Aidlingen. Lothar R. Krukowski. Ein Überblick

Name:... Matr.-Nr... Bearbeitungszeit: 120 Minuten. Lesen Sie die Aufgaben jeweils bis zum Ende durch; oft gibt es hilfreiche Hinweise!

Managen Sie Ihr 3D-Gebäudemodell interaktiv. Von Anfang an.

Abschlussprüfung im Ausbildungsberuf Geomatiker, Geomatikerin. Schriftliche Prüfung

Web-basierte Anwendungssysteme XHTML- CSS

Play Framework, MySQL, JPA, HQL, HTML, jquery,

Diese neuen Gestaltungsmöglichkeiten können nun auf den Web-Anzeigenmarkt angewandt werden: Wissensbaustein»Anzeigenmarkt: CSS-Einsatz«(S.

CSS(3) verstehen und anwenden. Alexej Schneider APEX Connect 2017

REST Services in APEX Anwendungen nutzen

Wert. { color: blue; }

Einführung in die Programmierung I. 2.4 Felder. Thomas R. Gross. Department Informatik ETH Zürich

CSS Einführung & CSS Frameworks

Übung Informatik I - Programmierung - Blatt 6

Prüfung Informatik D-MATH/D-PHYS :00 11:00

Klausur zur Vorlesung: Einführung in die objektorientierte Programmierung mit Java im Wintersemester 2015/16

JavaScript II. Hochschule Karlsruhe Technik & Wirtschaft Internet-Technologien T3B250 SS2014 Prof. Dipl.-Ing. Martin Schober

Kryptologie. K l a u s u r WS 2006/2007, Prof. Dr. Harald Baier

Literatur. Webtechnologien WS 2018/19 - Teil 4/CSS I

Klausur zur Vorlesung Wahrscheinlichkeitsrechnung

Übung: Bootstrap - Navbar

Multimedia im Netz Wintersemester 2013/14. Übung 05 (Nebenfach)

Informationen über die WebServices der Parlamentsdienste. Projektmanagement CH-3003 Bern

Klausur am 28. Januar 2005

Klausur "ADP" SS 2015

Multimedia im Netz Wintersemester 2013/14. Übung 01 (Hauptfach)

Lineare Algebra für Informatiker Abschlussklausur

Dynamische Datentypen. Destruktor, Copy-Konstruktor, Zuweisungsoperator, Dynamischer Datentyp, Vektoren

ANWENDUNGSSOFTWARE CSS

Klausur Objektorientierte Datenbanken WS 2004/2005

Verschlüsseln eines Bildes. Visuelle Kryptographie. Verschlüsseln eines Bildes. Verschlüsseln eines Bildes

Scripting für Kommunikationswissenschaftler Gruppe C

JavaScript und das Document Object Model

11. Webautomatisierung HTTP Protokoll Tabellen Formulare und Parameter Templates, Graphik Ajax Zustandsinformationen

12. Jgst. 3. Kursarbeit Datum: Fach: Informationsverarbeitung (Leistungskurs) & )!!*+,!- -.!-

Stand und Ausblick


Dynamisches Anzeigen von Informationen in APEX mit jquery UI Dialogs und Tabs

Aufgabe Mögliche Punkte Erreichte Punkte a b c d Σ a b c d Σ x1 13

Klausur Algorithmen und Datenstrukturen II 01. Agust 2016

Probeklausur zur Vorlesung

Vorlesung Objektorientierte Programmierung Klausur

Prüfung Algorithmen und Datenstrukturen I

Klausur Algorithmen und Datenstrukturen

Transkript:

Klausur Web-Anwendungen, SS17 B CGT 14.0, B ECom I14.0, B Inf 14.0, B MInf 14.0, B WInf 14.0, ITAM.0, ITAS.0, ITAW.0, KAI.0 Gestellt von: Marcus Riemer (mri) Erlaubte Hilfsmittel: Zeichengeräte, Taschenrechner. Dauer: 60 Minuten. Diese Klausur besteht inklusive dieses Deckblattes und den Anhängen aus 6 Fragen auf 13 Seiten. Es können maximal 45 Punkte erreicht werden. Punktzahlen werden in Kästen notiert und einmal als Summe (Σ) je Aufgabe und dann einzeln für jede Teilaufgabe angegeben. Sie sollten zu keinem Zeitpunkt zwischen mehreren Seiten blättern müssen, um sich vorgegebene Quelltexte anzusehen. Daher werden alle Anhänge mit den Quelltexten zur Klausur zusätzlich separat ausgeteilt. Die Heftung der Anhänge darf nicht gelöst werden, Notizen auf dem separat ausgeteilten Anhang werden keinesfalls bewertet. Sie müssen die Anhänge daher auch nicht wieder abgeben. Verwenden Sie zur Lösung die freigelassenen Räume auf den Aufgabenblättern (diese können, müssen aber nicht komplett gefüllt werden). Sollte der Platz nicht ausreichen, verwenden Sie die Rückseite der Aufgabenblätter. Der Inhalt der Rückseiten wird nur gewertet, wenn er eindeutig als Lösung gekennzeichnet ist (Stichwort Lösung mit Angabe der Aufgabennummer) und vom vorgesehenen Lösungsfeld auf die zu wertende Rückseite verwiesen wird.

Web-Anwendungen Seite von 13 SS17 1) Semantik und Syntax von HTML 6 Das in Anhang 1a zu sehende HTML-Dokument enthält einige Fehler und ist teilweise semantisch unsinnig. Geben sie zwei strukturelle oder syntaktische Fehler an und benennen Sie einen semantisch unsinnigen Sachverhalt. Beschreiben Sie dabei knapp die Fehlerursache unter Angabe einer Zeilennummer. (a) Syntaktisch fehlerhaftes HTML in Zeile (b) Syntaktisch fehlerhaftes HTML in Zeile (c) Semantisch unsinniges HTML in Zeile

Web-Anwendungen Seite 3 von 13 SS17 ) CSS 7 (a) Spezifität von Selektoren 5 Berechnen Sie die Spezifitäten für die in Anhang a angegebenen CSS-Selektoren. Geben Sie die einzelnen Werte in einer Tabelle an und verwenden Sie eine Tabellenzeile für jeden der fünf zu bewertenden Selektoren. (b) Welches Kriterium wird genutzt, wenn die Spezifität zweier Selektoren exakt identisch 1 ist? (c) 1 Wie können für bestimmte Elemente im DOM-Baum abweichende CSS-Eigenschaften gesetzt werden, ohne dabei die Regeln für Spezifitäten zu berücksichtigen?

Web-Anwendungen Seite 4 von 13 SS17 3) CSS 5 Schreiben Sie jeweils einen CSS-Selektor, der exakt die Elemente der angegebenen Zeilen in den entsprechenden Listings selektiert. Hinweis: Es ist nach genau einem Selektor je Aufgabenstellung gefragt, auch wenn mehrere HTML-Dokumente referenziert werden. Diese Anforderung schließt die Verwendung des Komma-Operators explizit aus. (a) Anhang 3a: Zeile 4 1 Anhang 3b: Zeile 5 (b) Anhang 3a: Zeilen 9 und 13 1 Anhang 3b: Zeilen 10 und 14 (c) Für diesen Aufgabenteil sollen die Elemente nur selektiert werden, wenn die Maus sich über den entsprechenden Elementen befindet. Anhang 3a: Zeilen 6 & 7, 10 & 11, 14 & 15 Anhang 3b: Zeilen 7 & 8, 11 & 1, 16 & 16 (d) Für diesen Aufgabenteil sollen die Elemente selektiert werden, wenn in der URL des 1 aktuell angezeigten Dokumentes das Fragment my-heroes vorkommt. Anhang 3a: Zeile 4 Anhang 3b: Zeile 5

Web-Anwendungen Seite 5 von 13 SS17 4) JavaScript Betrachten Sie das JavaScript-Programm in Anhang 4a. (a) Was ist der gängige (und in der Vorlesung verwendete Name) für die Funktion iter1? 1 8 (b) Was ist der gängige (und in der Vorlesung verwendete Name) für die Funktion iter? 1 (c) Welche Ausgabe erzeugt das Programm? 3 (d) 3 Betrachten Sie lediglich die Definitionen von iter3 und iter4 sowie den Aufruf iter3(iter4()). Wird dieser Aufruf zur Laufzeit zu einem Absturz führen? Ja Nein Wenn Ja : In welcher Zeile findet der Absturz statt und was ist die Ursache? Wenn Nein : Was ist die Ausgabe des Programms?

Web-Anwendungen Seite 6 von 13 SS17 5) XML 7 Die XML-Dokumente für diese Aufgabe (zu finden in den Listings 5b, 5c, 5d und 5e) sind syntaktisch einwandfrei. (a) Welches dieser Dokumente ist im Sinne der Schema-Definition in Anhang 5a valide? 1 Dokument 1 Dokument Dokument 3 Dokument 4 (b) Benennen Sie je einen Fehler in den übrigen Dokumenten. Nehmen Sie dabei Bezug auf die Zeile, in welcher der Fehler auftritt, die Zeile(n) im XML, in denen die verletzte Restriktion genannt wird und begründen Sie stichwortartig die Art der Verletzung. i. Dokument in XML-Zeile, Schema-Zeile: ii. Dokument in XML-Zeile, Schema-Zeile: iii. Dokument in XML-Zeile, Schema-Zeile:

Web-Anwendungen Seite 7 von 13 SS17 6) Gemischte Themengebiete 1 Setzen Sie exakt die Anzahl der geforderten Kreuze! Sofern Sie mehr Kästchen ankreuzen als die Aufgabenstellung vorsieht, wird die entsprechende Teilaufgabe mit 0 Punkten bewertet. (a) HTTP i. Welche der folgenden HTTP-Verben nehmen typischerweise keine Veränderungen an 1 den referenzierten Ressourcen vor ( Kreuze)? GET HEAD POST PUT PATCH DELETE ii. Was unterscheidet GET von HEAD? 1 (b) Welche Aussagen über CSS-Selektoren und CSS-Deklarationen sind wahr? ( Kreuze) 4 Die Struktur eines HTML-Dokumentes hat Einfluss auf die Spezifität eines Selektors. Die anzuwendenden Deklarationen haben Einfluss auf die Spezifität eines Selektors. Kinder von Elementen mit display: flex; werden in ihrer Spezifität anders behandelt als Elemente mit float: left; oder float: right;. Pseudo-Elemente (::before) und Pseudo-Klassen(:hover) sind aus Sicht der Spezifität identisch relevant. Der universelle Selektor (*) sowie die Kombinatoren (+, >, ~ und Leerzeichen) haben keinen Einfluss auf die Spezifität. Das Pseudo-Element first-child ist aus Sicht der Spezifität relevanter als last-child. Das Pseudo-Element last-child ist aus Sicht der Spezifität relevanter als first-child. Klassenselektoren (.class) und Attributselektoren ([name= foo ]) sind aus Sicht der Spezifität identisch relevant.

Web-Anwendungen Seite 8 von 13 SS17 (c) Serverseitiges JavaScript mit node.js i. Das Ausführungsmodell von node.js bezeichnet man als... (1 Kreuz) 1 Single-Threaded, non blocking I/O Single-Threaded, blocking I/O Multi-Threaded, non blocking I/O Multi-Threaded, blocking I/O ii. Beschreiben Sie anhand der Auswirkung auf Endbenutzer: Welches Problem entsteht, wenn im Rahmen einer Anfrage an eine node.js-server-instanz innerhalb einer häufig durchlaufenen Schleife komplexe Berechnungen (wie zum Beispiel Primzahltests) ohne Nutzung von Callback-Funktionen vorgenommen werden? (d) Media Queries bilden die technische Grundlage für so genanntes Responsive Design. Wie funktioniert diese Technik? (1 Kreuz) Ein JavaScript-Programm fragt die Dimensionen des Viewports (media.dimensions) ab und lädt dann dazu passende weitere JavaScript-Programme. Ein JavaScript-Programm fragt die fest hinterlegte Geräteklassen (screen, print und speech, Zugriff über media.class) ab und lädt dann dazu passende weitere JavaScript-Programme. In CSS-Dokumenten werden mit SQL-Abfragen Selektoren und Deklarationen weiter eingeschränkt. In CSS-Dokumenten werden mit JavaScript-Anweisungen Selektoren und Deklarationen weiter eingeschränkt. In CSS-Dokumenten werden mit @media-regeln Selektoren und Deklarationen weiter eingeschränkt. (e) 1 Promises sind eine der Möglichkeiten in JavaScript auf das Ergebnis von andauernden Berechnungen zu warten. Welche der folgenden Aussagen ist wahr? (1 Kreuz) Die Promise-Schnittstelle ist Bestandteil von ECMA-Script 6 und steht deswegen in jeder konformen Laufzeitumgebung zur Verfügung. Die Promise-Schnittstelle ist Bestandteil von node.js und ist deswegen nicht in Browsern verfügbar. Die Promise-Schnittstelle ist Bestandteil der DOM-Schnittstelle und ist deswegen ausschließlich in Browsern verfügbar.

Web-Anwendungen Seite 9 von 13 SS17 Anhang: Aufgabe 1 1 <! DOCTYPE html > <html > 3 <head > 4 <title > Meine Seite </ title > 5 </head > 6 <body > 7 <header id =" der -" kopf "" > 8 Willkommen auf meiner Seite 9 </ header > 10 <nav > 11 <table > 1 <tr > 13 <td ><a href ="/ Du -und - Ich ">Du & amp ; Ich </a > </td > 14 <td ><a href ="/ Er -und - Sie "> Ich & amp ; Sie </a > </td > 15 <td ><a href ="/ Sie -gt -Er"> Sie > Er </a > </td > 16 </tr > 17 </ table > 18 </nav > 19 < article > 0 Ich verkaufe diese sch & ouml ; nen Lederjacken. 1 </ article > <footer > 3 Copyright 01: Ein dreik & ouml ; pfiger Affe 4 </ footer > 5 </body > 6 </html > (a) Fragwürdiges HTML

Web-Anwendungen Seite 10 von 13 SS17 Anhang: Aufgabe 1 ul > li + ul ~ li { color : red ; } # friedrich. heinrich { color : green ; } 3 input [ name = klausur ] { color : blue ; } 4 # ustus p. eter b.ob { color : white ; } 5 p. eter b.ob: hover { color : black ; } (a) Zu bewertendes CSS 1 <ul class =" heinrich "> <li id =" friedrich "> 3 <ul class =" ustus "> 4 <li > 5 <p class =" eter "> 6 <b class =" bob "> Erster </b> Detektiv 7 </p> 8 </li > 9 </ul > 10 </li > 11 </ul > (b) HTML-Fragment

Web-Anwendungen Seite 11 von 13 SS17 Anhang: Aufgabe 3 1 <! DOCTYPE html > <html > 3 <body > 4 <table id ="my - heroes "> 5 <tr class =" heading "> 6 <th >Name </th > 7 <th >Role </th > 8 </tr > 9 <tr class =" row "> 10 <td class =" name "> Beastmaster </td > 11 <td class =" role "> Jungler </td > 1 </tr > 13 <tr class =" row "> 14 <td class =" name "> Beastmaster </td > 15 <td class =" role "> Jungler </td > 16 </tr > 17 </ table > 18 </body > 19 </html > 1 <! DOCTYPE html > <html > 3 <body > 4 <p class =" name role "></p> 5 <div id ="my - heroes "> 6 <div class =" heading "> 7 <div >Name </ div > 8 <div >Role </ div > 9 </div > 10 <div class =" row "> 11 <div > Beastmaster </ div > 1 <div > Jungler </ div > 13 </div > 14 <div class =" row "> 15 <div > Beastmaster </ div > 16 <div > Jungler </ div > 17 </div > 18 </ table > 19 </body > 0 </html > (a) HTML (b) HTML

Web-Anwendungen Seite 1 von 13 SS17 Anhang: Aufgabe 4 Hinweis: Die Funktion Array.prototype.push hängt ein neues Element an das entsprechende Array an. Das Array auf dem die Funktion aufgerufen wird verändert sich dadurch. 1 const iter1 = function ( a, b) { const toreturn = []; 3 for ( let i of a) { 4 toreturn. push (b(i )); 5 } 6 return ( toreturn ); 7 } 8 9 const iter = function ( a, b) { 10 for ( let i = 0; i < a. length ; i ++) { 11 b(a[i ]); 1 } 13 } 14 15 const iter3 = function ( a) { 16 iter (a, console. log ); 17 } 18 19 const iter4 = function *() { 0 yield ('a '); 1 yield ('bc '); yield ('def '); 3 } 4 5 const a = []; 6 const b = ['a', 'bc ', 'def ']; 7 const c = iter1 (b, a => a. length ); 8 const d = iter1 (c, a => a + b. length ); 9 30 iter3 (c); 31 iter3 (d); (a) Programm

Web-Anwendungen Seite 13 von 13 SS17 Anhang: Aufgabe 5 1 <xs: schema xmlns :xs =" http :// www.w3.org /001/ XMLSchema "> <xs: element name =" address "> 3 <xs: complextype > 4 <xs:choice > 5 <xs: element name =" generic " type =" xs: string " /> 6 <xs: element name =" germany "> 7 <xs: complextype > 8 <xs: sequence > 9 <xs: element name =" name " type =" xs: string " /> 10 <xs: element name =" street " type =" xs: string " /> 11 <xs: element name =" zip " type =" xs: integer " /> 1 <xs: element name =" city " type =" xs: string " /> 13 </xs: sequence > 14 </xs: complextype > 15 </xs: element > 16 </xs:choice > 17 </xs: complextype > 18 </xs:element > 19 </xs:schema > (a) XML-Schema 1 <address >< generic > Weihnachtsmann </ generic > </ address > (b) Dokument 1 1 < generic > Geller, 45 Grove Street, 10014 New York </ generic > (c) Dokument 1 <address > <germany > 3 <name > Dirk Harms </ name > 4 <street >FS 143 </ street > 5 <zip > Wedel </ zip > 6 <city > -1337 </ city > 7 </ germany > 8 </ address > (d) Dokument 3 1 <address > <germany > 3 <name >< street > </ street > </ name > 4 < street > XML Boulevard </ street > 5 <zip >887776 </ zip > 6 <city > XML City </ city > 7 </ germany > 8 </ address > (e) Dokument 4