Webbprogrammering

WEBBPROGRAMMERING (Exempel tentor & svar (kontrollera svaren själva då de kan vara felaktiga!))

För att lägga till en fråga klickar ni på edit ovanför denna "sida".

För att infoga fråga med svar ska mallen se ut på följande vis:

[Exempel tenta [datum]] [Fråga #] [Svar] Svarsmallen skall infogas med denna stil:

Frågor och svar börjar nedanför denna linje.

1. Svara med något eller några av de angivna alternativen på följande frågor
'''(a) Vilket eller vilka av följande påståenden gäller för JavaScript? '''

Alternativ:

i. JavaScript kan köras som svar på händelser i webbläsaren.

ii. Programspråket JavaScript är en delmängd av programspråket Java.

iii. JavaScript körs enbart när ett HTML dokument skapas.

iv. JavaScript i ett HTML dokument kan förändra dokumentet medan det visas i

en webbläsare.

'b) Vilket eller vilka av följande påståenden gäller för CGI?

Alternativ:

i. Ett CGI program anropas av webbservern för att generera svaret till en HTTP

fråga.

ii. Ett CGI program körs i webbläsaren.

iii. Ett CGI program kan skrivas i programspråket C.

'''iv. '''Ett CGI program kan endast skapa dokument av typen text/html.

(c) Vilken eller vilka av följande påståenden gäller för ett giltigt (eng. valid) XHTML 1.1 dokument?

Alternativ:

i. Textens formatering måste anges med Cascading Style Sheets (CSS).

'''ii. '''Alla element har en start- och en sluttag.

'''iii. '''XML namnrymden för dokumentet måste anges som ”http://www.w3.org/1999/xhtml”.

iv. Dokumentet måste ha ett -element inuti rotelementet

(d) Vilket eller vilka av följande påståenden stämmer för XML 1.0?

Alternativ:

i. Ett XML dokument måste ha ett eller flera rot-element.

ii. Ett giltigt (eng. valid) XML dokument följer garanterat ett givet XML schema.

iii. Ett XML schema uttryckt i formatet XML Schema Definition (XSD) kan göras

mer uttrycksfullt än ett XML schema uttryckt i formatet XML Document Type Definition (DTD).

'''iv. '''Information som kan innehålla godtyckliga tecken beskrivs som Parsed

Character Data (PCDATA).

(e) Vilket eller vilka av följande påståenden stämmer för PHP?

Alternativ:

i. All PHP kod måste vara innesluten i  taggar.

ii. PHP koden körs i webbläsaren.

iii. PHP är ett språk utan statisk typkontroll.

iv. Funktioner i PHP kan anropas med ett godtyckligt antal argument.

2. Svara med något av de angivna alternativen på följande frågor
(a) Texten i ett PHP-dokument tolkas enligt sätten ______ ?

Alternativ:

i. Print mode och Compiler mode

ii. Copy mode och XHTML mode

iii. Copy mode och Interpret mode

iv. Output mode och Tag mode

(b) Vid användande av session tracking i PHP blir resultatet av funktionen 

session_start att _____ ?

Alternativ:

i. En loginsida genereras och skickas till användaren.

ii. Tillståndet för en pågående session blir tillgängligt för skriptet alternativt om

ingen pågående session finns så skapas en ny session.

iii. En ny session skapas och ersätter eventuell föregående.

'''iv. '''En ny global variabel med namn $SESSION skapas.

'''(c) Ett PHP program får flyttalsvärdet 0.0 i en kontext där ett booleskt värde förväntas. '''

Vad händer?

Alternativ:

i. Ett typfelsundantag (eng. exception) genereras.

'''ii. '''Värdet konverteras till det booleska värdet TRUE.

'''iii. '''Värdet konverteras till det booleska värdet FALSE.

iv. PHP har ingen boolesk typ utan värdet konverteras till heltalet 0 som tolkas

som falskt.

(d) Fält (eng. array) i PHP kan indexeras med ______ ?

Alternativ:

i. Endast heltal.

'''ii. '''Endast flyttal.

iii. Strängar (bland annat).

iv. Valfri typ men samma för hela fältet.

(e) Vad blir utskriften från nedanstående program?



Alternativ:

i. 1.5 + 2 = 3

'''ii. '''1.5 + 2 = 3.5

iii. $x + $y = 3.5

iv. Inget, programmet kompilerar eller kör inte korrekt

3. Svara med något av de angivna alternativen på följande frågor
(a) För att ange att en sida inte skall vara del av en session så används attribut enligt

______.

Alternativ:

i. <%@ page isSession = false %>

ii. <%@ session page = false %>

'''iii. '''<%@ page session = false %>

iv. <%@ session exclude = this %>

(b) Vilket av följande exempel visar en korrekt användning av en JSP predefined 

variable (också kallat JSP implicit object)?

Alternativ:

i. <% HttpServletRequest request = session.getRequest;

string text = request.getParameter(”aText”); %>

'''ii. '''A text: <%= request.getParameter(“aText”); %>

iii. <% HttpServletRequest request = page.getRequest; %>

A text: <%= request.getParameter(”aText”); %>

iv. <% HttpServletRequest request = application.getRequest;

string text = request.getParameter(”aText”); %>

(c) För att kunna köra en Java Servlet krävs specifikt en _______ ?

Alternativ:

i. Java Virtual Machine (JVM)

ii. Servlet Container

iii. J2SE Java Runtime Environment (JRE)

iv. Java SE Development Kit (JDK)

(d) För att specificera i JSP att en instans av en JavaBean är bunden till en sida så 

används scope-attributet _______ ?

Alternativ:

i. application

'''ii. '''session

'''iii. '''page

'''iv. '''request

(e) Databaser blir åtkomliga i koden för en Servlet och JSP via ______ ?

Alternativ:

i. ADO.NET

ii. JDBC

iii. SQL

iv. XML

4. Svara med något av de angivna alternativen på följande frågor.
(a) Tillstånd för HTTP-uppkopplingar kan sparas med hjälp av ______ på klienten?

Alternativ:

i. Cookies

ii. Sockets

iii. Persistent HTTP

iv. HTML

(b) En komponent inom HTMLControl måste alltid ha _______ ?

Alternativ:

i. Attributet runat satt till server

'''ii. '''Attributet id satt till ett värde

'''iii. '''Attributet name satt till ett värde

iv. Attributen id och server satta till något värde

(c) Hur väljer man .NET data provider?

Alternativ:

i. Genom prefixet på de klasser i Framework Class Library man använder för datahantering.

ii. Anges i ConnectionString för kommandot.

iii. Via ett argument till SqlConnection och dess Open-metod.

iv. En inställning i Visual Studio under tools.

(d) Vad innebär "code-behind" i samband med ASP.NET?

Alternativ:

i. Koden läggs bakom allt annat och körs med lägre prioritet.

ii. Koden släpar efter med ett valfritt intervall.

iii. Koden kan inte använda arv.

iv. Koden ligger i en separat fil.

(e) Common Language Run-Time är _____ ?

Alternativ:

i. Ett klassbibliotek.

ii. En mapp med kodexempel.

iii. Ett program som laddar in och kör .NET-program.

iv. Ett ramverk för att skapa egna klasser.

5. Svara med något av de angivna alternativen på följande frågor om språket C#.
(a) Metoderna för en bas- eller superklass kan nås i subklassen via nyckelordet ____ ?

Alternativ:

i. this

ii. override

iii. base

'''iv. '''super

(b) En egenskap (eng. Property) i en klass fungerar internt i klassen som ____ ?

Alternativ:

i. En eller två metoder

ii. En instans

iii. En variabel

iv. En händelse (eng. event)

(c) För att binda en metod till en viss händelse (eng. Event) och på så sätt skapa en händelsehanterare, görs detta genom att koppla metoden till en specifik _____ ?

Alternativ:

i. Delegate

'''ii. '''enumerator

iii. iterator

'''iv. '''event

(d) Ett interface är _____ ?

Alternativ:

i. En implicit implementation av alla metoder som ingår i en klass definierad explicit

ii. En klass där alla metoder är definierade som abstract

iii. En mall som talar om vilka metoder och egenskaper som en klass måste implementera

iv. En klass där alla metoder är implementerade som referenstyper

(e) En variabel som representerar en instans av en datastruktur definierad med nyckelordet class är alltid klassificerad som en ____?

Alternativ:

i. Instanstyp

ii. Objekttyp

iii. Värdetyp

'''iv. '''Referenstyp

6. Skapa ett PHP skript.
Skapa ett PHP skript som ger en enkel sida med följande funktion: sidan har två inmatningsfält, ett för namn och ett för antal, samt en Ok-knapp enligt bild nedan.



När inmatning skett och Ok-knappen trycks skrivs angivet antal HTML-stycken med texten ”Hej !” ut under Ok-knappen som i bilden nedan.



'''Vid felaktig inmatning (namn saknas eller antal är inte ett heltal) visas röda feltexter enligt bilden nedan. Eventuell korrekt inmatad information skall bevaras vid fel.'''

1. Svara med något eller några av de angivna alternativen på följande frågor
'''(a) Vilket eller vilka av följande påståenden gäller för JavaScript? '''

Alternativ:

i. JavaScript i ett HTML dokument kan förändra dokumentet medan det visas i en webbläsare.

ii. JavaScript kan ersätta alla tillämpningar av PHP.

iii. Programspråket JavaScript är en delmängd av programspråket Java.

'''iv. '''JavaScript körs enbart när ett HTML dokument skapas.

(b) Vilket eller vilka av följande påståenden gäller för XHTML 1.1?

Alternativ:

i. Element i ett XHTML kan överlappa (t.ex. foobar). 

''ii. Ett XHTML element måste alltid ha en start- och en slut-tagg. ''

'iii. '''Ett XHTML dokument får inte innehålla tecknen. ''

''iv. Ett XHTML dokumentet måste börja med en -tagg och ha exakt ett html-element som rot. ''

(c) Information (text) i ett XML element som innehåller godtyckliga tecken benämns som ___ ?

Alternativ:

i. Character Data (CDATA).

ii. Namnrymder (Namespaces)

'''iii. '''Parsed Character Data (PCDATA).

'''iv. '''ASCII-kodad text.

(d) Vilket eller vilka av följande påståenden stämmer för XML 1.0?

Alternativ:

i. Ett välformulerat (eng. well-formed) XML dokument följer garanterat ett givet XML schema.

ii. Ett XML dokument måste ha exakt ett rot-element.

iii. Ett XML schema uttryckt i formatet XML Schema Definition (XSD) kan göras mer uttrycksfullt än ett XML schema uttryckt i formatet XML Document Type Definition (DTD).

iv. Ett XML schema uttryckt i formatet XML Document Type Definition (DTD) kan göras mer uttrycksfullt än ett XML schema uttryckt i formatet XML Schema Definition (XSD).

(e) Vilket eller vilka av följande påståenden stämmer för ett PHP dokument?

Alternativ:

i. All PHP kod måste vara innesluten i  taggar för att webbservern skall veta att dokumentet är ett PHP dokument.

ii. PHP kod behöver inte alls var innesluten i en  tag.

iii. All PHP kod måste vara innesluten i  taggar för att webbläsaren skall veta att koden är PHP kod.

iv. All PHP kod måste vara innesluten i  taggar därför att PHPskriptinterpretatorn kopierar allt utanför  taggarna direkt till resultatet (output).

2. Svara med något (om ej flerval anges) av de angivna alternativen på följande frågor.
'''(a) Vilket eller vilka av påståendena nedan stämmer för programspråket PHP? (flerval)'''

Alternativ:

i. PHP är ett språk med endast en typ av värden.

ii. PHP används inte för stora applikationer.

iii. Applikationen WordPress är skriven i PHP.

iv. PHP är ett språk utan statisk typkontroll.

'''(b) Fält (eng. array) i PHP kan ______ ? (flerval)'''

Alternativ:

i. Indexeras med heltal.

'''ii. '''Indexeras med strängar.

iii. Indexeras med flyttal.

iv. Itereras i indexens lexikografiska ordning.

'''(c) En variabel i ett PHP-skript innehåller ett heltalsvärde. Om variabeln tilldelas ett nytt värde av en annan typ blir resultatet att ______ ?'''

Alternativ:

i. Det nya värdet sparas i variabeln och variabelns typ sätts till det nya värdets typ.

ii. Det nya värdet konverteras till variabelns typ och sparas i variabeln.

iii. Ett typfelsundantag (eng. exception) genereras.

iv. Det nya värdet sparas i variabeln och variabelns typ sätts till ”unknown”.

'(d) En global variabel i ett PHP-skript skall användas inne i en funktion. Vad behöver göras?

Alternativ:

i. Variabeln måste definieras med nyckelordet global på toppnivån av skriptet.

ii. Inget, variabeln är automatisk synlig i funktionen.

iii. Variabeln måste deklareras med nyckelordet global i funktionen.

iv. Variabeln måste skickas som ett argument till skriptet.

'''(e) Ett PHP program får flyttalsvärdet 0.0 i en kontext där ett booleskt värde förväntas. Vad händer?'''

Alternativ:

i. Värdet konverteras till det booleska värdet TRUE.

ii. Värdet konverteras till det booleska värdet FALSE.

'''iii. '''Ett typfelsundantag (eng. exception) genereras.

'''iv. '''PHP har ingen boolesk typ utan värdet konverteras till heltalet 0 som tolkas som falskt.

3. Svara med något av de angivna alternativen på följande frågor.
'''(a) För att kunna köra en Java Servlet krävs specifikt en _____ ? '''

Alternativ:

i. Java Virtual Machine (JVM).

ii. Servlet Container.

iii. J2SE Java Runtime Environment (JRE)

'''iv. '''Java SE Development Kit (JDK)

(b) För att specificera i JSP att en instans av en JavaBean skall skapas vid varje sidas förfrågan så används scope-attributet _______ ?

Alternativ:

i. application.

ii. session.

iii. page.

iv. request.

(c) Databaser kan kommas åt i koden för en Servlet och JSP via ______ ?

Alternativ:

i. ADO.NET

ii. JDBC

iii. SQL

iv. XML.

(d) Innan en webbsida med Java Server Pages (JSP) kan visas/startas så ______ ?

Alternativ:

i. Startas en JSP-interpretator på servern.

ii. Översätts JSP-koden till en Java Servlet som kompileras och körs.

iii. Kompileras motsvarande förkompilerade class-fil med JIT-kompilatorn.

iv. Översätts JSP-koden till HTML av en servlet container.

'''(e) En javabeans kan ha olika synlighet och tillgänglighet (scope) i en JSP. _________ gör bönan tillgänglig globalt.'''

Alternativ:

i. 

ii. 

iii. 

'''iv. '''

4. Svara med något av de angivna alternativen på följande frågor.
(a) Vad behöver skrivas ut för varje webbkontroll (t.ex. label, textbox eller gridview) i en .aspx-fil för att den ska fungera?

Alternativ:

i. Ett Runat-attribut.

ii. Ett Value-attribut.

iii. Ett ViewStateMode-attribut.

iv. Ett HtmlEquvalent-attribut.

(b) Vad gör viewstate?

Alternativ:

i. Skapar en instans av Drawing-namnrymden för visning av vektorbaserad grafik.

ii. Lagrar samt visar besöksstatistik för en sida alternativt för en hel webbplats.

iii. Håller reda på värden på kontroller när en sida laddas om.

iv. Inget av ovanstående.

(c) Var är det lämpligt att skriva in kod för att skapa text till en label i code behind?

Alternativ:

i. I Page_SaveStateComplete.

ii. I Page_Load.

iii. I Page_PreCompile.

iv. I Page_RenderControls.

'''(d) Du har skapat en dropdownlist som du vill populera (alltså fylla med värden) från code behind när en .aspx-sida visas. Du vill förhindra att din dropdownlist återpopuleras när sidan laddas om (t.ex. när besökaren trycker på en knapp). Vad skriver du före din populeringskod?'''

Alternativ:

i. if (!Page.AutoPostBackControl.Init) {.

ii. if (!Page.Cache("namnet på din dropdownlist").IsValid) {.

iii. if (!Page.IsPostBack) {.

iv. Du skriver ingenting – en dropdownlist kan inte återpopuleras.

'''(e) Du jobbar som systemarkitekt på Västtrafik och visar grunddata för bokning av tågresor i en gridview. Vilken kontroll använder du rimligen för att visa utförlig information (t.ex. ankomsttid, tågnummer etc.) för det tåg som väljs i din gridview??'''

Alternativ:

i. En detailsview.

ii. En listbox.

iii. En multiview.

'''iv. '''En queryextender.

5. Svara med något av de angivna alternativen på följande frågor om språket C#.
(a) För att få direkt tillgång till färdiga klasser i klassbiblioteket används ordet ____ ?

Alternativ:

i. imports.

ii. using.

iii. parent.

iv. super.

'''(b) Vilket av följande är inte en normal datatyp i C#? '''

Alternativ:

i. uint.

ii. sint.

iii. float.

iv. double.

(c) Vilket av följande bör undvikas i C#?

Alternativ:

i. for.

ii. break.

iii. goto.

iv. foreach.

(d) Vad är FALSKT om konstruktorer i C#?

Alternativ:

i. Anrop till en annan konstruktor får endast ske i initieringslistan.

ii. Det finns alltid en default-konstruktor (tack vare System.Object).

iii. base ger åtkomst till basklassen (motsvaras av super i Java).

iv. En konstruktor är en klassmetod som exekveras när en class eller en struct skapas.

(e) För att binda en metod till en viss händelse (eng. Event) och på så sätt skapa en händelsehanterare, görs detta genom att koppla metoden till en specifik _____?

Alternativ:

i. enumerator.

ii. event.

iii. delegate.

iv. iterator.

6. Skapa ett PHP skript.
Skapa ett PHP skript som ger en enkel sida med följande funktion: sidan har två inmatningsfält, ett för namn och ett för antal, samt en Ok-knapp enligt bild nedan.



När inmatning skett och Ok-knappen trycks skrivs angivet antal HTML-stycken med texten ”Hej !” ut under Ok-knappen som i bilden nedan.



'''Vid felaktig inmatning (namn saknas eller antal är inte ett heltal) visas röda feltexter enligt bilden nedan. Eventuell korrekt inmatad information skall bevaras vid fel.'''

1. Svara med något eller några av de angivna alternativen på följande frågor.
'''(a) Vilket eller vilka av följande påståenden gäller för JavaScript? '''

Alternativ:

i. JavaScript kan köras som svar på händelser i webbläsaren.

ii. Programspråket JavaScript är ett traditionellt objektorienterat språk.

iii. JavaScript i ett HTML dokument kan förändra dokumentet medan det visas i en webbläsare.

'''iv. '''The Document Object Model (DOM) ger JavaScript tillgång till dokumentets delar.

(b) Vilket eller vilka av följande påståenden gäller för CGI?

Alternativ:

i. Ett CGI program körs i webbläsaren.

ii. Ett CGI program måste skrivas i programspråket C.

iii. Ett CGI program anropas av webbservern för att generera svaret till en HTTPfråga.

'''iv. '''HTML elementet kan användas för att skicka information till ett CGI program.

(c) Vilken eller vilka av följande påståenden gäller för ett giltigt (eng. valid) XHTML 1.1 dokument?

Alternativ:

i. Dokumentet måste ha ett -element inuti rotelementet.

ii. Alla taggar (enkla eller dubbla) i dokumentet är avslutade.

iii. XML namnrymden för dokumentet måste anges som ”http://www.w3.org/1999/xhtml”.

iv. Textens formatering måste anges med Cascading Style Sheets (CSS).

(d) Vilket eller vilka av följande påståenden stämmer för XML 1.0?

Alternativ:

i. Ett välformulerat (eng. well-formed) XML dokument följer garanterat ett givet XML schema.

ii. Ett XML dokument måste ha exakt ett rot-element.

iii. Ett XML schema uttryckt i formatet XML Document Type Definition (DTD) kan göras mer uttrycksfullt än ett XML schema uttryckt i formatet XML Schema Definition (XSD).

iv. Vilka element som finns definieras i XML 1.0 standarden.

(e) Vilket eller vilka av följande påståenden stämmer för ett PHP dokument?

Alternativ:

i. PHP kod behöver inte vara innesluten i en  tag om filen är en ren kodfil som inkluderas från insidan av en  tag.

ii. All PHP kod måste vara innesluten i  taggar för att webbläsaren skall veta att koden är PHP kod.

iii. All PHP kod måste vara innesluten i <?php ?> taggar för att PHP interpretatorn skall exekvera den.

'''iv. '''När PHP interpretatorn börjar tolka en fil är den i copy mode.

2. Svara med något av de angivna alternativen på följande frågor.
(a) Programspråket PHP är ett _____ ?

Alternativ:

i. Språk med endast en typ av variabler och värden.

'''ii. '''Starkt typat språk.

'''iii. '''Språk utan några typer alls.

iv. Språk utan statisk typkontroll som använder ”coercing” mellan typer.

(b) Vid användande av session tracking i PHP blir resultatet av funktionen session_start att _____ ?

Alternativ:

i. En ny global variabel med namn $SESSION skapas.

ii. En ny session skapas och ersätter eventuell föregående.

'''iii. '''En loginsida genereras och skickas till användaren.

iv. Tillståndet för en pågående session blir tillgängligt för skriptet alternativt om ingen pågående session finns så skapas en ny session.

'''(c) En variabel i ett PHP-skript innehåller ett heltalsvärde. Om variabeln tilldelas ett nytt värde av en annan typ blir resultatet att ______ ?'''

Alternativ:

i. Ett typfelsundantag (eng. exception) genereras.

ii. Det nya värdet sparas i variabeln och variabelns typ sätts till det nya värdets typ.

'''iii. '''Det nya värdet sparas i variabeln och variabelns typ sätts till ”unknown”.

iv. Det nya värdet konverteras till variabelns typ och sparas i variabeln.

(d) Antalet argument som skickas till en funktion i PHP ______ ?

Alternativ:

i. Måste vara färre än antalet parametrar.

ii. Måste vara lika många som antalet parametrar.

iii. Kan vara fler än men inte färre än antalet parametrar.

iv. Kan vara färre eller fler än antalet parametrar.

'''(e) För att jämföra två värden av godtycklig typ för likhet efter ev. automatisk typkonvertering (eng. coercing) används i PHP _____ ?'''

Alternativ:

i. equals

ii. ===

iii. strcmp

iv. ==

3. Svara med något av de angivna alternativen på följande frågor.
(a) När man använder javabeans i JSP så används __________ för att ange ett specifikt värde på en parameter sample.

Alternativ:

i. <jsp:setProperty name = ”beanID” property = ”*” \>

ii. <jsp:setProperty name = ”beanID” property = ”sample” param = “test” \>

iii. <jsp:setProperty name = ”beanID” property = ”sample” value = “test” \>

iv. <jsp:setProperty name = ”beanID” property = ”sample” value = “<%= score %>” \>

(b) Koden för att ladda in JDBC-drivrutinerna och ansluta till en databas skall anropas 

från _____ i en servlet.

Alternativ:

i. doPut-metoden

ii. init-metoden

iii. destroy-metoden

iv. doGet-metoden

(c) En viktig fördel med Servlet jämfört med CGI är _______ ?

Alternativ:

i. En servlet behöver inte startas om för varje förfrågan.

ii. En servlet kan startas från kommandoraden i Windows.

iii. En servlet måste inte kompileras innan användning.

iv. En servlet kan startas från valfri TCP/IP port.

(d) ________ direktivet låter dig definiera egna taggar

Alternativ:

i. page

ii. import

iii. tablib

iv. include

(e) _______________ är en JSP expression.

Alternativ:

i. <%! private long computeFactorial(int n) { if (n == 0) return 1; else return n * computeFactorial(n - 1); } %>

ii. <% for (int i = 0; i <= 10; i++) { %>

iii. <%= Math.pow(2, 3) %>

iv. <%! Int a = Math.pow(2,3); %>

4. Svara med något av de angivna alternativen på följande frågor.
(a) Vad innebär "code-behind" i samband med ASP.NET?

Alternativ:

i. Koden läggs bakom allt annat och körs med lägre prioritet.

ii. Koden släpar efter med ett valfritt intervall.

iii. Koden kan inte använda arv.

'''iv. '''Koden ligger i en separat fil.

(b) Intermediate Language (IL) är _____ ?

Alternativ:

i. Ett programmeringsspråk för Visual Studio.

'''ii. '''Maskinkod.

iii. En kod som genereras av JIT (Just-In-Time) kompilatorn.

'''iv. '''Huvudbeståndsdelen av en körbar fil (ex. .EXE) för .NET.

(c) Vad är lämpligt för att knyta en gridview till en sql-databas?

Alternativ:

i. En sqldatasource.

ii. En sqlconnector.

iii. En sqlreader.

iv. En sqlparadigm.

(d) Vad gör viewstate?

Alternativ:

i. Skapar en instans av Drawing-namnrymden för visning av vektorbaserad grafik.

'''ii. '''Lagrar samt visar besöksstatistik för en sida alternativt för en hel webbplats.

'''iii. '''Håller reda på värden på kontroller när en sida laddas om.

iv. Inget av ovanstående.

(e) Vilka kontroller används för att skriva ut listor med data på skärmen?

Alternativ:

i. Gridview och Sequenceview.

'''ii. '''Datalist och Gridview.

'''iii. '''Asp:Table och Liveview.

iv. Formview och Detailsview.

5. Svara med något av de angivna alternativen på följande frågor om språket C#.
(a) En egenskap (eng. Property) i en klass fungerar internt i klassen som ____ ?

Alternativ:

i. En eller två metoder.

'''ii. '''En instans.

'''iii. '''En variabel.

'''iv. '''En händelse (eng. event).

'''(b) Metoderna för en bas- eller superklass kan nås i subklassen via nyckelordet ____ ? '''

Alternativ:

i. this.

ii. base.

'''iii. '''override.

'''iv. '''super.

(c) För att få tillgång till färdiga klasser i klassbiblioteket används ordet ____ ?

Alternativ:

i. imports.

ii. using.

iii. parent.

'''iv. '''super.

(d) Ett interface är _____ ?

Alternativ:

i. En klass där alla metoder är definierade som abstract..

ii. En mall som talar om vilka metoder och egenskaper som en klass måste implementera.

iii. En klass där alla metoder är implementerade som referenstyper.

iv. En implicit implementation av alla metoder som ingår i en klass definierad explicit.

(e) En variabel som representerar en instans av en datastruktur definierad med nyckelordet class är alltid klassificerad som en ____?

Alternativ:

i. Värdetyp.

'''ii. '''Referenstyp.

iii. Instanstyp.

'''iv. '''Objekttyp.

6. Skriv ett PHPskript
Skapa ett PHP skript som ger en enkel sida med följande funktion: sidan har ett inmatningsfält för ett filnamn och en View-knapp enligt bild nedan.



När inmatning av ett filnamn skett och View-knappen trycks visas bilden nedanför View-knappen som i bilden nedan. Bildfilen förutsätts ligga i underbiblioteket images och filnamnet skall fortfarande visas i inmatningsfältet.



Vid felaktig inmatning, d.v.s. om filnamn saknas eller om filen inte finns, skall röda feltexter visas enligt bilderna nedan och det skall inte skapas någon HTML kod för att visa bilden. Eventuell inmatad information skall bevaras i inmatningsfältet vid fel.



1. Svara med något av de angivna alternativen på följande frågor.
'''(a) För att komma åt enskilda element i Document Object Model (DOM) används numera i huvudsak metoden _____ ? '''

Alternativ:

i. getElementByName.

ii. getElementById.

iii. FindControl.

iv. GetControlByName.

(b) Ett välformat (eng. well-formed) XML dokument måste _____ ?

Alternativ:

i. Ha minst ett html-element och en överensstämmande DTD.

ii. Ha exakt ett rot-element och alla öppnade element stängda i rätt ordning.

iii. Högst ett rot-element och inte innehålla tecknen

'''iv. '''Börja med en <?xml ?>-tagg och ha exakt ett html-element som rot.

(c) Informationen (texten) i ett XML element beskrivs som ___ ?

Alternativ:

i. Namnrymder (Namespaces)

ii. Parsed Character Data (PCDATA).

iii. Character Data (CDATA).

iv. Godtycklig text i ASCII-kodning.

(d) När ett PHP-dokument börjar tolkas är PHP-tolken/processorn i ______ ?

Alternativ:

i. Interpret mode.

ii. Output mode.

'''iii. '''Compiler mode.

'''iv. '''Copy mode.

(e) Programspråket PHP är ett _____ ?

Alternativ:

i. Starkt typat språk.

'''ii. '''Språk med endast en typ av variabler och värden.

iii. Språk utan några typer alls.

iv. Språk utan statisk typkontroll som använder ”coercing” mellan typer.

2. Svara med något av de angivna alternativen på följande frågor.
(a) För att jämföra två värden av godtycklig typ för likhet med automatisk typkonvertering (eng. coercing) används i PHP _____ ?

Alternativ:

i. ==

'''ii. '''===

iii. ====

iv. equals

(b) Fält (eng. array) i PHP kan enklast itereras via nyckelordet ______ ?

Alternativ:

i. for.

ii. foreach.

iii. list.

'''iv. '''array.

'''(c) En variabel i ett PHP-skript innehåller ett heltalsvärde. Om variabeln tilldelas ett nytt värde av en annan typ blir resultatet att ______ ?'''

Alternativ:

i. Det nya värdet konverteras till variabelns typ och sparas i variabeln.

ii. Ett typfelsundantag (eng. exception) genereras.

iii. Det nya värdet sparas i variabeln och variabelns typ sätts till ”unknown”.

iv. Det nya värdet sparas i variabeln och variabelns typ sätts till det nya värdets typ.

(d) Variabler inne i en funktion som skall överleva till nästa anrop måste i PHP deklareras med nyckelordet _____ ?

Alternativ:

i. extern.

ii. global.

iii. var.

iv. static.

(e) SimpleXML är _____ i PHP?

Alternativ:

i. Ett lågnivå gränssnitt för XML processing

'''ii. '''Ett högnivå gränssnitt för XML processing

iii. Ett XML filformat för skript

'''iv. '''En modul för att visa XML dokument som HTML

3. Studera följande givna PHP-program. Svara med ett av de givna alternativen för varje fråga.
(a) Vad blir utskriften från nedanstående program?

<?php

$x = 3;

$y = 2;

print("$x+$y");

?>

Alternativ:

i. $x+$y

'''ii. '''3+2

iii. 5

iv. Inget, programmet kompilerar eller kör inte korrekt

(b) Vad blir utskriften från nedanstående program?

<?php

$x = 3;

$y = 2;

print('$x+$y');

?> Alternativ:

i. $x+$y

ii. 3+2

iii. 5

iv. Inget, programmet kompilerar eller kör inte korrekt

(c) Vad blir utskriften från nedanstående program?

<?php

$x = "1.5";

$y = 2;

printf('$x + $y = %d', $x+$y);

?> Alternativ:

i. 1.5 + 2 = 3

ii. 1.5 + 2 = 3.5

iii. $x + $y = 3

'''iv. '''Inget, programmet kompilerar eller kör inte korrekt

(d) Vad blir utskriften från nedanstående program?

<?php

$x = "3";

$y = 4;

print($x/$y);

?> Alternativ:

i. 0

ii. 1

'''iii. '''0.75

iv. Inget, programmet kompilerar eller kör inte korrekt

(e) Vad blir utskriften från nedanstående program?

<?php

$x = array('a' => 1, 'b' => 7, 4.0);

foreach($x as $y => $z) {

print("$y: $z, ");

}

?> Alternativ:

i. 0: 4, a: 1, b: 7,

ii. a: 1, b: 7, 0: 4,

iii. a: 1, b: 7, 1: 4,

'''iv. '''Inget, programmet kompilerar eller kör inte korrekt

4. Svara med något av de angivna alternativen på följande frågor.
(a) _______________ är en JSP deklaration.

Alternativ:

i. <%! private long computeFactorial(int n) { if (n == 0) return 1; else return n * computeFactorial(n - 1); } %>

ii. <% for (int i = 0; i <= 10; i++) { %>

'''iii. '''<%= Math.pow(2, 3) %>

'''iv. '''<%= i %>?

(b) ________ direktivet gör det möjligt för dig att ta med information för en sida, såsom att importera klasser och ange innehållstyp (content type).

Alternativ:

i. page

ii. import

iii. tablib

iv. include

(c) Varje doXxx metod i HttpServlet-klassen har en parameter av typen __________, som är ett objekt som innehåller http-anropets information, inklusive parameternamn och -värde, attribut och en inputström.

Alternativ:

i. HttpServletResponse

'''ii. '''HttpServletRequest

'''iii. '''HttpSession

iv. Cookie

(d) Koden för att ladda in JDBC-drivrutinerna och ansluta till en databas skall anropas från _____ i en servlet.

Alternativ:

i. doPut-metoden

'''ii. '''init-metoden

iii. destroy-metoden

iv. doGet-metoden

(e) _________ interfacet definierar de metoder som alla servlets måste implementera.

Alternativ:

i. HttpServlet

ii. ServletResponse

iii. javax.servlet.Servlet

iv. ServletRequest

5. Svara med något av de angivna alternativen på följande frågor.
(a) Tillstånd för HTTP-uppkopplingar kan sparas med hjälp av ______ på klienten?

Alternativ:

i. Cookies.

ii. Sockets.

'''iii. '''Persistent HTTP.

iv. HTML.

(b) Vad används egenskapen Cache till inom ASP.NET?

Alternativ:

i. Att spara värden för den användaren som just nu är inloggad.

'''ii. '''Att spara värden som kan användas för alla användare och sidor.

'''iii. '''Att spara värden för en viss användare som besökt webbsajten.

'''iv. '''Att hålla reda på vilka IP-användare som får besöka sidan och hur länge.

(c) Hur väljer man .NET data provider?

Alternativ:

i. Genom prefixet på de klasser i Framework Class Library man använder för datahantering.

'''ii. '''Anges i ConnectionString för kommandot.

iii. Via ett argument till SqlConnection och dess Open-metod.

iv. En inställning i Visual Studio under tools.

(d) Vad innebär "code-behind" i samband med ASP.NET?

Alternativ:

i. Koden läggs bakom allt annat och körs med lägre prioritet.

ii. Koden släpar efter med ett valfritt intervall.

iii. Koden kan inte använda arv.

'''iv. '''Koden ligger i en separat fil.

(e) Intermediate Language (IL) är _____ ?

Alternativ:

i. Ett programmeringsspråk för Visual Studio.

ii. Maskinkod.

'''iii. '''En kod som genereras av JIT (Just-In-Time) kompilatorn.

iv. Huvudbeståndsdelen av en körbar fil (ex. .EXE) för .NET.

6. Svara med något av de angivna alternativen på följande frågor om språket C#.
(a) Metoderna för en bas- eller superklass kan nås i subklassen via nyckelordet ____ ?

Alternativ:

i. this.

ii. base.

'''iii. '''override.

iv. super.

'''(b) En egenskap (eng. Property) i en klass fungerar internt i klassen som ____ ? '''

Alternativ:

i. En eller två metoder.

ii. En instans.

iii. En variabel.

iv. En händelse (eng. event).

(c) En variabel som representerar en instans av en datastruktur definierad med nyckelordet class är alltid klassificerad som en ____?

Alternativ:

i. Värdetyp.

ii. Referenstyp.

'''iii. '''Instanstyp.

'''iv. '''Objekttyp.

(d) För att binda en metod till en viss händelse (eng. Event) och på så sätt skapa en händelsehanterare, görs detta genom att koppla metoden till en specifik _____ ?

Alternativ:

i. enumerator.

ii. iterator.

iii. event.

'''iv. '''delegate.

(e) Ett interface är _____ ?

Alternativ:

i. En klass där alla metoder är definierade som abstract..

ii. En mall som talar om vilka metoder och egenskaper som en klass måste implementera.

'''iii. '''En klass där alla metoder är implementerade som referenstyper.

'''iv. '''En implicit implementation av alla metoder som ingår i en klass definierad explicit.